Mahjong AI,
as an API.
Send a game state, get the best move back — ranked candidates with probabilities, in a single API call.
One position in, one decision out.
The API is stateless: every call carries the current hand's event stream from your seat's perspective. No sessions, no sockets, nothing to keep alive.
Upload your seat's events
Standard mjai events for the current hand, censored to what your seat can see. Opponents' hidden tiles are just "?".
The server rebuilds the position
Your stream is replayed into model input on our GPUs and batched with other requests for one forward pass.
Reaction + candidates back
The exact move as an mjai event, plus the policy's top-k candidate actions with probabilities.
One inference service. Any client.
MJOT speaks a generic interface. Use it from the browser, from your own code, or from compatible desktop clients.
Web Dojo
Review your games move by move and play live tables against the models, right on this site. The free demo model runs entirely in your browser; your API key unlocks the cloud models.
Enter the dojo →Custom integrations
Research tools, replay analyzers, training aids, bots for AI competitions — anything that can speak mjai over HTTPS.
Read the API docs →Akagi
An open-source mahjong client by the same developer. Akagi supports local inference and custom endpoints; MJOT can be used as an optional hosted inference backend.
Learn about the integration →Pay for compute. Nothing else.
Every plan is the same API and the same models — you're buying inference quota. Keys are yours: renewing extends the key you hold, it never rotates.
- 6,000 requests / day
- Full model access
- Key auto-renews
- 6,000 requests / day
- Full model access
- Key auto-renews
Checkout is hosted by Creem, our merchant of record. Your API key is emailed to you right after payment — check your inbox (and the spam folder).