Přeskočit na obsah

Používejte MCP server

Tenhle návod ukazuje, jak připojit externího klienta MCP — Claude Code, editor nebo MCP Inspector — k vlastnímu serveru nástrojů Control Center.

Control Center registruje 110 nástrojů a poskytuje je přes Model Context Protocol ve verzi protokolu 2024-11-05. Celé rodiny nástrojů, které bys čekal, chybí: nástroje pro schůzky a kalendář tu nejsou a projektové nástroje taky ne.

Plocha MCP sdílí hlavní listener cc_server. Samostatný port pro MCP není.

Endpoint Metoda Účel
/mcp POST Přenos Streamable HTTP — tím klient mluví
/mcp DELETE Ukončení relace
/sse GET Proud notifikací odesílaných serverem

Výchozí místní instalace je tedy na http://127.0.0.1:9030/mcp.

  1. Jdi do Nastavení → Server → Servery MCP
  2. Přečti kartu Server MCP — ukazuje Běží nebo Zastaveno a port, na kterém naslouchá

Na čerstvé instalaci je plocha zapnutá, takže klient na loopbacku funguje bez zajížďky do nastavení. Spustit při startu aplikace určuje, jestli se po restartu vrátí. Start a Zastavit platí jen pro aktuální běh a tuhle předvolbu nemění.

Server se ve výchozím stavu váže na loopback, takže endpoint je dosažitelný jen ze stroje, na kterém běží cc_server, pokud jsi ho nespustil s --bind any.

Namiř klienta na endpoint Streamable HTTP. Přesný tvar konfigurace je věc klienta, URL je v obou případech stejná.

{
"mcpServers": {
"control-center": {
"type": "http",
"url": "http://127.0.0.1:9030/mcp"
}
}
}

Claude Code tohle z projektového .mcp.json nevezme. Projektové servery MCP drží za výzvou ke schválení, na kterou neinteraktivní claude -p nikdy neodpoví. Konfiguraci předej přímo:

Terminál
claude --mcp-config /path/to/mcp.json --strict-mcp-config

--strict-mcp-config donutí Claude brát jen tenhle soubor, takže se stejný server z projektu ještě neobjeví a nezaregistruje podruhé.

Kontrolní bod: požádej klienta, ať vypíše nástroje. Měl bys vidět položky mcp__* pro tickety, prostory, paměť, graf kódu a kontrolu.

Zpřístupni MCP mimo hostitele

Sekce “Zpřístupni MCP mimo hostitele”
  1. V Nastavení → Server → Servery MCP na řádku Autentizační token stiskni Nastavit a vlož token
  2. Posílej ho jako Authorization: Bearer <token> u každého požadavku POST /mcp

Plocha bez tokenu odmítne každého volajícího mimo loopback kódem 403. Je to záměrně uzavřené: právě token službu mimo hostitele vůbec umožňuje.

Změna tokenu se na živé ploše projeví hned, restart není potřeba.

Omez každé volání na pracovní prostor

Sekce “Omez každé volání na pracovní prostor”

Každý nástroj, který sahá na data vázaná na pracovní prostor, vyžaduje workspace_id. Volání bez něj se odmítne a nevyhodnotí se proti nějakému „aktuálnímu“ pracovnímu prostoru:

{
"workspace_id": "acme",
"title": "Fix login bug",
"priority": "high"
}

Id je to z URL v prohlížeči nebo v aplikaci: /workspaces/<workspace_id>/…. Výjimku mají jen nástroje, které pracovní prostory opravdu přesahují, třeba list_workspaces a nástroje kanálu novinek. Kanál novinek patří uživateli, ne pracovnímu prostoru, a agent vlastního uživatele nemá, takže tyhle nástroje pracují s kanály vlastníka serveru.

Nástroje vázané na repozitář navíc kontrolují, že je repozitář s tím pracovním prostorem propojený.

Poznej, co plocha odmítne

Sekce “Poznej, co plocha odmítne”
  • Brána režimu. Volání se na serveru vyhodnotí podle režimu prostoru volajícího agenta. Agent v režimu jen pro čtení se k zapisovacímu nástroji nedostane tím, že vynechá space_id. Režim se vezme z jeho aktivního běhu.
  • Guardraily akcí. Měnící nástroje deklarují třídy efektů a procházejí stejnou politikou jako zbytek produktu. Viz Nastavte guardraily.
  • Potvrzení. Některé destruktivní nástroje sestaví potvrzovací payload a volání pokračuje až po jeho schválení.

Celý katalog se hlásí v tools/list a nic se z něj neschovává. Externí klient MCP odmítne zavolat nástroj, který v jeho uloženém seznamu není, takže schovávání nástrojů je rozbije, místo aby seznam uklidilo.

Klient nevidí žádné nástroje

Sekce “Klient nevidí žádné nástroje”
  • Zkontroluj, že karta Server MCP ukazuje Běží
  • Zkontroluj, že port sedí s portem tvého cc_server
  • U Claude Code zkontroluj, že jsi předal --mcp-config a --strict-mcp-config

403 ze stroje, který není serverem

Sekce “403 ze stroje, který není serverem”

Bearer token není nastavený. Nastav ho a pošli ho.

Volání nástroje selže hláškou „Missing or invalid argument: workspace_id“

Sekce “Volání nástroje selže hláškou „Missing or invalid argument: workspace_id“”

Přidej workspace_id. Implicitní pracovní prostor není.

Volání nástroje se odmítne jako neznámé

Sekce “Volání nástroje se odmítne jako neznámé”

Nástroje MCP vypisuje katalog. Volej název přesně tak, jak tam stojí.