Skip to Content
TroubleshootingMCP tools not visible

MCP Tools Are Not Visible In The Agent

Symptom

Your agent host (Claude Code, Claude Desktop, Codex, or another MCP client) shows no autonomy / mcp__autonomy__* tools, or lists the autonomy server as disconnected.

Why

The Autonomy plugin doesn’t launch an agent — it registers an MCP server definition that the host connects to. That definition is a thin stdio proxy, not the runtime itself:

cat plugins/autonomy/.mcp.json
{ "mcpServers": { "autonomy": { "command": "/Applications/autonomy (a7y).app/Contents/Resources/bin/a7y-cli", "args": ["daemon", "proxy"] } } }

a7y-cli daemon proxy bridges MCP stdio to the already-running background daemon over its control socket. If the daemon isn’t running, the proxy has nothing to attach to, and the host sees either zero tools or a server that fails to connect. This is the most common cause of this symptom — not a broken plugin install.

If you registered the runtime directly instead of through the plugin (claude mcp add … autonomy-a7y mcp), there’s no daemon in the picture at all — that command line launches the MCP server binary directly over stdio. In that setup, a missing-tools symptom means the binary path in your config is wrong or unreachable, not that a daemon needs starting.

Fix

Confirm the command path

Check that the command in .mcp.json points at a real, executable path — the app bundle must actually be built and present at that location.

Check whether the daemon is running

a7y-cli daemon status

Start the daemon if it isn’t running

a7y-cli daemon start --dev

Doctor’s own remediation for a failed daemon attachment prints the exact start command for your state file, e.g. a7y-cli daemon start --state-file <path>, if you ran a7y-cli doctor first — see The daemon closes a request for what daemon-attachment failures look like in detail.

Reload the agent host’s MCP configuration

Restart the host, or use its built-in reload. For Claude Code:

claude mcp list

If Autonomy isn’t registered at all yet, add it directly:

claude mcp add --scope user autonomy -- "/Applications/autonomy (a7y).app/Contents/MacOS/autonomy-a7y" mcp

Verify

claude mcp list

Expect autonomy: … ✔ Connected. Then confirm the tool catalog is actually populated:

a7y-cli tools list

You should see 150+ tools, including accessibility_state, speak_text, screen_read_tree, and consent_request. If the host connects but the list is empty or stale, restart the host once more — some hosts cache the tool catalog per session.

See also Run the doctor before assuming the plugin itself is broken, and The daemon closes a request if tools appear but calls fail intermittently.

Last updated on