Docs
Connect an assistant or an agent, and what each tool takes and returns.
The connector is not open yet. It is planned for 2026-12-01, and what this page describes starts then.
PokerSolver is a study tool, for reviewing hands away from the tables. Don't use it during a hand.
Connect
Remote MCP server, over Streamable HTTP: https://pokersolver.app/mcp for Claude, with sign-in for your account, and https://pokersolver.app/mcp/number for everything else, with an account number. Tools read and solve, and none changes anything of yours. The first call needs no key. The same calls are described for plain HTTP in the OpenAPI file.
Connect PokerSolver, a poker solver for study, to this assistant.
It is a remote MCP server. Free answers need no key and no sign-up.
Claude, in chat or in Claude Code, uses https://pokersolver.app/mcp
It asks you to sign in when you want your account and credits. Enter your account number there to keep its credits, or leave it empty for a new account.
Claude Code: claude mcp add --transport http pokersolver https://pokersolver.app/mcp
Claude chat: Settings, Connectors, Add custom connector, then paste the address.
Any other assistant or agent uses https://pokersolver.app/mcp/number
If you can change your own MCP settings, add it yourself, then call get_capabilities.
ChatGPT: Settings, Apps, then search for PokerSolver.
There, the first answer gives an account number. This is your account, make sure to save it, and send it with later calls so credits stay with it.
For study away from the tables: never use this during a hand.Tools
| Tool | Input | Output |
|---|---|---|
get_capabilities | none | Game modes, stack ranges, accepted exports, answer fields, limits |
solve_hand | hand_history (raw text) or spot (settings JSON), account | An answer, or a job_id and the wait |
get_result | job_id | The answer, or the wait |
get_preflop | Settings JSON for one spot | The answer for that spot, never a whole chart |
equity, combos, pot_odds, icm | Cards, ranges, stacks, payouts | The number, with the method named |
request_game_mode | Settings JSON | Your place in the request queue |
get_account | account, or your sign-in in Claude | Credits, plan, how to save the number |
What an answer holds
| Field | Meaning |
|---|---|
street, position, action_taken | Where the decision is |
frequencies | How often the solver plays each action with this hand |
line_so_far, pot_bb | The hand so far after the flop, and the pot |
source | chart, fast_flop or solved (turn and river) |
quality | The measured gap for this source, with a link to the accuracy page |
match | same, close (with what differs) or none |
stored_or_fresh | Whether this spot was solved before |
notes | Caveats for this answer |
unsupported_reason | Why there is no answer, for example a pot with three players after the flop |
EV per action and EV lost are not in answers yet.
Slow answers
A solve that isn't ready returns a job_id and wait_seconds. Call get_result with it after that wait. Keep the newest job_id.
Hand histories
Paste the raw export. Formats known today: GGPoker, PokerStars, CoinPoker, iPoker, Winamax, Americas Cardroom, 888poker and partypoker. The answer reads the first hand to its end: the preflop from the charts, then each street of a heads-up pot, as a job_id when a street needs solving. It gives what the solve does at each of your decisions, with no grades while grading is closed. A multiway flop says so and stops. Send other hands one at a time.board and postflop.
Grading a whole hand is closed while we finish fixing it.
When there is no answer
With no good match, unsupported_reason says so and the spot joins the request queue, which may take a long time. Pots with three or more players after the flop are not answered yet. A hand that goes that way is answered up to that point, and says so.
Study, not live play
For study away from the tables: using a solver or any assistance during a hand is against most poker sites' rules. PokerSolver is independent and not affiliated with any poker site.