Skip to Content

cmdop mcp

Exposes cmdop’s tools (terminal, files, agent, board, OS automation) as an MCP (Model Context Protocol) server. MCP hosts — Claude Desktop, Cursor, and others — connect to it and discover the cmdop tool catalogue.

This page is the CLI verb reference. For the full MCP integration story (what tools are available, security model, configuration cookbook), see /docs/mcp/.

Subcommands

cmdop mcp stdio # run an MCP server over stdio cmdop mcp tools # list MCP tools (introspection)

Stdio mode

cmdop mcp stdio reads MCP messages from stdin and writes to stdout. This is the standard MCP transport for desktop clients.

Wire it into Claude Desktop’s claude_desktop_config.json:

{ "mcpServers": { "cmdop": { "command": "cmdop", "args": ["mcp", "stdio"] } } }

Restart Claude Desktop and cmdop’s tools appear in the MCP tool list.

List tools

cmdop mcp tools cmdop mcp tools --json

Output:

NAME DESCRIPTION cmdop_terminal Open a terminal session on a machine cmdop_exec One-shot command execution cmdop_files_read Read a file from a machine cmdop_files_write Write a file to a machine cmdop_issue_create Create a Board issue cmdop_chat Delegate a sub-prompt to the cmdop agent ...

Always-on vs per-host

Two paths to expose MCP — pick based on use case:

cmdop agent start --with-mcpcmdop mcp stdio
ProcessDaemon-attached, always onPer-invocation
TransportgRPC + MCP serverstdio
LifecycleSurvives reboots (with service)Spawned by host
Best forMultiple MCP hosts on same machineSingle Claude Desktop / Cursor install

For a single-user desktop, cmdop mcp stdio wired into the host config is usually enough. For a development server with several MCP hosts, prefer cmdop agent start --with-mcp.

See ./agent for the always-on path.

Authentication

MCP inherits the daemon’s OAuth identity. The MCP host doesn’t need to authenticate separately — whatever workspace the daemon is logged into is the workspace the MCP tools operate against.

To run MCP under a specific mode or workspace, set them before launching the MCP host:

cmdop mode prod cmdop connect workspace use acme-prod # now restart Claude Desktop / Cursor

Permissions on MCP calls

MCP tool calls go through the standard permission gate — same rules as remote-agent calls. Lock down dangerous tools:

cmdop permissions deny 'execute_command(rm *)' cmdop permissions ask 'write_file(/etc/*)'

See ./permissions.

External MCP servers

If you want cmdop to consume other MCP servers (e.g., a database MCP, a file-search MCP), that’s configured in ~/.cmdop/config.yaml under mcp.external — covered in /docs/mcp/external-servers.

Troubleshooting

  • Claude Desktop doesn’t see cmdop tools — restart the host after editing claude_desktop_config.json; check the host’s MCP log for spawn errors.
  • “command not found: cmdop” — Claude Desktop might not see your $PATH; use the absolute path: "command": "/usr/local/bin/cmdop".
  • Tools appear but every call returns permission denied — check cmdop permissions list on this machine; relax the gate or add explicit allows.
Last updated on