chess-eval
Server Details
Stockfish chess eval: best move, score, principal variation, multipv. $0.005/call via x402.
- Status
- Healthy
- Uptime
- 100.0% over 54 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: evaluate_position provides a static evaluation of a chess position, while best_line interactively plays out the principal variation with per-ply evaluations. There is no functional overlap.
Both names use snake_case and are descriptive, but evaluate_position follows a verb_noun pattern while best_line is an adjective_noun construction, showing a slight inconsistency.
With only 2 tools, the server is on the thin side for a chess evaluation service, though the tools are well-focused. Additional tools for other aspects of chess analysis would strengthen the set.
The tool set covers the core needs of chess evaluation (static analysis and line exploration) adequately for the server's stated purpose, leaving minor gaps such as batch analysis or configuration options.
Available Tools
2 toolsbest_lineAInspect
Play out Stockfish's predicted principal variation as SAN moves with a per-ply eval, re-searching after each ply.
| Name | Required | Description | Default |
|---|---|---|---|
| fen | Yes | ||
| depth | No | ||
| maxPlies | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses key behaviors: it outputs SAN moves with per-ply evals and re-searches after each ply. It does not mention side effects or authentication needs, but the behavior is clearly described for a read-like operation.
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 a single sentence of 19 words that immediately conveys the tool's purpose and key details. It is appropriately concise and front-loaded with the main action.
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 lacks explanation of the output format (how are SAN moves and evals returned?) and does not cover the behavior for different parameter values. Given no output schema and three parameters, the description is incomplete for selecting and invoking the tool correctly.
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 description does not explain any of the three parameters (fen, depth, maxPlies) despite having 0% schema coverage. It adds no meaning beyond what the schema provides, leaving the agent without guidance on how to set these parameters.
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 clearly states the tool plays out Stockfish's predicted principal variation as SAN moves with per-ply eval and re-searches after each ply. This specific verb-resource combination distinguishes it from the sibling sibling 'evaluate_position', which likely provides a static evaluation rather than a sequence of moves.
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 for obtaining a line of best play, but it does not explicitly state when to use this tool versus 'evaluate_position' or provide any exclusions or context. The guidance is implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
evaluate_positionBInspect
Evaluate a chess position with Stockfish: best move, centipawn/mate score, principal variation, and optional multipv. No mocks — a real single-threaded Stockfish 10 (asm.js) runs in-isolate per call.
| Name | Required | Description | Default |
|---|---|---|---|
| fen | Yes | ||
| depth | No | ||
| multipv | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the tool uses real Stockfish 10 (asm.js), is single-threaded, and runs in-isolate per call. It also mentions no mocks. However, it does not cover potential errors, rate limits, or authorization needs.
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 efficient sentences. The first sentence front-loads the core purpose and outputs. The second adds crucial behavioral context. Every word earns its place.
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?
While the description mentions return values (best move, score, variation), it lacks details on output structure. With no output schema, this is a gap. Parameter explanations are minimal. The tool has 3 parameters and 1 required, but only multipv is mentioned. Overall, it is adequate but not comprehensive.
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 0%, so the description must explain parameter meanings. It only mentions 'optional multipv' but does not explain 'fen' or 'depth'. The outputs described (best move, score) are not parameter-related. This leaves significant gaps in understanding how to use the parameters.
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 clearly states the tool evaluates a chess position with Stockfish and lists outputs (best move, centipawn/mate score, principal variation, multipv). However, it does not explicitly differentiate from the sibling tool 'best_line', leaving ambiguity about when to choose one over the other.
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?
No guidance is provided on when to use this tool versus the sibling 'best_line' or alternatives. It does not mention prerequisites, limitations, or when not to use the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- First observed
best_line - First observed
evaluate_position
Related MCP Connectors
Chess opening guides and names, FEN and PGN checks, the daily chess puzzle and Elo estimates.
Lichess MCP — public read-only API for users, games, explorer, tablebase.
Chess MCP for Claude: engine analysis, attack maps, game review. One URL, no install.
Pedagogical chess intelligence for AI agents: explain positions and games for a target Elo.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceConnects AI client environments to a hosted text-evaluation capability that measures substance, depth, and clarity quickly enough to help filter, rank, triage, or preprocess large text streams. Integrates via streamable HTTP or an npx stdio bridge for supported desktop tools.MIT
- AlicenseNot gradedqualityCmaintenanceReal-time financial intelligence MCP server for crypto public companies. Provides covenant stress analysis, alpha signals, peer ranking, risk distribution, SEC XBRL fundamentals, and daily changes. Native x402 micropayments supported. First 5 calls free.1MIT
- AlicenseNot gradedqualityDmaintenanceAI-powered crypto signal intelligence for 20 assets (BTC, ETH, SOL, etc). 6 scoring dimensions: whale activity, technical analysis, derivatives flow, narrative strength, sentiment, market structure. Market regime detection (TRENDING/RANGING), portfolio optimization, and accuracy tracking. 9 read-only MCP tools. Free via MCP, $0.001 USDC via x402 on Base for REST API.3MIT
- AlicenseNot gradedqualityCmaintenanceProvides real-time stock quotes including price, change, volume, market cap, and company name for major US and international exchanges, with pay-per-call access via x402 micropayments and no API key or signup required.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.