Runner can load your own MCP servers without any app-specific plugin work. You add them toDocumentation Index
Fetch the complete documentation index at: https://guides.runner.now/llms.txt
Use this file to discover all available pages before exploring further.
mcp.json, save the file, and Runner exposes the server’s tools inside the workspace.
Runner reads the same top-level
mcp.json shape used by Claude Code:
{"mcpServers": { ... }}Pick the right file
Use one of these files:~/.runner/mcp.jsonfor servers you want in every workspace.~/.runner/workspaces/<workspace-id>/mcp.jsonfor servers you want in one workspace.
workspace-id is the folder name inside ~/.runner/workspaces/.Use the right config shape
mcp.json entries use the MCP server shape directly. Do not use Runner’s older connector fields like transport or authType here.
- For remote servers, use
type,url, and optionalheaders. - For local servers, use
type,command, optionalargs, and optionalenv.
Add a remote MCP server
Usetype: "http" for streamable HTTP servers or type: "sse" for SSE servers. Use the full MCP endpoint URL, including /mcp or /sse when your server requires it.
Add a local stdio server
Usetype: "stdio" when Runner should start the MCP server on your machine.
stdio servers for that workspace. Remote HTTP and SSE servers still work.
Understand authentication
Hand-writtenmcp.json entries do not get a built-in OAuth flow from Runner.
- If a remote server needs auth, send it in
headers. - If a local server needs auth, pass it through
env. - If a local server depends on environment variables, set them explicitly in
env.
env block instead of assuming your shell will pass it through.
Reload the server list
After you savemcp.json, start a new conversation in that workspace. New conversations read the latest file.
If an existing conversation does not see the new tools, reopen the conversation or restart Runner.
Ask Runner to do it for you
You don’t have to editmcp.json by hand. Just tell Runner what you want to connect and it can write the config for you.
mcp.json in the right place, and the tools show up in your next conversation.
Troubleshooting
- If nothing shows up, validate that the file starts with a top-level
mcpServersobject. - If a remote server fails to connect, confirm that you used the full MCP endpoint URL.
- If a local server fails to start, run the same
commandandargsin your terminal first. - If a local server stays unavailable, make sure Local MCP Servers is enabled for that workspace.
- If you want one workspace to override a shared server, reuse the same slug in the workspace-level file.