Skip to content

Parity: external MCP server registry surface (mcpServer/mcpServers/mcpServerTools + CRUD) #220

Description

@shadowbrush

hadron-server PR hadron-memory/hadron-server#634 adds the external-MCP-server registry (hadrontool-mcp conduit): org-scoped McpServer rows whose tools headless runs call as mcp__<slug>__<tool> in data.tools.

Per the CLI-completeness rule (a server surface is not done until the CLI covers it), the CLI needs:

  • hadron mcp-server ls [--org]mcpServers(orgId, limit, offset)
  • hadron mcp-server get <id>mcpServer(ref)
  • hadron mcp-server tools <id>mcpServerTools(ref) — live tools/list; shows the runToolName (mcp__<slug>__<tool>) an author pastes into data.tools
  • hadron mcp-server create --org <ref> --slug <slug> --name <name> --url <url> [--header 'Name: value']... [--allow <tool>]... [--disabled]createMcpServer (headers are write-only; never echoed)
  • hadron mcp-server update <id> [--name] [--url] [--header ...] [--clear-headers] [--allow ...] [--enabled/--disabled]updateMcpServer (slug immutable)
  • hadron mcp-server delete <id>deleteMcpServer (hard delete)

Notes:

  • headers is a JSON object server-side; the repeated --header 'Name: value' flag mirrors curl.
  • Readers only get hasHeaders — do not try to display stored header values.
  • Registration grants nothing by itself; runs still need the policy chain to allow tool.mcp__<slug>__<tool> (worth a line in the command help).

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions