BetterChess
Server Details
Chess MCP for Claude: engine analysis, attack maps, game review. One URL, no install.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Available Tools
3 toolschess_analyseAnalyse a chess positionARead-onlyInspect
Returns an engine evaluation of a chess position: the strongest candidate moves with their scores, and the position's checkable facts — side to move, whether that side is in check, undefended pieces and the pieces attacking them, and the material balance. Accepts a FEN, a PGN, or a list of SAN moves from the starting position. Also reports what the OPPONENT would play if it were their turn, which is the difference between a position being quiet and merely looking quiet. Pass considering with a move you are thinking of playing and it returns what that move actually walks into — a losing move is usually not in the top candidates, so asking about it directly is the only way to find out.
| Name | Required | Description | Default |
|---|---|---|---|
| fen | No | FEN of the position. | |
| pgn | No | PGN; the position after the final move is used. | |
| moves | No | SAN moves from the start, e.g. ["e4","e5"]. | |
| multipv | No | How many candidate moves (1-5, default 3). | |
| considering | No | A move you are thinking of playing, in SAN, e.g. "Ng5". Returns the evaluation after it and the line that refutes it. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint=true already covering safety, the description adds substantial behavioral context: it reports what the opponent would play, explains that `considering` returns the refutation line, and warns that losing moves usually fall outside top candidates. This is exactly the kind of non-obvious behavior an agent needs, and nothing here contradicts the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences, front-loaded with the main purpose and ending with the actionable `considering` use case. The 'quiet and merely looking quiet' phrasing adds color and some explanatory value, but is slightly more ornamental than strictly necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema, the description covers return values well: candidate moves, scores, checkable facts, opponent reply, and refutation lines. It omits a few correctness details—there is no explicit statement that exactly one of fen/pgn/moves is needed despite zero required parameters, and engine score units/format are not described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description goes beyond the schema by linking the three position input parameters as alternatives and by explaining the non-obvious meaning of `considering` (returning the refutation line, not just an evaluation). Minor parameter semantics like multipv interaction and score format are left to the schema/defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description leads with a specific verb and resource—'Returns an engine evaluation of a chess position'—and enumerates exact outputs: candidate moves, scores, side to move, check status, undefended pieces, and material balance. It is not a tautology and clearly surpasses the generic title, but it never names or contrasts the sibling tools, so explicit sibling differentiation is missing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives concrete input guidance ('Accepts a FEN, a PGN, or a list of SAN moves') and a targeted use case for `considering`, even explaining when asking directly is the only way to expose a losing move. However, it never states when to prefer this tool over chess_attacks/chess_review or when not to use it, leaving alternative selection implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
chess_attacksWhat a piece attacksARead-onlyInspect
Returns the exact list of squares attacked by the piece standing on a given square in a chess position, together with that piece's type and colour. Returns an empty list when the square is unoccupied. Accepts a FEN, a PGN, or a list of SAN moves from the starting position.
| Name | Required | Description | Default |
|---|---|---|---|
| fen | No | FEN of the position. | |
| pgn | No | PGN; the position after the final move is used. | |
| moves | No | SAN moves from the start, e.g. ["e4","e5"]. | |
| square | Yes | The square, e.g. "d5". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark readOnlyHint=true, and the description adds meaningful behavioral detail: unoccupied squares return an empty list, output includes piece type and colour, and the accepted position formats are disclosed. No contradiction with the read-only annotation exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly written sentences front-load the core result and the key edge case, then list accepted input formats. Every sentence earns its place and there is no filler or redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is complete for a simple computation tool: it explains the return value and the empty-list case, which is especially important because there is no output schema. It names all three position input types, though it does not specify what happens if multiple position arguments are supplied or what the default starting position is.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds context by naming FEN, PGN, and SAN moves as the position inputs and noting that SAN moves begin from the starting position. However, 'square' semantics are left to the schema's example, and the description does not significantly deepen parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb—'Returns the exact list of squares attacked'—and names the resource: the piece standing on a given square. It also includes return details (piece type and colour) and edge-case behavior, making its purpose unmistakable and distinct from the broader chess_analyse and chess_review siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: use this when you need the squares a particular piece attacks. It also states the accepted input formats (FEN, PGN, or SAN moves), which helps with input preparation. However, it never explicitly compares this tool to chess_analyse or chess_review, nor gives when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
chess_reviewReview a game for turning pointsARead-onlyInspect
Replays a finished game ply by ply with the engine and returns the moves where the evaluation swung by more than a threshold (default 1.5 pawns). Each entry gives the move number, the side that moved, the move played, the engine's preferred move, the size of the swing in pawns, the evaluation before and after, and the FEN of the resulting position. Accepts a PGN or a list of SAN moves, and can be filtered to one colour. Long games are truncated at 60 plies.
| Name | Required | Description | Default |
|---|---|---|---|
| pgn | No | The finished game as PGN. | |
| moves | No | Or SAN moves from the start. | |
| colour | No | "white" or "black" — whose mistakes to report. Default both. | |
| threshold | No | Swing in pawns that counts as a turning point. Default 1.5. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint and openWorldHint annotations, the description discloses substantial behavioral traits: the threshold default, the 60-ply truncation, the exact per-entry output composition, and the accepted input formats and colour filter. These details are not available in the annotations and are highly relevant to invoking the tool correctly. The description is fully consistent with the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is arranged efficiently: core behavior first, then return format, then input and limitation details. It is three sentences with no filler and no unnecessary repetition of schema content. Every clause contributes new, useful information for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema, the description fully accounts for return values by listing every field in each entry. It also covers both accepted input representations, optional colour filtering, the threshold behavior, and the truncation limit. This is a complete picture for a read-only analysis tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides 100% parameter coverage with descriptions for pgn, moves, colour, and threshold, so the description does not need to re-document them. The description adds a little context, such as the input alternatives and colour filtering, but mostly restates behavior rather than clarifying individual parameter semantics. This matches the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description contains a specific verb and resource ('Replays a finished game... returns the moves where the evaluation swung'), which makes the tool's purpose exact and easily distinguishable from the sibling tools. It also enumerates the returned fields, so an agent knows precisely what 'review' produces without needing the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to choose chess_review over the sibling tools chess_analyse or chess_attacks. It neither names alternatives nor states exclusions, leaving the agent to infer usage solely from the task wording. This is a clear gap given the sibling list is available for routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user or an account that owns the GitHub organization, then choose Claim with GitHub.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Connectors
Teamfight Tactics data & AI coaching for Claude and ChatGPT — 19 tools, built-in Riot key.
Private persistent memory for Claude, ChatGPT & Gemini via MCP - semantic search, zero-code setup.
MCP-native notes and memory for ChatGPT, Claude, and other AI tools.
Talk to your public-facing AI from any MCP client — Claude, ChatGPT, Cursor, Cline, Windsurf.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceChess.com player, game, and daily-puzzle tools where each tool ships its own interactive React view — board replays and a playable puzzle widget, not just text. Built with Skybridge for ChatGPT & Claude.202ISC
- FlicenseNot gradedqualityBmaintenanceEnables Claude Code to control a real browser using AI for web scraping, competitive intelligence, and UX auditing through the MCP protocol.
- AlicenseAqualityFmaintenanceMCP server for AI Diagram Maker — generate software engineering diagrams from natural language, code, ASCII diagram, images, or Mermaid. Inline diagram rendering using MCP apps UI and diagram URL in responses. Works with Cursor, Claude Desktop, Claude Code, and any MCP-compatible AI.5568MIT
- FlicenseNot gradedqualityAmaintenanceConnects Claude Desktop to Foundry VTT for AI-powered campaign management, enabling natural language interaction with game data including quest creation, character management, compendium searches, and dice rolling. Provides 20 MCP tools for seamless integration between Claude and your tabletop RPG sessions.66
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
Each tool has a clearly distinct purpose: chess_analyse evaluates a single position, chess_attacks reports attacked squares for one piece, and chess_review identifies engine-evaluation swings across a game. The overlap between position analysis and game review is minimal because one is a snapshot and the other is a temporal replay.
All three tool names follow the same chess_ prefix plus a descriptive verb/noun pattern: chess_analyse, chess_attacks, chess_review. The naming is uniform and predictable.
Three tools is at the lower bound of the ideal range but fits the server's focused chess-analysis scope. Each tool provides a distinct, non-redundant capability and there is no bloat.
The toolset covers the core analysis workflows: evaluating a position, inspecting tactical attack relationships, and reviewing a full game for turning points. Minor gaps exist, such as no direct move-generation or board-state query, but agents can generally accomplish the stated purpose without dead ends.