# FIDE Laws of Chess

Executes formal 2023 FIDE chess rules to evaluate arbiter cases and tournament penalties. Useful for checking claims around illegal moves or flag falls.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI
- Author: arxohq
- License: Apache-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/arxohq/arxo-fide-chess
- Updated: 2026-10-14
- HTML: https://affpapa.org/en/nevibecode/mcp/fide-laws-of-chess

## What it does

The server wraps a codified model of the FIDE Laws of Chess effective 1 January 2023. It evaluates factual assertions against strict rules, outputting whether an outcome is proven or marked as requiring arbiter discretion. Ten retained scenarios test specific tournament disputes such as touch-move intentions or second completed illegal moves.

Local execution via stdio relies on Node.js 20 or newer running on Linux x64 or macOS arm64. Users can also connect to the remote HTTP endpoint without maintaining local dependencies. If queries take longer to respond, execution time limits adjust via the `FIDE_CHESS_MCP_CALL_TIMEOUT` environment variable.

This package functions as a legal reasoning system rather than a chess engine — it cannot evaluate board positions, so users must supply factual premises explicitly.

## Requirements
- Needs: Node.js (commands run via npx)
- Remote server: `https://mcp.arxo.io/mcp/fide-chess`
- Environment variables: `FIDE_CHESS_MCP_CALL_TIMEOUT` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

1. **Platform CLI: remote server**
```bash
claude mcp add --transport http fide-chess https://mcp.arxo.io/mcp/fide-chess
```

2. **Platform CLI**
```bash
claude mcp add --env FIDE_CHESS_MCP_CALL_TIMEOUT=<FIDE_CHESS_MCP_CALL_TIMEOUT> --transport stdio fide-laws-of-chess -- npx -y @arxo/mcp-fide-chess
```
Replace <…> with your own values

### Codex

1. **Platform CLI: remote server**
```bash
codex mcp add fide-laws-of-chess --url https://mcp.arxo.io/mcp/fide-chess
```

2. **Platform CLI**
```bash
codex mcp add fide-laws-of-chess --env FIDE_CHESS_MCP_CALL_TIMEOUT=<FIDE_CHESS_MCP_CALL_TIMEOUT> -- npx -y @arxo/mcp-fide-chess
```
Replace <…> with your own values

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "fide-laws-of-chess": {
            "url": "https://mcp.arxo.io/mcp/fide-chess"
        }
    }
}
```
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "fide-laws-of-chess": {
            "command": "npx",
            "args": [
                "-y",
                "@arxo/mcp-fide-chess"
            ],
            "env": {
                "FIDE_CHESS_MCP_CALL_TIMEOUT": "<FIDE_CHESS_MCP_CALL_TIMEOUT>"
            }
        }
    }
}
```
Replace <…> with your own values

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "fide-laws-of-chess": {
            "type": "http",
            "url": "https://mcp.arxo.io/mcp/fide-chess"
        }
    }
}
```
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "fide-laws-of-chess": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@arxo/mcp-fide-chess"
            ],
            "env": {
                "FIDE_CHESS_MCP_CALL_TIMEOUT": "<FIDE_CHESS_MCP_CALL_TIMEOUT>"
            }
        }
    }
}
```
Replace <…> with your own values

### Gemini CLI

1. **Platform CLI: remote server**
```bash
gemini mcp add -t http fide-laws-of-chess https://mcp.arxo.io/mcp/fide-chess
```

2. **Platform CLI**
```bash
gemini mcp add -e FIDE_CHESS_MCP_CALL_TIMEOUT=<FIDE_CHESS_MCP_CALL_TIMEOUT> fide-laws-of-chess npx -y @arxo/mcp-fide-chess
```
Replace <…> with your own values

## When to use it
- evaluate game outcome after a second illegal move
- determine draw validity upon flag fall when checkmate is impossible
- calculate penalty time for illegal moves in rapid or blitz formats
- verify move recording requirements during severe time pressure

## Example prompts
- Evaluate the `SecondIllegalNoMate` case with FIDE Laws of Chess to see if the game ends in a draw.
- Check the `FlagFall` scenario under 2023 FIDE rules to verify whether a loss is computed.
- Inspect arbiter penalty time in rapid chess using the `RapidFirstIllegal` case.

## Similar
- [Zotero MCP](https://affpapa.org/en/nevibecode/mcp/zotero-mcp.md) — MCP server · ★ 5585
- [arxiv-mcp-server](https://affpapa.org/en/nevibecode/mcp/arxiv-mcp-server.md) — MCP server · ★ 3235
- [PaperBanana](https://affpapa.org/en/nevibecode/mcp/paperbanana.md) — MCP server · ★ 2418
- [MATLAB MCP Server](https://affpapa.org/en/nevibecode/mcp/matlab-mcp-server.md) — MCP server · ★ 1723
- [Hex Research](https://affpapa.org/en/nevibecode/mcp/hex-research.md) — MCP server · ★ 584
- [DocsAgent — Zotero, Obsidian & Apple Notes MCP Server](https://affpapa.org/en/nevibecode/mcp/docsagent-zotero-obsidian-apple-notes-mcp-server.md) — MCP server · ★ 578

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
