Lichess

live ChessGames

Lichess public API — players, ratings, top lists, cloud eval, tablebase, opening explorer. Keyless.

10 tools
0ms auth
free tier 50 calls/day

Tools

user required: username

Player profile.

Parameters
Name Type Description
username req string
Try it
users required: usernames

Bulk lookup (up to 300).

Parameters
Name Type Description
usernames req array
Try it
user_status required: usernames

Online / playing status.

Parameters
Name Type Description
usernames req array
Try it
user_performance required: username, perf

Single-variant performance + best rated game.

Parameters
Name Type Description
username req string
perf req string
Try it
top_players required: perf

Top-rated players for one variant.

Parameters
Name Type Description
perf req string
limit opt number
Try it
leaderboards

Top-10 across all variants.

No parameters required.

Try it
tv_channels

Currently-featured TV games.

No parameters required.

Try it
cloud_eval required: fen

Stockfish cloud evaluation for a FEN.

Parameters
Name Type Description
fen req string
multi_pv opt number
Try it
tablebase required: fen

Syzygy tablebase lookup.

Parameters
Name Type Description
fen req string
variant opt string
Try it
opening_explorer required: scope

Lichess/Masters/Player opening DB.

Parameters
Name Type Description
scope req string
fen opt string
play opt string
player opt string
speeds opt string
ratings opt string
moves opt number
Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/lichess/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/lichess/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"user","arguments":{"username": "octocat"}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("user", {"username":"example"});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("lichess public api — players, ratings, top lists, cloud eval, tablebase, opening explorer");

Related packs

Other Pipeworx packs in the same categories (Chess, Games):