AI agents
MCP server for AI agents
Connect Claude, Cursor or another MCP client to /api/ with a personal access token. The agent acts as you through three tools.
Updated
Browse the developer docs
Steps
- Open the AI agents (MCP) tab of the Developer console and select Create MCP token. The dialog opens with Personal access token chosen, the
mcp:readscope ticked and the label AI agent filled in. In the Scopes list the MCP scopes are the ones whose names start with AI agents. Also tickmcp:writeif the agent should make changes, then select Create key and copy the token from the MCP token created dialog. - Under 2. Add ChessCore to your agent, copy the Endpoint, the Claude Code command, or the Claude Desktop / Cursor (mcp.json) config. The endpoint is your app address followed by
/api/. After you create a token on this tab, the command and config already include it.mcp - For Claude Code, run:.Command
claude mcp add --transport http chesscore <endpoint> --header "Authorization: Bearer <token>" - Clients connect over Streamable HTTP with
POSTonly, one JSON-RPC 2.0 message per request. The server supportsinitialize,ping,tools/andlist tools/, and protocol versions 2025-06-18, 2025-03-26 and 2024-11-05.call - The agent sees three tools:
search_tools(find tools by keywords, up to 25 results),describe_tool(get one tool’s input schema) andcall_tool(run a tool with arguments). - For high-stakes tools,
call_toolneeds anidempotency_key. For write tools it is recommended. A retry with the same key returns the first result. - Without MCP, you can use the same tools over REST with the same token:
GET /(default 25, maximum 50),api/ v1/ tools?q=<words>&limit=<n> GET /for the schema, andapi/ v1/ tools/ {name} POST /with the arguments as a JSON object. Write tools need anapi/ v1/ tools/ {name} Idempotency-Keyheader.
Notes
- Only personal access tokens work. An API key gets 403 with a message that starts with
"MCP needs a personal access token". A token without an mcp scope gets 403"this token is missing the mcp:read scope". - The agent acts as the person who created the token, with that person’s current role and permissions. If that person leaves the academy or the token is revoked, it stops working.
- For
/api/, the token owner’s role must allow AI tools (themcp copilot:usepermission). Otherwise every call gets 403"your role is not allowed to use AI tools in this academy". - Access levels:
mcp:readallows read tools.mcp:writeadds write tools.mcp:adminadds high-stakes tools (payments, outbound sends, destructive actions), and only when the token owner is an owner or admin. - Calling a tool above the token’s level returns an error that names the scope needed. Without
mcp:admin, high-stakes actions must be done inside ChessCore. - Write tools save an undo snapshot. Every tool run is recorded in the audit log.
- Request bodies over 1 MiB are refused. Batched JSON-RPC messages are not supported.
GETandDELETEon/api/return 405, because the server keeps no sessions.mcp
Related guides
- Authentication and scopesHow the
/v1API checks aBearercredential, the two key types, and the scope each route needs. - Idempotency keysEvery write needs an
Idempotency-Keyheader so a retried request never runs twice. - Rate limitsPer-key, per-academy and per-route limits, the RateLimit headers, and what a 429 looks like.
Still need help?
Email hello@chesscore.io. Using ChessCore day to day? Visit the Help centre.