- Home
- MCP servers
- Chess UCI
Chess UCI
- python
1
GitHub Stars
python
Language
5 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"anglerfishchess-chess-uci-mcp": {
"command": "uvx",
"args": [
"chess-uci-mcp@latest",
"/usr/local/bin/stockfish"
]
}
}
}You can connect to an external UCI chess engine (like Stockfish) from your environment using the chess-uci-mcp bridge. This MCP server lets you issue chess queries and get engine responses through a simple, configurable interface, enabling you to analyze positions, request best moves, and manage engine state from your MCP client.
How to use
Use your MCP client to send analysis, best-move, or position commands to the chess-uci-mcp bridge. You specify the engine path and, if needed, UCI options like thread count or hash size. Run the bridge through a local MCP runtime in either an automatic virtual environment or a local runtime, then connect to it from your client and send FENs or position descriptors to receive moves or analysis.
How to install
Prerequisites you need before installing the bridge:
Python 3.10 or newer
A runtime for MCP execution (uvx or uv) installed
Install and run with uvx (recommended)
Use uvx to automatically create a virtual environment and run the chess-uci-mcp bridge with the engine path you provide.
{
"mcpServers": {
"chess-uci-mcp": {
"command": "uvx",
"args": ["chess-uci-mcp@latest", "/usr/local/bin/stockfish"]
}
}
}
Pass engine options with uvx
If you want to set engine options like number of threads or hash size, add them to the args array.
{
"mcpServers": {
"chess-uci-mcp": {
"command": "uvx",
"args": [
"chess-uci-mcp@latest",
"/usr/local/bin/stockfish",
"-o", "Threads", "4",
"-o", "Hash", "128"
]
}
}
}
Available tools
analyze
Analyze a chess position given a FEN string and return evaluation and possible lines.
get_best_move
Query the engine for the best move for the current position.
set_position
Set the current chess position in the engine based on FEN or internal representation.
engine_info
Retrieve information about the connected engine, such as available options and version.