1. Conduid
  2. Developer Tools
  3. Chess MCP
MCP server · Developer Tools

Chess MCP

Chess MCP Server

Unclaimed Apache-2.0 last commit a year ago devtools
51Fair

Scored 5 months ago · breakdown

About Chess MCP

Chess MCP is an MCP server published by ibuildthecloud in the Developer Tools category: chess MCP Server.

The repository has 5 stars and 5 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.

Install

From source
git clone https://github.com/ibuildthecloud/chess-mcp

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Chess MCP

Powered by Claude · Grounded in docs

I know everything about Chess MCP. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository 6 days ago. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • ✓License declaredUsable under a stated license.
  • !Tests presentNo tests found. Behaviour changes may go unnoticed between versions.
  • ✓Dependencies pinnedA lockfile pins dependency versions.
  • ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

README

Chess MCP Server

A Model Context Protocol (MCP) server that provides an interactive chess game experience using MCP-UI. This server exposes chess game functionality through MCP tools and provides a web-based chessboard interface for playing games.

Features

  • ♟️ Full Chess Game: Complete chess implementation using chess.js
  • 🔧 MCP Tools: Chess game actions exposed as MCP tools
  • 🎮 Interactive UI: Web-based chessboard using ChessBoard.js
  • 💾 Game State Management: Persistent game state with session-based saves

Workshop

In the ./workshop directory, you can find a step by step to creating this MCP server.

Architecture

This MCP server is built using Express.js with integrated MCP capabilities:

Key Components

  • MCP Server (src/server.ts): Main server with chess tools and UI generation
  • Store (src/lib/store.ts): Game state persistence using file system
  • MCP Framework (src/lib/mcp/): Custom MCP middleware implementation with Express integration

MCP Tools Available

  • chess_get_board_state: Get the current state of the chess board with visual representation
  • chess_move: Make a move in standard algebraic notation (e.g., e4, Nf3, O-O) or start a new game

Getting Started

Prerequisites

  • Node.js 18+
  • npm

Installation

Install the dependencies:

npm install

Development

Start the development server:

npm run dev

The server will be available at:

  • MCP endpoint: http://localhost:3000/mcp

Development Commands

  • npm run dev - Start development server

Usage

As an MCP Server

The server exposes MCP tools that can be consumed by MCP clients:

// Get current board state
{
  "method": "tools/call",
  "params": {
    "name": "chess_get_board_state",
    "arguments": {}
  }
}

// Make a move
{
  "method": "tools/call",
  "params": {
    "name": "chess_move",
    "arguments": {
      "move": "e4"
    }
  }
}

// Start a new game
{
  "method": "tools/call",
  "params": {
    "name": "chess_move",
    "arguments": {
      "move": "new"
    }
  }
}

Interactive Chessboard

When using the MCP tools, each response includes:

  • Text representation: ASCII board and FEN notation with valid moves
  • Interactive UI: Drag-and-drop chessboard that allows moves via mouse interaction

Game Rules

  • Standard chess rules apply
  • Uses chess.js for move validation and game logic
  • Supports all legal chess moves including castling, en passant, and pawn promotion
  • Game state persists per session ID

Project Structure

src/
├── lib/
│   ├── mcp/           # Custom MCP middleware framework
│   │   ├── index.ts   # Main exports
│   │   ├── middleware.ts  # Express middleware integration
│   │   ├── header.ts  # HTTP header utilities
│   │   └── uuid.ts    # UUID validation
│   └── store.ts       # Game state persistence
├── server.ts          # Main server with chess tools and UI
games/                 # Persistent game files (FEN notation)

Game State Persistence

  • Each chess game is saved to a JSON file in the games/ directory
  • Games are identified by MCP session ID
  • Game state is stored as FEN (Forsyth-Edwards Notation) strings
  • Games automatically resume when reconnecting with the same session

Dependencies

  • chess.js: Chess game logic and move validation
  • @chrisoakman/chessboardjs: Interactive chessboard UI
  • @mcp-ui/server: MCP UI resource creation
  • @modelcontextprotocol/sdk: MCP server implementation
  • express: Web server framework

License

Apache 2.0 License - see LICENSE file for details.

README fetched from the repository 6 days ago. The original is authoritative.

Questions

About Chess MCP

How do I install Chess MCP?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Chess MCP safe to use with an AI agent?

Its trust score is 51 out of 100 (fair). It passes 4 of the 6 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Chess MCP still maintained?

The last commit was a year ago. That's long enough that you should check whether the maintainer is responding to issues before depending on it.