About Chess.com MCP Server
Chess.com MCP Server is an MCP server for Chess.com's public data API. It lets AI assistants look up player profiles, game records and other public chess information without authentication.
Key features
- 01Player profiles and statistics
- 02Game search by date and player
- 03Online status check for players
- 04Club and titled player information
- 05Configurable list of enabled tools
- 06Docker container support
Use cases
- 01Letting an AI assistant analyze a player's recent games
- 02Downloading PGN files for all games in a month
- 03Listing club members and titled players
MCP support
The project is an MCP server that exposes Chess.com data lookups as tools, such as get_player_profile and download_player_games_pgn, to MCP clients.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEChess.com MCP Server
A Model Context Protocol (MCP) server for Chess.com's Published Data API.
This provides access to Chess.com player data, game records, and other public information through standardized MCP interfaces, allowing AI assistants to search and analyze chess information.
https://github.com/user-attachments/assets/3b33361b-b604-465c-9f6a-3699b6907757
Features
- Access player profiles, stats, and game records
- Search games by date and player
- Check player online status
- Get information about clubs and titled players
- No authentication required (uses Chess.com's public API)
- Docker containerization support
- Provide interactive tools for AI assistants
The list of tools is configurable, so you can choose which tools you want to make available to the MCP client.
Usage
Docker (Recommended)
The easiest way to run chess-mcp with Claude Desktop is using Docker. If you don't have Docker installed, you can get it from Docker's official website.
Edit your Claude Desktop config file:
- Mac:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Then add the following configuration:
{
"mcpServers": {
"chess": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"pab1it0/chess-mcp"
]
}
}
}
Running with UV
Alternatively, you can run the server directly using UV. Edit your Claude Desktop config file (locations listed above) and add the server configuration:
{
"mcpServers": {
"chess": {
"command": "uv",
"args": [
"--directory",
"<full path to chess-mcp directory>",
"run",
"src/chess_mcp/main.py"
]
}
}
}
Note: if you see
Error: spawn uv ENOENTin Claude Desktop, you may need to specify the full path touvor set the environment variableNO_UV=1in the configuration.
Development
Contributions are welcome! Please open an issue or submit a pull request if you have any suggestions or improvements.
This project uses uv to manage dependencies. Install uv following the instructions for your platform:
curl -LsSf https://astral.sh/uv/install.sh | sh
You can then create a virtual environment and install the dependencies with:
uv venv
source .venv/bin/activate # On Unix/macOS
.venv\Scripts\activate # On Windows
uv pip install -e .
Testing
The project includes a test suite that ensures functionality and helps prevent regressions.
Run the tests with pytest:
# Install development dependencies
uv pip install -e ".[dev]"
# Run the tests
pytest
# Run with coverage report
pytest --cov=src --cov-report=term-missing
Available Tools
Player Information
get_player_profile- Get a player's profile from Chess.comget_player_stats- Get a player's stats from Chess.comis_player_online- Check if a player is currently online on Chess.comget_titled_players- Get a list of titled players from Chess.com
Games
get_player_current_games- Get a player's ongoing games on Chess.comget_player_games_by_month- Get a player's games for a specific month from Chess.comget_player_game_archives- Get a list of available monthly game archives for a player on Chess.comdownload_player_games_pgn- Download PGN files for all games in a specific month from Chess.com
Clubs
get_club_profile- Get information about a club on Chess.comget_club_members- Get members of a club on Chess.com
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.