这是一个用于Chess.com公开数据API的模型上下文协议(MCP)服务器。
它通过标准化的MCP接口提供访问Chess.com玩家数据、游戏记录和其他公共信息的功能,允许AI助手搜索和分析国际象棋信息。
https://github.com/user-attachments/assets/3b33361b-b604-465c-9f6a-3699b6907757
工具列表是可配置的,您可以选择要向MCP客户端提供的工具。
使用Docker运行chess-mcp与Claude Desktop最简单的方法。如果您没有安装Docker,可以从Docker官方网站获取。
编辑您的Claude Desktop配置文件:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%/Claude/claude_desktop_config.json~/.config/Claude/claude_desktop_config.json然后添加以下配置:
{
"mcpServers": {
"chess": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"pab1it0/chess-mcp"
]
}
}
}
或者,您也可以直接使用UV运行服务器。编辑您的Claude Desktop配置文件(位置如上所述),并添加服务器配置:
{
"mcpServers": {
"chess": {
"command": "uv",
"args": [
"--directory",
"<完整的chess-mcp目录路径>",
"run",
"src/chess_mcp/main.py"
]
}
}
}
注意:如果在Claude Desktop中看到
Error: spawn uv ENOENT错误,您可能需要指定uv的完整路径或在配置中设置环境变量NO_UV=1。
欢迎贡献!如果您有任何建议或改进,请打开一个议题或提交拉取请求。
此项目使用uv来管理依赖项。根据您的平台安装uv:
curl -LsSf https://astral.sh/uv/install.sh | sh
然后创建虚拟环境并安装依赖项:
uv venv
source .venv/bin/activate # 在Unix/macOS上
.venv\Scripts\activate # 在Windows上
uv pip install -e .
该项目包含一个测试套件,确保功能并帮助防止回归。
使用pytest运行测试:
# 安装开发依赖项
uv pip install -e ".[dev]"
# 运行测试
pytest
# 带覆盖率报告运行
pytest --cov=src --cov-report=term-missing
get_player_profile - 从Chess.com获取玩家资料get_player_stats - 从Chess.com获取玩家统计数据is_player_online - 检查玩家是否当前在线get_titled_players - 从Chess.com获取有称号玩家列表get_player_current_games - 获取玩家正在进行的游戏get_player_games_by_month - 获取特定月份的玩家游戏get_player_game_archives - 获取玩家每月可用的游戏存档列表download_player_games_pgn - 下载特定月份的所有游戏的PGN文件get_club_profile - 获取Chess.com上的俱乐部信息get_club_members - 获取Chess.com上的俱乐部成员MIT