set_tokenLABSCO SUMMARY
A chess client's worth of Lichess actions, addressed as tools rather than a board.
Everything a session needs is here in sequence: authenticate, challenge a player or Stockfish, stream the board, move, and finish with a draw, a resignation or an abort. Moves go in as UCI text (e2e4, e7e8q for promotion), so the model has to hold the position itself — nothing here renders a board, and lichess_cloud_eval is Lichess' cloud analysis rather than an engine on your machine. The read side is wider than the play side, covering puzzle history, rating history, crosstables and leaderboards for players you never face.
What it is
A 28-tool server over a Lichess account: the games it is playing, the challenges waiting on it, its puzzle history, and the public profiles and leaderboards around it.
What you get
- OAuth sign-in through a browser, and a status check on which account is connected
- Challenges in both directions — sent with a chosen time control, colour and rated flag, then listed, accepted, declined or cancelled — plus games against Stockfish at level 1–8
- Live play: UCI moves, draw offers and replies, takebacks, resignation, aborts within the first few moves, and in-game chat
- The board streamed as it changes, and an account-level event stream carrying game starts and incoming challenges
- Your game history and ongoing games with moves, result, opponent, time control and opening
- Cloud Stockfish evaluation of any FEN position, returning the best move, score and top lines
- Puzzles and standings — the daily puzzle, one by ID, your next recommended one, your attempt history, plus profiles, rating history, head-to-head crosstables and leaderboards
Requirements
A Lichess account, connected through the OAuth flow that lichess_auth_start opens in a browser — the tools that read your games, play a move or answer a challenge all act as that account.
Setup effort
One command plus a key — npx -y @smithery/cli install @karayaman/lichess-mcp --client claude, then supply credentials
USE CASES
Getting a game started against a named opponent
Sign in, send the invite with the time control and colour you want, and watch the challenge list for the reply — or take Stockfish at a chosen level when nobody answers.
Playing out a game the model has to hold in its head
Stream the board for the opponent's reply, send each move as UCI text, and end the game deliberately with a draw offer or a resignation rather than by timing out.
Checking whether the position is as good as it looks
Take the current FEN off the stream and ask Lichess' cloud engine for the best move, the score and the top lines before committing to a plan.
Working a puzzle habit into a daily routine
Pull the puzzle picked for your rating, add the daily one, and read back the attempt history to see which themes keep costing you points.
Sizing up an opponent before accepting
Look up the player's ratings by time control, check the head-to-head record, and see where their rating has moved recently.
14 tools
Listed in project docs. Your client may show a different list.
get_my_profileget_user_profilecreate_challengemake_moveget_ongoing_gamesexport_gameget_cloud_evalget_arena_tournamentsjoin_arenacreate_arenaplay_puzzleview_pgnexplore_openingsBEFORE YOU INSTALL
What to know first
Tools you get
14 tools named in the project's documentation. The documentation shows these as worked examples rather than a full list, and mentions team and player-interaction features with no named tool.
Requires
- npx on PATH
- LICHESS_TOKEN in your environment
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Server setup
npx -y @smithery/cli install @karayaman/lichess-mcp --client claudeMCP Clients
Claude Desktop
{
"mcpServers": {
"lichess": {
"command": "lichess-mcp",
"env": {
"LICHESS_TOKEN": "<YOUR_LICHESS_TOKEN>",
"DEBUG": "*"
}
}
}
}