crewship mcp
mcp is the top-level MCP root: audit log, public registry, and the raw mcp_config_json blob editors that sit on crews and agents. Use crewship integration for the higher-level CRUD (bindings, per-tool toggles, credential plumbing); mcp is what you reach for when you need the raw JSON or want to inspect calls after the fact. Defined in cmd/crewship/cmd_mcp.go.
Every subcommand requires
crewship login. Registry browse/search don’t
require a workspace (registry data is workspace-agnostic and the CLI strips
the workspace_id header before sending). Everything else does.Subcommands
mcp root
Crew / agent JSON editing
These live undercrewship crew and crewship agent, registered from this file:
Flags
mcp audit list
Output is the raw JSON shape — pipe through
jq for filtering (jq '.[] | select(.status=="error")').
mcp registry list
mcp registry search <query>
crew mcp <crew-slug>
With neither flag, the command runs in GET mode: it pretty-prints the current config or says
no MCP config set.
agent mcp <agent-slug>
JSON shape
Bothcrew mcp and agent mcp validate the JSON before sending. It must contain an mcpServers object — anything else returns JSON must contain a "mcpServers" object. Inside, the standard MCP shape:
Examples
Audit recent tool calls
Browse the registry
Search the registry
Trigger a manual sync (admin)
Admin-only, with a 1-hour cooldown. A
429 means someone synced recently.Show / set a crew’s config
Crew acme-engineering: MCP config set (3 servers).
Show / set an agent’s config
--resolved prints up to two labeled sections. The first, # Blob config (crews/agents.mcp_config_json):, merges by mcpServers.<name> — agent keys win over
crew keys with the same name, additive otherwise (when there are no integration
bindings, the merged JSON prints without the section header). The second,
# Integration bindings (workspace/crew servers + agent bindings):, folds in the
integration-table cascade, one bulleted line per server, e.g.:
Agent <slug>: no MCP servers (no blob config, no integration bindings).
Common errors
invalid MCP JSON: ...— the value didn’t parse as JSON.JSON must contain a "mcpServers" object— top-level key missing.--set and --set-file are mutually exclusive— pick one.--resolved cannot be combined with --set or --set-file—--resolvedis a read flag.read file <path>: ...—--set-filecouldn’t open the path.
See also
crewship integration— higher-level bindings, credentials, per-tool toggles.crewship crew— full crew CRUD;crew mcpis registered from here.crewship agent— full agent CRUD;agent mcpis registered from here.- Integrations API — covers MCP registry endpoints (
GET /api/v1/mcp-registry).