Ga naar inhoud

De MCP-server gebruiken

Deze gids laat je zien hoe je een externe MCP-client — Claude Code, een editor, de MCP Inspector — verbindt met de eigen toolserver van Control Center.

Control Center registreert 110 tools en serveert die via het Model Context Protocol op protocolversie 2024-11-05. Hele toolfamilies die je zou verwachten, ontbreken: er zijn geen vergaderings- of agendatools en geen projecttools.

Het MCP-oppervlak deelt dezelfde listener als cc_server zelf. Er is geen aparte MCP-poort.

Endpoint Methode Doel
/mcp POST Streamable HTTP-transport — dit is wat een client spreekt
/mcp DELETE Een sessie beëindigen
/sse GET Notificatiestroom via server-sent events

Een standaard lokale installatie draait dus op http://127.0.0.1:9030/mcp.

  1. Ga naar Instellingen → Server → MCP-servers
  2. Lees de kaart MCP-server — die toont Actief of Gestopt en de poort waarop hij luistert

Het oppervlak staat standaard aan bij een nieuwe installatie, dus een loopback-client werkt zonder uitstapje naar de instellingen. Starten bij app-lancering bepaalt of het na een herstart terugkomt; Starten / Stoppen gelden alleen voor de sessie en veranderen die voorkeur niet.

De server bindt standaard aan loopback, dus het endpoint is alleen bereikbaar vanaf de machine waarop cc_server draait, tenzij je hem met --bind any hebt gestart.

Wijs je client naar het Streamable HTTP-endpoint. De exacte vorm van de configuratie is aan je client; de URL is in beide gevallen hetzelfde.

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

Claude Code neemt dit niet over uit een .mcp.json in het project — het zet projectgebonden MCP-servers achter een goedkeuringsprompt die een niet-interactieve claude -p nooit beantwoordt. Geef de configuratie expliciet mee:

Terminalvenster
claude --mcp-config /path/to/mcp.json --strict-mcp-config

--strict-mcp-config zorgt ervoor dat Claude alleen dat bestand gebruikt, zodat dezelfde server niet ook uit het project wordt ontdekt en tweemaal wordt geregistreerd.

Controlepunt: vraag de client zijn tools op te sommen. Je zou mcp__*-vermeldingen moeten zien die tickets, ruimtes, geheugen, codegraph en review dekken.

  1. Ga op Instellingen → Server → MCP-servers naar de rij Authenticatietoken, druk op Instellen en plak een token
  2. Stuur het als Authorization: Bearer <token> mee bij elke POST /mcp-aanvraag

Een oppervlak zonder token weigert elke aanroeper buiten loopback met 403. Dat is bewust fail-closed: het token is juist wat dienstverlening buiten de host überhaupt mogelijk maakt.

Wijzigingen aan het token gelden direct voor het live oppervlak — geen herstart nodig.

Elke tool die gegevens met werkruimtebereik aanraakt, vereist workspace_id; een aanroep zonder dat veld wordt geweigerd in plaats van tegen een of andere “huidige” werkruimte te worden opgelost:

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

De id is die uit je browser- of app-URL: /workspaces/<workspace_id>/…. De enige uitzonderingen zijn tools die echt werkruimteoverstijgend zijn, zoals list_workspaces en de nieuwsfeed-tools — de nieuwsfeed is per gebruiker en een agent heeft geen eigen gebruiker, dus die tools werken op de feeds van de servereigenaar.

Tools met repobereik controleren bovendien of de repo aan die werkruimte is gekoppeld.

  • Modusafdwinging. Een aanroep wordt server-side bepaald aan de hand van de modus van de ruimte van de aanroepende agent. Een agent in een alleen-lezen-modus bereikt een schrijftool niet door space_id weg te laten — de modus wordt in plaats daarvan opgezocht via zijn actieve run.
  • Actiebeveiligingen. Muterende tools declareren hun effectklassen en doorlopen hetzelfde beleid als de rest van het product. Zie Beveiligingen configureren.
  • Bevestiging. Sommige destructieve tools bouwen een bevestigingspayload die moet worden goedgekeurd voordat de aanroep doorgaat.

De volledige catalogus wordt aangeboden in tools/list, zonder filtering bij de ontdekking — een externe MCP-client weigert een tool aan te roepen die niet in zijn gecachte lijst staat, dus tools verbergen maakt ze stuk in plaats van dat het de lijst opruimt.

  • Controleer of de kaart MCP-server Actief vermeldt
  • Controleer of de poort overeenkomt met je cc_server-poort
  • Controleer bij Claude Code of je --mcp-config en --strict-mcp-config hebt meegegeven

Er is geen bearer-token geconfigureerd. Stel er een in en stuur het mee.

Een toolaanroep mislukt met “Missing or invalid argument: workspace_id”

Sectie getiteld “Een toolaanroep mislukt met “Missing or invalid argument: workspace_id””

Voeg workspace_id toe. Er is geen impliciete werkruimte.

Een toolaanroep wordt geweigerd als onbekend

Sectie getiteld “Een toolaanroep wordt geweigerd als onbekend”

MCP-tools bevat de catalogus. Roep de naam precies zo aan als daar staat.