Developers

Shortest path from curiosity to a working call. Any HTTP client works; no proprietary SDK required.

REST API

Base URL (live): https://api.plymove.com

Auth: Authorization: Bearer $PLYMOVE_API_KEY or X-API-Key. Request API access viacontact.

Position analysis (sync)
curl -X POST https://api.plymove.com/v1/analyses/position \
  -H "Authorization: Bearer $PLYMOVE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "fen": "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1",
    "target_elo": 1600
  }'
Python
import os, requests

r = requests.post(
    f"https://api.plymove.com/v1/analyses/position",
    headers={"Authorization": f"Bearer {os.environ['PLYMOVE_API_KEY']}"},
    json={"fen": "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1", "target_elo": 1600},
    timeout=120,
)
r.raise_for_status()
print(r.json()["explanation"])

Primary: POST /v2/storyboard/game (sync storyboard). Also: POST /v1/analyses/position, /compare, /what-if (sync). Legacy v1 game endpoints remain for backward compatibility — see Docs.

MCP

First-party Streamable HTTP MCP at Cloudflare. Storyboard v2 is the primary whole-game surface.

https://mcp.plymove.com/mcp

API key: Authorization: Bearer $PLYMOVE_API_KEY - no payment challenge.
Agent-native: no key → HTTP 402 → x402 pay → retry. Invalid keys return 401 (no crypto fallback).

ToolMaps to
build_game_storyboardPOST /v2/storyboard/game (sync)
explain_positionPOST /v1/analyses/position
compare_movesPOST /v1/analyses/compare
analyze_what_ifPOST /v1/analyses/what-if (sync)
explain_gameLegacy alias → storyboard v2
find_teaching_momentsLegacy alias → storyboard v2

Six MCP tools on https://mcp.plymove.com/mcp. ChatGPT app adapter (prepaid server key): https://chatgpt.plymove.com/mcp.

Transport: Streamable HTTP. analyze_what_if accepts pgn or analysis_id from a prior storyboard, plus anchor_ply or move_label and the exact alternative_move_san (never auto-substituted). Legacy game tools accept optional verbosity (minimal | standard | detailed) to control chapter count. Details: Docs → MCP.

Buy API Credits

$10 → 1,000 PlyMove Units. No subscription. Same key works on REST and MCP.

Paid agent endpoint

Live gateway: https://agent.plymove.com (HTTP x402 for explain_position, Base mainnet). Full MCP with API key or x402: https://mcp.plymove.com/mcp.

request without payment
→ HTTP 402 challenge
→ agent payment (x402)
→ retry with payment header
→ result

Agent HTTP currently protects explain_position on Base. Wallet/setup details belong inAgent payments - not on this page.

SDK status

No first-party SDKs yet. Any HTTP client works. For agent payment automation, the community@x402/fetch stack is documented in the agent payment guide.