chesscom-mxcp

chesscom-mxcp

An enterprise-grade Chess.com MCP server built with MXCP, featuring caching, analytics, audit trails, and advanced data analysis capabilities. https://mxcp.dev/

Category
访问服务器

README

Chess MXCP Server

An enterprise-grade Chess.com MCP server built with MXCP, featuring caching, analytics, audit trails, and advanced data analysis capabilities.

Features

🚀 Core Chess.com API Integration

  • Player Tools: Profile, stats, online status, current games, game archives
  • Game Tools: Monthly games, PGN downloads with caching
  • Titled Players: List players by title (GM, IM, FM, etc.)
  • Club Tools: Club profiles and member lists

💎 Enterprise Features (MXCP Advantages)

  • Smart Caching: Configurable TTLs for different data types
  • Rate Limiting: Token bucket algorithm to respect API limits
  • Connection Pooling: Efficient HTTP client with keepalive
  • Retry Logic: Automatic retries with exponential backoff
  • Audit Trails: Track all API usage and queries
  • Error Handling: Graceful degradation and detailed error messages

📊 Advanced Analytics (Not Available in Original)

  • Rating Trends: Analyze player rating changes over time
  • Game Analysis: Win/loss/draw patterns by time control and color
  • Opening Statistics: Most played openings and success rates
  • Activity Patterns: When players are most active
  • Trending Players: Track popular players and follower growth
  • SQL Query Access: Direct SQL access to cached data for custom analysis

🔐 Security & Governance

  • Authentication Support: OAuth integration ready
  • Audit Logging: Complete API call tracking
  • Policy Engine: Fine-grained access control
  • Type Safety: Comprehensive validation

Installation

  1. Install dependencies:
pip install httpx
  1. Initialize the database:
mxcp run tool get_player_profile --param username=hikaru

This will create the necessary cache tables automatically.

Usage

Start the Server

mxcp serve

Connect to Claude Desktop

The server_config.json was generated during mxcp init. Add it to your Claude Desktop configuration.

Example Queries

Ask Claude:

  • "Get Magnus Carlsen's profile and analyze his rating trends"
  • "Show me all GMs and their recent activity"
  • "Analyze my opening repertoire" (after fetching games)
  • "Compare win rates between blitz and rapid for a player"
  • "Find trending chess players this week"

SQL Analytics

With SQL tools enabled, you can run custom queries:

  • "Show me all cached games where I played the Sicilian Defense"
  • "What's my performance on Tuesdays vs other days?"
  • "List all players whose ratings improved by 100+ points"

Configuration

Edit mxcp-site.yml to adjust:

  • Cache TTLs for different data types
  • Rate limiting parameters
  • Audit settings
  • SQL tool permissions

Architecture

┌─────────────────┐     ┌──────────────────┐     ┌─────────────────┐
│   Chess.com     │     │   MXCP Server    │     │   DuckDB Cache  │
│      API        │◄────│  - Rate Limiter  │────►│  - API Cache    │
│                 │     │  - Retry Logic   │     │  - Game Archive │
└─────────────────┘     │  - Type Safety   │     │  - Analytics    │
                        └──────────────────┘     └─────────────────┘
                                 │
                                 ▼
                        ┌──────────────────┐
                        │   LLM Client     │
                        │  (Claude, etc)   │
                        └──────────────────┘

Advanced Features

Caching Strategy

  • Player profiles: 1 hour TTL
  • Player stats: 30 minutes TTL
  • Current games: 5 minutes TTL
  • Game archives: 24 hours TTL (historical data)
  • Titled players: 7 days TTL
  • Individual games: Permanent cache

Analytics Tables

  • chess_api_cache: General API response cache
  • chess_games_cache: Individual game storage with PGN
  • player_profile_views: Track profile access patterns
  • rating_history: Player rating changes over time
  • player_activity: Game count tracking
  • audit_log: Complete API usage audit trail

Development

Adding New Tools

  1. Create Python implementation in python/
  2. Define tool in tools/ with YAML
  3. Add SQL analytics if applicable
  4. Update cache tables if needed

Testing

# Test a specific tool
mxcp run tool get_player_profile --param username=hikaru

# Validate all tools
mxcp validate

# Check for drift
mxcp drift check

Why MXCP?

This implementation showcases how MXCP improves upon a basic MCP server:

  1. Performance: Caching reduces API calls by 90%+
  2. Analytics: SQL access enables complex analysis impossible with just API
  3. Reliability: Retry logic and rate limiting prevent failures
  4. Observability: Audit trails show exactly what's happening
  5. Extensibility: Easy to add new analytics without touching core code
  6. Type Safety: Validation prevents runtime errors
  7. Production Ready: Built for scale from day one

License

MIT

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选
mcp-server-qdrant

mcp-server-qdrant

这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。

官方
精选
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选