Skip to main content
Glama
Smarter.Poker Model Context Protocol (MCP) Server

Smarter.Poker Model Context Protocol (MCP) Server

Official

simulate_poker_variance

Read-onlyIdempotent

Compute expected profit, standard deviation, confidence intervals, and loss probability over a hand sample to assess poker variance and determine sample size needed for statistical confidence.

Instructions

Compute expected profit (EV in BB), sample standard deviation (in BB and 100BB buy-ins), 68% (±1σ), 95% (±1.96σ), and 99.7% (±3σ) normal confidence intervals, probability of finishing at a net loss over hands played, and minimum hands required for 95% statistical confidence of being a winning player ((1.96 * std_dev / winrate)^2 * 100). Pure read-only, closed-form statistical calculation with zero side effects; accepts winrate_bb_per_100, std_dev_bb_per_100, and finite sample size hands (default 50,000), returning a JSON statistical summary (<1 KB). Use this tool to evaluate sample-size variance, confidence intervals, or probability of being down over a specific number of hands. Do NOT use this tool for infinite-horizon bankroll Risk of Ruin or buy-in buffer sizing (call calculate_bankroll_risk_of_ruin instead).

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "simulate_poker_variance"
  }
}

Input Schema

NameRequiredDescriptionDefault
handsPlayedNoTotal sample size in hands played (default: 50000).
stdDevBb100NoStandard deviation in Big Blinds per 100 hands (e.g. 70 live NLH, 85 6-max online NLH, 135 PLO4, default: 85).
winrateBb100NoTrue winrate in Big Blinds per 100 hands (default: 5).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.0.3

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered; the description nonetheless adds that this is a closed-form calculation with zero side effects and that the return payload is a JSON summary under 1 KB. The 'pure read-only / zero side effects' phrasing partially restates the annotations rather than adding new behavior, which keeps it below a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The output enumeration is front-loaded and the routing guidance follows in a natural order, with no filler sentences. It is dense to the point of being a single long clause chain, and 'Pure read-only... zero side effects' duplicates the annotations rather than earning its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description correctly enumerates the returned statistics and their units (BB and 100BB buy-ins) plus payload size. Defaults, the closed formula, and the boundary against the risk-of-ruin tool round it out; an agent has everything needed to call and interpret it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and each parameter already carries a description with units and example values, so the schema does the heavy lifting. The description adds only the implied formula linking winrate and std_dev to the minimum-hands output, not any new unit or format guidance for the inputs. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb ('Compute') and enumerates exactly what is produced: EV in BB, standard deviation, 68/95/99.7% confidence intervals, probability of net loss, and minimum hands for confidence. It also names the sibling it must not be confused with, so an agent can separate it from calculate_bankroll_risk_of_ruin without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit when-to-use ('evaluate sample-size variance, confidence intervals, or probability of being down over a specific number of hands') and explicit when-not-to-use with a named alternative ('Do NOT use this tool for infinite-horizon bankroll Risk of Ruin or buy-in buffer sizing (call calculate_bankroll_risk_of_ruin instead)'). Both the positive and negative routing conditions are stated outright.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.