Powered by Stockfish 17 lite NNUE. Free API access is available; paid subscriptions are not enabled.

Stockfish, one HTTPS call away.

Send a chess position. Get an evaluation, best move, and principal variations from Stockfish 17 lite NNUE running on Cloudflare Workers.

♜♞♝♛♚♝♞♜♟♟♟♟♟♟♟♟♙♙♙♙♙♙♙♙♖♘♗♕♔♗♘♖
curl -s https://stockfishapi.robin-345.workers.dev/v1/eval \
  -H "Authorization: Bearer $STOCKFISH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"fen":"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1","depth":8}'
const res = await fetch("https://stockfishapi.robin-345.workers.dev/v1/eval", {
  method: "POST",
  headers: { Authorization: `Bearer ${process.env.STOCKFISH_API_KEY}`, "Content-Type": "application/json" },
  body: JSON.stringify({
    "fen": "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1",
    "depth": 8
  }),
});
const data = await res.json();
import os, requests

r = requests.post(
    "https://stockfishapi.robin-345.workers.dev/v1/eval",
    headers={"Authorization": f"Bearer {os.environ['STOCKFISH_API_KEY']}"},
    json={
        "fen": "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1",
        "depth": 8
    },
)
data = r.json()

Try without a key Get a free key

Positions and games

Evaluate FEN positions up to depth 14 with a free key. Analyze PGN games or submit batches of up to 50 positions, then poll or stream the job’s progress.

Built for developers and agents

REST, OpenAPI, and MCP tools share the same authentication and quotas. Create a key with one request and manage it in the dashboard.

Bounded searches

Requests have a node budget. The response reports the depth reached, principal variations, and units consumed. GET /v1/price quotes the unit budget before you run a search.

Free to start

Try 10 keyless evaluations per hour at depth 10, or create a free key for 2,000 units per day and depth 14. Paid subscriptions are not enabled.

Read the quickstart · Limits and units · Connect an AI agent