Skip to main content

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 under crewship 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

Both crew 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:
The CLI re-marshals into compact form before writing — the stored value is normalised JSON, not whatever whitespace you pasted.

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

The success line tells you how many servers landed: 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.:
An agent with neither source prints 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--resolved is a read flag.
  • read file <path>: ...--set-file couldn’t open the path.

See also