Lichess automation · runs weekly
Schedule a weekly Lichess Arena tournament
Your club plays Friday blitz, and every week someone has to remember to open the tournament form, pick the same clock and length again and set the start time.
Cotlet does it in your own Lichess account with list_arena_tournaments and create_arena_tournament, called by your AI agent, an n8n workflow or a script.
Hosted · nothing to install or maintain
Can Lichess do this on its own?
Lichess has an API call that creates an Arena tournament with the same fields as its web form (checked 17 Oct 2026). It needs a personal or OAuth token with the tournament:write scope, and there is no official MCP server. The web form creates one tournament per submit, and no documented option repeats it weekly.
How you do it in Lichess today
- Sign in to Lichess and open lichess.org/tournament/new, the Arena form the API mirrors.
- Enter the name, the clock (initial time and increment), the length in minutes and the start time, or how many minutes to wait before it starts.
- Choose rated or casual, the variant and whether players can Berserk, and add entry limits such as a minimum rating, a minimum number of rated games or a password if you want them.
- Submit the form. Lichess creates one tournament per submit, so the next Friday means filling it in again.
- Tell your team the tournament exists, for example with a team update, because Lichess does not do that for you.
How to schedule a weekly Lichess Arena tournament
Every Monday, create a public 3+0 rated Arena for my club next Friday at 19:00, 60 minutes long, named "Friday Blitz Night". Skip it if one with that name is already scheduled. - 01
Look for this week's tournament first
Your agent calls list_arena_tournaments and checks the upcoming list for your name, so a rerun on Tuesday does not create a second Friday Blitz Night.
- 02
Check the settings against Lichess rules
Before creating, the agent checks the combinations Lichess rejects: rated 15-second and 0+1 variant tournaments, Berserk with an increment above twice the initial time, and a length that does not suit the clock.
- 03
Create the tournament
create_arena_tournament submits your settings with the start time you named. By default it asks for your OK, because a public tournament shows on Lichess to everyone.
- 04
Report the link
The agent returns the tournament URL and start time, and tells you how many public tournaments are left for the day if you are near the cap.
What you get back
Created "Friday Blitz Night" (Arena, 3+0, rated, 60 min)
Starts Fri 23 Oct 2026, 19:00 UTC
https://lichess.org/tournament/Qx7pLm2a
Nothing else with this name is scheduled this week
Public tournaments created today: 1 of 12 Other ways to ask
- Create a private Arena for my team every Saturday at 10:00, 90 minutes, with a password, and give me the link.
- List the Arenas starting in the next 24 hours and tell me which of them are rated.
- After Friday Blitz Night ends, pull the results and give me the top five with their performance ratings.
- Create a Bullet 1+0 Arena for 30 minutes, casual, with minimum account age 7 days.
What Lichess allows, and what to know first
- Lichess allows up to 12 public or 24 private Arena tournaments a day per account through the API.
- A rated 15-second or 0+1 variant Arena is not allowed, and Berserk needs an increment of at most twice the initial time.
- In an Arena a win scores 2 points, a draw 1 and a loss 0; after two wins in a row, a streak makes each following win worth 4 points.
- If players tie on points at the end of an Arena, tournament performance decides the winner.
- An Arena can be limited by minimum rating, maximum rating, minimum rated games and minimum account age, and can allow or block bots.
create_arena_tournament asks for your OK by default. To run it weekly without you, switch confirmation off for that tool in your dashboard.
Sources: Lichess API: Create a new Arena tournament · Lichess: Arena tournament FAQ · Lichess API reference
Call create_arena_tournament from a script
curl -X POST https://cotlet.dev/api/v1/lichess/arena-tournaments \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"Friday Blitz Night","clock_time":3,"clock_increment":0,"minutes":60,"start_date":"2026-10-23T19:00:00Z","rated":true,"visibility":"public"}' {
"tournament_id": "Qx7pLm2a",
"name": "Friday Blitz Night",
"url": "https://lichess.org/tournament/Qx7pLm2a",
"clock": "3+0",
"minutes": 60,
"rated": true,
"starts_at": "2026-10-23T19:00:00Z",
"created_today": 1
} MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is lichess_write → create_arena_tournament. Example data.
Schedule it in n8n, Make, Zapier or cronLichess tools this automation uses
| Tool | Parameters |
|---|---|
| list_arena_tournaments | created_by |
| create_arena_tournament | name, clock_time, clock_increment, minutes, start_date, wait_minutes, visibility, rated, variant, berserkable, password, min_rating, min_rated_games, description |
Frequently asked questions
Does my agent play in the tournament?
No. The tools create and read tournaments only. Lichess forbids programmatic moves outside its official Board and Bot APIs, and Cotlet has no tool that joins a game or makes a move.
Is it safe to connect Lichess to Cotlet?
Yes. You sign in to Lichess yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Lichess once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.
Give your agent access to Lichess.
Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Lichess.