MCP Server Configuration

Each MCP server is defined as a named section under [mcp] in config.toml.

Config Format

toml
[mcp.<server-name>]
command = "<executable>"
args = ["arg1", "arg2", ...]
KeyTypeDefaultDescription
commandstringExecutable or script to launch the MCP server
argsarray[]Arguments passed to the command

Discovery Process

  1. For each [mcp.*] section, spawn the process with the configured command and args
  2. Initialize the JSON-RPC connection (protocol handshake)
  3. Call tools/list to enumerate available tools
  4. Wrap each tool's name, description, and input schema as a native Tool
  5. Log any errors per-server without failing globally

Examples

Filesystem Access

toml
[mcp.filesystem]
command = "npx"
args = ["-y", "@anthropic/mcp-filesystem", "/home/user/projects"]

Web Search

toml
[mcp.brave-search]
command = "npx"
args = ["-y", "@anthropic/mcp-brave-search"]

Custom Python Server

toml
[mcp.my-server]
command = "python3"
args = ["/path/to/my_mcp_server.py"]
Stderr Logging
MCP server stderr output is captured and logged by aidaemon for debugging. Check the daemon logs if a server isn't working.