Creators & communities
Substack
Posts, Notes, messages, subscribers and stats for your publication.
50 endpoints
Lichess's API covers teams, tournaments, studies and broadcasts, but it takes a token you create and scope yourself and code you write and host. Sign in to Lichess once in your own Cloud Browser, and your AI agent does the work there for you. The same tools work over MCP for agents and as a REST API for scripts.
Not affiliated with Lichess.
| What you need | Lichess's API | GitHub MCP server | Cotlet |
|---|---|---|---|
| Use without an API key or code | No | Partly | Yes, 15 tools |
| Acts as you, signed in 24/7 | No | No | Yes, Cloud Browser |
| Fixed for you when Lichess changes | N/A | No | Yes, tested every 6h |
| Runs with your laptop off | N/A | No | Yes, hosted |
Checked Oct 17, 2026. Sources: Lichess API reference · Lichess API documentation source (GitHub) · Lichess: How to use Lichess Broadcasts · Lichess: Fair Play
AI agents connect over MCP, scripts call the REST API. Both reach the same 15 tools with one API key.
Add Cotlet to your agent once. Lichess and every other app you connect show up as its tools.
claude mcp add --transport http cotlet \
https://cotlet.dev/mcp/v1 \
--header "Authorization: Bearer $COTLET_API_KEY" {
"mcpServers": {
"cotlet": {
"url": "https://cotlet.dev/mcp/v1",
"headers": {
"Authorization": "Bearer ${COTLET_API_KEY}"
}
}
}
} # ~/.codex/config.toml
[mcp_servers.cotlet]
url = "https://cotlet.dev/mcp/v1"
bearer_token_env_var = "COTLET_API_KEY" Paste the snippet for your client. The same server and key serve every app you connect, so you do this once.
Every tool is an endpoint under /api/v1/lichess with its own method and path, such as POST /api/v1/lichess/teams/{team_id}/update, with the same API key. Our open-source repo has ready scripts to start from.
15 tools on your own Lichess account. Agents call them as operations of the MCP tools lichess_read and lichess_write; scripts call each one at its own REST endpoint, with the same inputs and answers.
| Tool | What it does | Access |
|---|---|---|
| get_account | Return the signed-in Lichess profile: username, title, ratings per game type and account dates. | read |
| list_user_teams | List the teams a user belongs to, with member counts and which ones they lead. | read |
| list_team_join_requests | List pending requests to join a team you lead, with each applicant's message and profile. | read |
| list_arena_tournaments | List recently active, running and upcoming Arena tournaments from the Lichess schedule. | read |
| get_arena_results | Return the final standings of an Arena tournament: rank, score, rating and performance per player. | read |
| list_studies | List the studies of a user with their IDs, names and update dates. | read |
| export_user_games | Export the games of a user as PGN or JSON, newest first, filtered by date, game type, color and opponent. | read |
| list_broadcasts | List the broadcasts a user created, with their rounds and start dates. | read |
| accept_team_join_request | Accept one person's request to join a team you lead. | writeasks first |
| decline_team_join_request | Decline one person's request to join a team you lead. | writeasks first |
| send_team_update | Send a message to all members of a team you lead. | writeasks first |
| create_arena_tournament | Create a public or private Arena tournament with a clock, length, start time and entry rules. | writeasks first |
| import_pgn_to_study | Add a PGN as new chapters to a study you own or can edit. | writeasks first |
| create_broadcast | Create a broadcast for an over-the-board event, to which rounds are added next. | writeasks first |
| create_broadcast_round | Add a round to a broadcast, fed from a PGN URL, Lichess game IDs or Lichess usernames. | writeasks first |
Scroll the table for all 15 tools.
You sign in yourself in your own Cloud Browser, we never save your password, and anything that reaches your readers waits for your OK. The browser profile is encrypted in the EU. Independent scanners grade cotlet.dev A+.
One price for both: a tool call costs the same over MCP or REST. Free 7-day trial with 2,000 credits, no card needed. Then one-time credit packs, no subscription, valid 12 months. Most calls use 25 credits, and your Cloud Browser uses 50 credits a day while Lichess is enabled for agents, so 20 calls a day come to 550 credits.
| Credits | Price, one time | Calls at 25 credits | Per 1,000 credits |
|---|---|---|---|
| 5,000 | $29 | 200 | $5.80 |
| 15,000 | $79 | 600 | $5.27 |
| 32,000 | $149 | 1,280 | $4.66 |
| 60,000 | $249 | 2,400 | $4.15 |
Only successful calls use credits; failed calls and timeouts cost nothing. At a balance of 0 calls pause, never a surprise charge. Authenticate with the Authorization: Bearer header.
Lichess has a full, free REST API with personal and OAuth tokens, but no official MCP server (checked 17 Oct 2026). The API covers teams, Arena and Swiss tournaments, studies, broadcasts, challenges and game export, so the gap is a hosted, maintained MCP with no token to create, scope or revoke.
Sign up free, open Lichess under Integrations in the console and press Request access. Your free trial starts with your account, no card needed.
No, only the way in. Cotlet builds each integration as a REST API and puts an MCP server on top, so both have the same 15 tools, the same inputs and answers, one API key and one price. AI agents such as Claude, ChatGPT or Cursor use MCP; scripts, cron jobs and HTTP steps in n8n, Make or Zapier use the REST API.
Your own Chrome that Cotlet runs for you in the EU, around the clock. You open it from the console, sign in to Lichess yourself and press Enable for agents. Your agent's calls go through it, from its IP with its cookies, so Lichess sees the browser you signed in with. Password saving is off and the profile is stored encrypted with AES-256-GCM.
Not on anything that reaches other people: accept_team_join_request, decline_team_join_request, send_team_update, create_arena_tournament, import_pgn_to_study, create_broadcast, create_broadcast_round wait for your OK by default. You can switch that off per tool for scheduled runs.
No. Cotlet has no tool that joins a game, makes a move or analyses a live position. Lichess forbids external help during a game and allows moves only through its own site or its official Board and Bot APIs, so these tools stay on teams, tournaments, studies, broadcasts and finished games.
Listing join requests needs a team leader. Accepting and declining need the team leader role, and sending an update needs a leader with the Updates permission. A member who is not a leader can still use the tournament, study and export tools.
Yes. Lichess rate limits all API requests, asks clients to make one request at a time and answers 429 when a limit is hit, usually clearing after a minute. Cotlet calls are made one at a time.
Pick one if you want the code on your own computer and do not mind the upkeep: you install it, sign it in and fix it when Lichess changes. Pick Cotlet if you want it hosted and kept working for you.
Yes. Add https://cotlet.dev/mcp/v1 in n8n's MCP Client node, or call the REST endpoints from an HTTP step in Make or Zapier.
Cotlet is run by Take Group, a Polish software company working since 2019. Take Group runs about 3,200 websites on its own systems and has its own DevOps team for infrastructure security. We built and used integrations like this inside the company for years before opening them as Cotlet.
No. Cotlet is independent and not affiliated with Lichess.
Free 7-day trial with 2,000 credits, no card needed.
May we use Google Analytics to see which pages help people? It sets cookies only if you accept. No ads, and we never sell data. Cookie policy