Chess.com MCP (interactive views)

Herramientas de jugador, partidas y rompecabezas diarios de Chess.com, donde cada herramienta incluye su propia vista interactiva de React — repeticiones de tablero y un widget de rompecabezas jugable, no solo texto. Construido con Skybridge para ChatGPT y Claude.

Documentación

chess-mcp demo

Skybridge Live demo License: Beerware

Un ejemplo de referencia para crear aplicaciones MCP con vistas React interactivas — donde cada herramienta incluye su propia vista en lugar de devolver texto plano. Construido con Skybridge, busca jugadores, partidas y el puzzle diario de Chess.com, y funciona en ChatGPT y Claude.

Pruébalo

  • Demo en vivo: chess.niklas.sh
  • URL del servidor MCP: https://mcp.chess.niklas.sh/mcp

Solo añade la URL del servidor MCP a cualquier cliente compatible (ChatGPT, Claude, etc.) — eso es todo. Luego pregunta cosas como "muéstrame la última partida de magnuscarlsen" o "dame el puzzle de ajedrez de hoy".

Solving the daily puzzle in Claude

Herramientas

HerramientaEntradaDescripción
get-chess-playerusernamePerfil del jugador con valoraciones rápidas, blitz y bullet, además de registros de victorias/derrotas/empates.
get-last-gameusernameLa partida más reciente del jugador: resultado, oponente, apertura y una reproducción interactiva del tablero.
get-daily-puzzleningunaEl puzzle diario de Chess.com como tablero interactivo: resuélvelo movimiento a movimiento con retroalimentación en vivo, revela la solución o reinicia y vuelve a intentarlo.

Primeros pasos

Requisitos previos

  • Node.js 24.14.1+
  • pnpm 9+

Instalación

pnpm install

Iniciar el servidor de desarrollo

pnpm dev

Esto inicia:

  • El servidor MCP en http://localhost:3000/mcp.
  • La interfaz de Skybridge DevTools en http://localhost:3000.

Todos los scripts (dev, build, test, lint, typecheck) están definidos en package.json.

Estructura del proyecto

├── src/
│   ├── server.ts         # Server entry: tool definitions + analytics middleware
│   ├── chess-com.ts      # Typed Chess.com API client (zod boundary + helpers)
│   ├── analytics.ts      # PostHog wrapper (no-op without a key)
│   ├── helpers.ts        # Typed useToolInfo / useCallTool hooks
│   ├── views/            # One React view per tool
│   │   └── shared/       # Shared view code (chess board, helpers)
│   └── index.css         # Global styles
├── vite.config.ts        # Vite + Skybridge + Tailwind config
├── Dockerfile            # Cloud Run image
└── package.json

Pruebas

Prueba la aplicación localmente usando la interfaz de DevTools en http://localhost:3000 mientras ejecutas pnpm dev.

Las pruebas unitarias se ejecutan con Vitest: pnpm test.

Para conectarte con clientes web como ChatGPT o Claude, expón tu servidor con la bandera --tunnel (pnpm dev:tunnel). Consulta la guía de pruebas.

Despliegue y analítica

Esta aplicación se despliega en Google Cloud Run mediante release-please, y las llamadas a herramientas pueden rastrearse con PostHog (sin efecto a menos que se configure). Consulta docs/deployment.md para la configuración completa.

Recursos

Licencia

El código fuente se publica bajo la Licencia Beerware.

Los iconos de piezas de ajedrez provienen del paquete "Chess" de Flaticon y se usan bajo la Licencia Gratuita de Flaticon — no están cubiertos por la licencia Beerware. Consulta NOTICE para más detalles.