MCP Support

Aura supports the Model Context Protocol (MCP) for connecting to external tool servers.

Configuration

MCP servers are defined in .aura/config/mcp/*.yaml:

server-name:
  type: http
  url: https://example.com/mcp
  headers:
    Authorization: Bearer ${API_TOKEN}

local-tool:
  type: stdio
  command: go
  args: [run, ./mcp-server/main.go]

disabled-server:
  type: http
  url: https://example.com/mcp
  disabled: true

Transport Types

Type Fields Description
http url, headers, timeout HTTP-based MCP server
stdio command, args, env, timeout Subprocess via stdin/stdout

Header values support ${VAR_NAME} env var expansion.

Deferred Tool Loading

Set deferred: true to exclude a server’s tools from the initial tool set. Tools load on demand via the LoadTools meta-tool, reducing context usage in MCP-heavy setups. The server still connects at startup — only tool registration is deferred.

Alternatively, defer individual MCP tools via glob patterns in features/tools.yaml instead of deferring the entire server: deferred: ["mcp__github__*"].

github:
  deferred: true
  command: npx
  args: ["-y", "@modelcontextprotocol/server-github"]
  env:
    GITHUB_TOKEN: ${GITHUB_TOKEN}

Server Filtering

Filter which servers connect using glob patterns — same system as tool filtering.

aura run --include-mcps "context7,git*"
aura run --exclude-mcps "portainer"
aura run --exclude-mcps "*"   # disable all MCP

Feature config defaults (features/mcp.yaml):

mcp:
  enabled: [] # empty = connect all
  disabled: ["portainer"]

CLI flags override feature config. Exclude takes precedence over include. Per-server disabled: true is an author-side toggle; filtering is a user-side override.

Filters are reapplied on agent switch (if MCP filter rules differ) and on config reload. Use /reload to fully reconnect all servers from scratch.

Conditional Inclusion

Set condition: on a server to exclude its tools based on runtime state. The server still connects — only tool visibility is affected. Conditions are re-evaluated every turn.

heavy-server:
  condition: "model_params_gt:7"
  type: http
  url: https://example.com/mcp

Conditions use the same expression syntax as /assert — see Slash Commands.

MCP Tools

MCP tools appear with the mcp__ prefix — e.g., mcp__github__search. Use /mcp to list connected servers and tools, /mcp reconnect to retry failed servers.

Agent and mode configs can filter MCP tools:

tools:
  disabled:
    - mcp__* # Disable all MCP tools

Back to top

Copyright © 2026 idelchi. Distributed under the MIT License.