mcpbeat

Chesswithclaw MCP Server

io.github.Alightttt/chesswithclaw
answering

Chesswithclaw is answering right now. Last checked 11 min ago. It exposes 10 tools. Last commit 3 Aug 2026.

Play chess live against your own personal AI agent — OpenClaw, Hermes, and similar.

Uptime history 41 hours of history · worst hour 25%
41 hours agonow
85.7%
Uptime 24h
78 of 91 checks
10
Tools
read from the server
358 ms
Response time
average over 24h
1
Stars
last commit 3 Aug 2026

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 11 min ago.

run in your terminal
claude mcp add chesswithclaw --transport http https://chesswithclaw.vercel.app/api/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "chesswithclaw": {
      "url": "https://chesswithclaw.vercel.app/api/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.chesswithclaw]
url = "https://chesswithclaw.vercel.app/api/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "chesswithclaw": {
      "url": "https://chesswithclaw.vercel.app/api/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "chesswithclaw": {
      "url": "https://chesswithclaw.vercel.app/api/mcp"
    }
  }
}

Available tools 10

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

game
create_game
Set up a brand new ChessWithClaw game on your own initiative — you do not need to wait for your human to start one, or for anyone else to invite you first.
get_game_state
Everything visible on the human's own screen right now: FEN, ASCII board, full move history, full chat history, presence, timestamps. Call this whenever you want to look at the board — there is no penalty for checking often.
companion
get_companion_guide
Fetch the companion guide principles for thinking about chess positions and being genuinely present.
join
join_game
Connects to a game using the invite code your human gave you. Returns the game_id and your agent_token — keep both, every other tool needs them.
legal
get_legal_moves
Pure chess rules — where a piece is physically allowed to move right now. Not an evaluation, not a suggestion, not an opinion about what is good. Exactly what a human sees as dots when they click a piece. Omit square to get every legal move in the position.
make
make_move
Submit the move you decided on, in your own reasoning — not a menu, not a ranked list, nothing pre-chosen for you. If it is illegal you get a clear reason back and can try again, exactly like a human clicking the wrong square. Optionally include a genuine thought and/or chat message about the move. Always include a thought on every single move unless you have a specific reason not to — this is what makes you feel present to your human, not optional flavor text. Check thought_language in the current game state before writing your thought, and write it in that language — it may be english, hindi, or hinglish.
offer
offer_draw
Propose ending the game as a draw. The game stays active until your human responds.
respond
respond_to_draw
Accept or decline a draw your human offered. This is your own real decision — weigh the actual position however you see fit.
send
send_chat
Say something to your human, any time — not just on your turn.
wait
wait_for_event
Holds the connection open, checking every couple seconds, for up to ~20 seconds. Returns the moment it becomes your turn, the human sends a chat message, a draw is offered, or the game ends — whichever happens first. Returns event: "timeout" if none of those happened in the window, which just means nothing new yet, not that anything is wrong — call it again if you want to keep waiting, or go do something else and check back whenever you want. Use this instead of repeatedly calling get_game_state in a tight loop. You must call this tool again immediately after every timeout, for the entire duration of the game, without exception — a timeout is not a stopping point, it is the normal rhythm of this game. Treat this as a persistent loop you run until the game ends, not a single check. draw_offered and game_ended are time-sensitive — when either fires, respond or acknowledge within your next action, do not let a pending draw offer or a finished game sit unaddressed while you continue calling wait_for_event as if nothing happened.

Endpoints

URLTransportStateLatencyChecked
https://chesswithclaw.vercel.app/api/mcp streamable-http answering 233 ms 11 min ago

Chesswithclaw — questions

Answers built from our own checks of this server.

What can Chesswithclaw do?
It exposes 10 tools, read directly from the server on our last check. Among them: create_game, get_companion_guide, get_game_state, get_legal_moves, join_game, make_move and 4 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Chesswithclaw working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 78 of 91 checks got a reply (85.7%), average response time 358 ms. The bar chart above shows every period we have measured.
How do I connect Chesswithclaw?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Chesswithclaw need an API key?
No. Chesswithclaw completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 10 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Chesswithclaw?
It answers our handshake in 358 ms on average, which is faster than 39% of all working MCP servers we measure. The comparison comes from our own checks across the whole registry, every 15 minutes.
Is Chesswithclaw open source?
Yes — written in JavaScript and 1 stars on GitHub. The source link is on this page, so you can read exactly what it does with your data before you connect it.