MCP servers
Add local and remote MCP tools.
You can add external tools to codeflow using the Model Context Protocol, or MCP. codeflow supports both:
- Local servers
- And remote servers
Once added, MCP tools are automatically available to the LLM alongside built-in tools.
Configure
You can define MCP servers in your codeflow config under mcp
.
Local
Add local MCP servers using "type": "local"
within the MCP object. Multiple MCP servers can be added. The key string for each server can be any arbitrary name.
{ "$schema": "https://codeflow.ai/config.json", "mcp": { "my-local-mcp-server": { "type": "local", "command": ["bun", "x", "my-mcp-command"], "enabled": true, "environment": { "MY_ENV_VAR": "my_env_var_value" } }, "my-different-local-mcp-server": { "type": "local", "command": ["bun", "x", "my-other-mcp-command"], "enabled": true } }}
You can also disable a server by setting enabled
to false
. This is useful if you want to temporarily disable a server without removing it from your config.
Remote
Add remote MCP servers under mcp
with "type": "remote"
.
{ "$schema": "https://codeflow.ai/config.json", "mcp": { "my-remote-mcp": { "type": "remote", "url": "https://my-mcp-server.com", "enabled": true, "headers": { "Authorization": "Bearer MY_API_KEY" } } }}
Local and remote servers can be used together within the same mcp
config object.
{ "$schema": "https://codeflow.ai/config.json", "mcp": { "my-local-mcp-server": { "type": "local", "command": ["bun", "x", "my-mcp-command"], "enabled": true, "environment": { "MY_ENV_VAR": "my_env_var_value" } }, "my-remote-mcp": { "type": "remote", "url": "https://my-mcp-server.com", "enabled": true, "headers": { "Authorization": "Bearer MY_API_KEY" } } }}
Per agent
If you have a large number of MCP servers you may want to only enable them per agent and disable them globally. To do this:
- Configure the MCP server.
- Disable it as a tool globally.
- In your agent config enable the MCP server as a tool.
{ "$schema": "https://codeflow.ai/config.json", "mcp": { "my-mcp": { "type": "local", "command": ["bun", "x", "my-mcp-command"], "enabled": true } }, "tools": { "my-mcp*": false }, "agent": { "my-agent": { "tools": { "my-mcp*": true } } }}