TexasSolver MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@TexasSolver MCP ServerRun solver for AcQc vs 22+ on Ac7h2h board, 10bb pot, 100bb stacks"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
TexasSolver MCP Server
A Model Context Protocol (MCP) server that enables Claude and other LLMs to interact with the TexasSolver console poker solver through structured parameters.
Features
Run Solver: Execute the TexasSolver with custom game parameters (pot, stack, ranges, board, bet sizes)
Load Ranges: List and load preflop range files from the TexasSolver ranges directory
Build Game Trees: Generate game tree configurations without running the solver (for inspection/editing)
List Outputs: Query previously generated solver outputs
Structured Input: LLM provides structured parameters - no natural language parsing needed
Related MCP server: @pokerai/mcp
Installation
1. Prerequisites
Node.js 18.0.0 or higher
TexasSolver binary (v0.2.0 or compatible)
2. Install Dependencies
cd /Users/bensimmons/Desktop/TexasSolverMCP
npm install3. Configure Environment
Copy .env.example to .env and update the TEXAS_SOLVER_PATH:
cp .env.example .env
# Edit .env and set TEXAS_SOLVER_PATH to your solver locationExample:
TEXAS_SOLVER_PATH=/Users/bensimmons/Desktop/TexasSolverMCP/TexasSolver-v0.2.0-MacOs/console_solverUsage
Running the MCP Server
npm startThe server will start and listen for MCP requests via stdio.
Claude Desktop Integration
Add the following to your Claude Desktop configuration file at:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"texassolver": {
"command": "node",
"args": ["/Users/bensimmons/Desktop/TexasSolverMCP/src/index.js"],
"env": {
"TEXAS_SOLVER_PATH": "/Users/bensimmons/Desktop/TexasSolverMCP/TexasSolver-v0.2.0-MacOs/console_solver"
}
}
}
}MCP Tools
run_solver
Execute the TexasSolver with game parameters.
Parameters:
pot(number): Starting pot sizeeffective_stack(number): Player stack sizeboard(string): Board cards (e.g., "Qs,8d,7h" for flop, empty for preflop)range_ip(string): In-position player range (e.g., "AA-22,AK-AJ")range_oop(string): Out-of-position player rangebet_sizes(object, optional): Custom bet sizes by position, street, and actionsolver_config(object, optional): Solver settings (thread_num, accuracy, max_iteration, etc.)output_name(string, optional): Custom output filename
Example:
Run AcQc vs 22+ on Ac7h2h board, 10bb pot, 100bb stacksReturns:
{
success: true,
output_file: "/absolute/path/to/result_2025-01-15T10-35-22-abc123.json",
command_file: "/absolute/path/to/cmd_2025-01-15T10-30-45-abc123.txt",
execution_time_ms: 45000,
solver_log: "..."
}list_ranges
Discover available preflop range files.
Parameters:
filter(string, optional): Filter by position or scenariorange_set(string, optional): "6max", "qb", or all (default)
Returns:
{
ranges: [
{
path: "6max_range/BTN",
full_path: "/absolute/path/to/BTN",
name: "BTN Opening Range",
scenario: "Open",
position: "BTN"
},
...
]
}load_range
Load and parse a specific range file.
Parameters:
range_path(string): Path fromlist_rangesor absolute path
Returns:
{
range_string: "AA:1.0,KK:1.0,QQ:0.5,...",
parsed_hands: [
{ hand: "AA", weight: 1.0 },
{ hand: "KK", weight: 1.0 },
...
],
hand_count: 150,
total_combos: 1325.5
}build_game_tree_config
Generate a game tree configuration without running the solver.
Parameters: Same as run_solver (without solver_config)
Returns:
{
command_file: "/path/to/cmd_...txt",
commands: [
"set_pot 10",
"set_effective_stack 100",
...
],
preview: "Full command file content as string"
}list_outputs
List previously generated solver outputs.
Parameters:
limit(number, optional): Maximum results (default: 20)sort_by(string, optional): "date" (default) or "size"
Returns:
{
outputs: [
{
filename: "result_2025-01-15T10-35-22-abc123.json",
path: "/absolute/path/to/result_...json",
size_mb: "26.5",
created_at: "2025-01-15T10:35:22.000Z",
associated_command: "/path/to/cmd_...txt"
},
...
]
}Project Structure
texassolver-mcp/
├── package.json
├── .gitignore
├── .env.example
├── .env
├── README.md
├── src/
│ ├── index.js # Entry point and initialization
│ ├── server.js # MCP server setup
│ ├── tools/ # MCP tool implementations
│ │ ├── run-solver.js
│ │ ├── load-range.js
│ │ ├── configure-tree.js
│ │ └── list-outputs.js
│ ├── solver/ # Solver integration
│ │ ├── command-builder.js
│ │ ├── executor.js
│ │ └── validator.js
│ ├── ranges/ # Range file handling
│ │ ├── loader.js
│ │ ├── parser.js
│ │ └── index.js
│ ├── storage/
│ │ └── manager.js # File management
│ └── utils/
│ └── constants.js # Constants
└── data/ # Server data (generated)
├── commands/ # Generated command files
├── outputs/ # Solver JSON outputs
└── temp/ # Temporary filesHow It Works
Solver Execution Flow
Input Validation: Validates all parameters (ranges, board, bet sizes)
Command Generation: Builds a command file with solver settings
Process Spawning: Spawns the console_solver binary
Command Piping: Pipes the command file to solver stdin
Output Capture: Captures solver stdout/stderr for logging
Completion: Waits for solver to finish (timeout: 10 minutes)
Result Return: Returns paths to output JSON and command file
Range File Format
Ranges are stored as comma-separated hands with optional weights:
AA:1.0,KK:1.0,QQ:0.5,AKs:1.0,AKo:0.75,...AA:1.0- Always include AAAKo:0.75- Include AKo 75% of the timeJJ- Implicit weight of 1.0 if not specified
Error Handling
The server provides detailed error messages for:
Invalid solver path or missing binary
Invalid game parameters (pot, stack, ranges, board)
Invalid bet sizes
Solver process failures
Output file not created
Timeout (10 minutes)
All errors include:
Human-readable message
Error type (VALIDATION_ERROR, EXECUTION_ERROR, OUTPUT_ERROR)
Detailed context (command file, solver log, exit code)
Development
Running Tests
npm testTesting with Sample Data
The TexasSolver includes sample command files in:
TexasSolver-v0.2.0-MacOs/resources/text/commandline_sample_input.txtTroubleshooting
"Solver binary not found"
Verify
TEXAS_SOLVER_PATHin.envpoints to the actual binaryCheck file permissions:
ls -la /path/to/console_solver
"Permission denied"
Make sure the binary is executable:
chmod +x /path/to/console_solver
"Solver timed out"
Complex game trees can take time to solve
Reduce accuracy or max_iteration in solver_config
Increase SOLVER_TIMEOUT_MS in .env if needed
"Output file not created"
Check available disk space
Verify the data/outputs/ directory is writable
Check solver_log in error response for solver-specific errors
License
MIT
Support
For issues or feature requests, please refer to the documentation or check the MCP server logs.
This server cannot be deployed
Maintenance
Related MCP Connectors
- bluffnetOAuthgg.bluffnet
Live Texas Hold'em for AI agents. The tools teach the rules; the bluffing is up to your model.
Exact Texas Hold'em equity and hand analysis, every runout enumerated. Free, no API key.
Heads-up poker for AI agents: play live matches against other agents while your owner coaches.
Solana MCP for wallets, trades, markets, PnL, transfers, onchain data, signable swaps and API tools.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides poker play recommendations by combining real-time Monte Carlo equity calculations with historical player tracking and exploit-based advice. It enables users to import PokerNow hand histories to analyze player tendencies and receive data-driven coaching for various game situations.8 npm1MIT
- AlicenseAqualityCmaintenanceMCP server for the Pokerai API providing solver-grade GTO strategy for 6-max No-Limit Hold'em, exposed as tools for LLM agents like Claude and Cursor.511 npmMIT
- FlicenseNot gradedqualityCmaintenanceExposes endplay double-dummy calculations for chatbots/agents, providing full trick tables for bridge deals.-
- AlicenseAqualityCmaintenanceEnables simulated multi-table No-Limit Texas Hold'em study and decision-support, allowing users to practice against bots and get equity/pot-odds/preflop-chart advice.12MIT