> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ziro-agent.com/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP servers

> Connect external Model Context Protocol servers over stdio, SSE, streamable HTTP, or websocket, with OAuth and a live control panel.

This page will cover connecting external MCP servers. Servers are declared in an
agent's `mcp_servers.yaml` and loaded at startup; their tools are registered
under the server name as a namespace and enter the same progressive discovery
surface as native tools, so the model finds them with `search_tools` and
activates them with `load_tools`. A server that fails to connect is non-fatal:
the rest of the session continues.

It will cover the four transports (`stdio`, `sse`, `streamable_http`, and
`websocket`), OAuth acquisition and refresh including the device-code flow used
when running headless, and the live MCP manager that holds one persistent session
per server so repeat tool calls reuse an open connection instead of reconnecting.
Finally it will cover the control panel: `Ctrl+O` or `/mcp` in the TUI opens a
table of servers with state, transport, auth, and tool count, mapping connect,
disconnect, and reconnect to the manager, with a tool peek and an OAuth prompt
modal. In the REPL, `/mcp [server]` prints the same information as a table.

<Note>
  This page is in progress. Until it lands, the shipped `mcp_servers.yaml` files
  in each agent folder are the best worked examples.
</Note>

See [Tools](/concepts/tools) for how MCP tools join the deferred discovery tier,
[Plugins](/guides/plugins) for MCP servers surfaced by an installed plugin, and
[Configuration](/guides/configuration) for how `mcp_servers.yaml` resolves.
