update readme
Browse files
README.md
CHANGED
|
@@ -9,3 +9,67 @@ pinned: false
|
|
| 9 |
license: apache-2.0
|
| 10 |
short_description: MCP server providing useful tools for chess agents
|
| 11 |
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 9 |
license: apache-2.0
|
| 10 |
short_description: MCP server providing useful tools for chess agents
|
| 11 |
---
|
| 12 |
+
|
| 13 |
+
# Chess MCP Server
|
| 14 |
+
|
| 15 |
+
This is a specialized MCP server tailored for chess, designed to enhance interactions with Large Language Models (LLMs) by providing structured chess-related information and analysis.
|
| 16 |
+
|
| 17 |
+
---
|
| 18 |
+
|
| 19 |
+
## Overview
|
| 20 |
+
|
| 21 |
+
The Chess MCP Server offers chess-specific functionalities leveraging powerful chess engines, heuristic evaluations, and opening databases. It is used primarily by chess-related agents such as the [Chess Agent](https://huggingface.co/spaces/Agents-MCP-Hackathon/chess-agent).
|
| 22 |
+
|
| 23 |
+
## Available API Functions
|
| 24 |
+
|
| 25 |
+
### 1. **`get_position`**
|
| 26 |
+
|
| 27 |
+
* **Description:** Analyzes and describes the current chess position, classifies the opening if possible, or provides a piece map and legal moves.
|
| 28 |
+
* **Input:** `{ fen: string }`
|
| 29 |
+
|
| 30 |
+
### 2. **`get_square_info`**
|
| 31 |
+
|
| 32 |
+
* **Description:** Retrieves details about a specific square, including the piece occupying it, and identifies attackers and defenders.
|
| 33 |
+
* **Input:** `{ fen: string, square_name: string }`
|
| 34 |
+
|
| 35 |
+
### 3. **`get_top_moves`** *(Uses Stockfish chess engine)*
|
| 36 |
+
|
| 37 |
+
* **Description:** Provides top N recommended moves with evaluation scores.
|
| 38 |
+
* **Input:** `{ fen: string, top_n: number }`
|
| 39 |
+
|
| 40 |
+
### 4. **`analyze_pawn_structure`**
|
| 41 |
+
|
| 42 |
+
* **Description:** Evaluates pawn structure for both sides from the given position.
|
| 43 |
+
* **Input:** `{ fen: string }`
|
| 44 |
+
|
| 45 |
+
### 5. **`analyze_tactical_patterns`**
|
| 46 |
+
|
| 47 |
+
* **Description:** Detects tactical patterns such as forks, pins, skewers, discovered attacks, and x-ray attacks.
|
| 48 |
+
* **Input:** `{ fen: string }`
|
| 49 |
+
|
| 50 |
+
### 6. **`evaluate_king_safety`**
|
| 51 |
+
|
| 52 |
+
* **Description:** Assesses the king safety for both sides.
|
| 53 |
+
* **Input:** `{ fen: string }`
|
| 54 |
+
|
| 55 |
+
### 7. **`classify_opening`**
|
| 56 |
+
|
| 57 |
+
* **Description:** Classifies chess openings from a FEN string using the Lichess openings database.
|
| 58 |
+
* **Input:** `{ fen: string }`
|
| 59 |
+
|
| 60 |
+
### 8. **`find_opening_by_name`**
|
| 61 |
+
|
| 62 |
+
* **Description:** Searches for openings by name in the Lichess openings database.
|
| 63 |
+
* **Input:** `{ name: string }`
|
| 64 |
+
|
| 65 |
+
---
|
| 66 |
+
|
| 67 |
+
## Use Cases
|
| 68 |
+
|
| 69 |
+
* Enhance chess reasoning capabilities of LLM-powered agents.
|
| 70 |
+
* Provide structured chess insights for educational tools and interactive chess applications.
|
| 71 |
+
* Improve accuracy of chess-related interactions by providing engine-backed evaluations.
|
| 72 |
+
|
| 73 |
+
---
|
| 74 |
+
|
| 75 |
+
Enjoy building smarter, chess-aware applications with the Chess MCP Server!
|