Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
LICHESS_TOKENNoPersonal API token for higher Lichess rate limits
STOCKFISH_PATHNoPath to a Stockfish binaryauto-detect
CHESS_COACH_CACHE_DIRNoWhere games, reports and the engine are stored~/.cache/chess-coach-mcp (%LOCALAPPDATA% on Windows)
CHESS_COACH_ENGINE_HASHNoStockfish hash table in MB128
CHESS_COACH_REFINE_DEPTHNoDepth used to double-check suspicious moves18
CHESS_COACH_AUTO_DOWNLOADNoDownload Stockfish automatically if none is found1
CHESS_COACH_DEFAULT_DEPTHNoSearch depth for the first pass over every move14
CHESS_COACH_ENGINE_THREADSNoStockfish threadshalf your cores (1-4)
CHESS_COACH_TIME_PER_POSITIONNoMax seconds per position in the first pass0.5
CHESS_COACH_REFINE_TIME_PER_POSITIONNoMax seconds per position when double-checking2.0

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_recent_gamesA

List a player's most recent games from Lichess or Chess.com.

Returns one entry per game with the game_id (use it with analyze_game / find_blunders), the opponent, the result from the player's point of view, the opening and the date. Games are cached locally so later tools can find them by id.

Args: username: The player's username on the chosen platform. platform: "lichess" (default) or "chesscom". count: How many games to return (1-100).

analyze_gameA

Run a full engine analysis of one game and classify every move.

Returns evaluation before/after each move, centipawn loss, a label (best/good/inaccuracy/mistake/blunder), the engine's best move and line, per-player accuracy and error counts, and the five most critical moments with their FEN so you can explain why a move was bad. Results are cached, so repeat calls are instant.

Args: game_id: Game id or URL from Lichess or Chess.com (as returned by get_recent_games). platform: "lichess" or "chesscom". Guessed from the id when omitted. username: The player to coach. Required for Chess.com games that were not fetched via get_recent_games; otherwise optional (adds user_color/user_result). depth: Engine search depth (default 14; 18+ is slower but more precise).

find_blundersA

Return only the moves that lost at least threshold centipawns, with the position (FEN), the engine's best move and the best line, sorted from worst to least bad.

Cheaper to read than analyze_game when you only need the mistakes.

Args: game_id: Game id or URL from Lichess or Chess.com. platform: "lichess" or "chesscom". Guessed from the id when omitted. username: The player to coach; required for uncached Chess.com games. threshold: Minimum centipawn loss to include (100 = mistakes and blunders). only_user: If true, return only the mistakes made by username.

engine_statusA

Report which chess engine the server is using (local Stockfish or Lichess cloud fallback), where it lives, and cache statistics. Useful for troubleshooting.

get_opening_statsA

Win/draw/loss record per opening over a player's recent games.

Helps spot openings the player struggles with. Each row carries the game ids so you can dig into a specific loss with find_blunders.

Args: username: The player's username. platform: "lichess" (default) or "chesscom". color: "white", "black" or "both" (default). count: How many recent games to look at (1-300). group_by_family: Group variations under their opening family (default true).

Prompts

Interactive templates invoked by user choice

NameDescription
coach_my_last_gameFetch and analyze your most recent game and explain the 3 biggest mistakes.
weekly_reviewAnalyze the last 7 days of games and find recurring patterns in your losses.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.3/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct role: fetching games, full game analysis, blunder-only extraction, engine diagnostics, and opening statistics. The overlap between analyze_game and find_blunders is explicitly framed as a cheaper subset, so selection is unambiguous.

Naming Consistency4/5

Most tools follow a predictable verb_noun pattern (get_recent_games, analyze_game, find_blunders, get_opening_stats), but engine_status is a noun phrase without a verb. The deviation is minor and still readable.

Tool Count5/5

Five tools is well-scoped for a chess coaching server, and each tool covers a distinct part of the workflow: game discovery, analysis, mistake extraction, opening review, and engine diagnostics.

Completeness4/5

The surface covers the core coaching workflow from fetching games through analysis and opening review. Minor gaps exist, such as no player profile/rating lookup or explicit opening recommendation tool, but agents can work around these.

Maintenance

ActivityMaintained
ResponsivenessNo issues