What is MCP?
The Model Context Protocol (MCP) is an open standard for exposing tools to LLM agents over HTTP. Orca uses MCP as the universal tool interface — every session gets its own MCP endpoint, and agents discover and invoke tools through it.Session-Scoped MCP Endpoint
When a session is created, the runner spins up a session-scoped MCP server at:- Platform tools — the session’s scoped toolkit (tools allowed by the profile)
- External MCP servers — inline servers defined in the profile’s
mcpServerslist - Connected apps — provider-managed grants invoked through platform facade tools and the tenant-isolated MCP bridge
sessionMcpUrl in the run envelope to the sidecar, which uses it to connect its MCP client.
How Tools Flow
The LLM sees platform tools and inline external MCP tools through one tool interface. Connected-app catalogs stay deferred: the model sees thesearch_connected_app_tools and call_connected_app_tool facade tools, then loads only the provider tool schemas it needs.
Provider Support
The
general runtime has full MCP client support via @ai-sdk/mcp. Claude and Codex runtimes currently use native SDK tool surfaces; MCP bridging is tracked on the roadmap.External MCP Servers in Profiles
Add external MCP servers to a profile’smcpServers array:
Secret Resolution
Header values containing${VAR} are resolved from the runner’s environment — see Secrets for how these are provisioned:
MCP Catalog
The MCP Catalog is a conductor-local registry of reusable MCP server definitions. It lets you pre-configure servers once and reference them when building profiles in the dashboard.User-authored catalog entries are a convenience layer copied into profiles. Provider-managed entries also authorize connected-app calls: profiles store them as credential-free
catalog://<name> references, and the runtime resolves them through the bridge rather than as native sidecar MCP transports.Dashboard MCP Page
The dashboard groups MCP management into three tabs:
In v1, Connected Apps uses Composio as its provider. App category labels come from the provider payload when available, with dashboard fallbacks for common app slugs so the gallery remains filterable while provider metadata rolls out.
When a managed app is attached to a profile, its
mcpServers entry has only a name and matching reference, for example {"name":"composio-gmail","ref":"catalog://composio-gmail"}. The runtime does not send the managed URL or provider credentials to the worker. Agents discover matching tools on demand with search_connected_app_tools and execute an exact result with call_connected_app_tool; both are part of @introspection.
Managing the Catalog
Reserved Names
The namerunner is reserved and cannot be used in the MCP catalog. It refers to the session-scoped platform MCP endpoint.
Writing an MCP-Compatible Tool Server
Any HTTP server implementing the MCP streamable HTTP transport can be attached to Orca profiles. Minimal requirements:- Accept
POST /requests with MCP protocol messages (JSON-RPC 2.0) - Return Server-Sent Events for streaming responses
- Handle
tools/listandtools/callmethod calls