Brotato Coach MCP server
io.github.BrendanL79/spudcoach·v0.11.0Deterministic Brotato theorycrafter MCP server: facts and math, not guesses.
0 stars58 downloads/wk
Reviews
Write oneNobody has reviewed Brotato Coach yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Brotato Coach tools (20, 1 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
check_dataset_versionReport the loaded dataset's provenance: game_version, generated_at, and schema_version. Use to confirm which Brotato version the facts are from.
compare_merge_pathsCompare two tier-merge paths for the SAME weapon across the ranged-damage range.
compare_weaponsRank several weapons by realized DPS (guaranteed + expected proc damage) at the SAME build stats.
evaluate_item_for_buildDecide whether an item is worth taking for a specific character/build.
evaluate_runwrite actionPost-mortem a whole Brotato run from its `run.json` save in one call.
explain_statReturn verified mechanics for a stat: caps, special behaviors, and whether it's ever dead weight / safe below zero.
get_characterLook up one character's kit: wanted_tags, banned_item_groups, flat_bonuses, gain_modifiers (stat-gain multipliers), and special_effects. Use this to know what a character wants and can't use before evaluating a build.
get_enemyLook up one enemy's record: base stats, per-wave stat slopes, attack profile, and ability tags.
get_filter_optionsList the valid filter values in the loaded dataset so you filter with exact, case-sensitive values.
get_itemLook up one item's full record: effects, tags, archetype, and frozen_stat. Use for 'what does this item do'. Returns a not_found error with `did_you_mean` suggestions if the name doesn't match.
get_weaponLook up one weapon's full record: base stats, scaling stats, and the precomputed DPS line (dps_at_zero_rd, dps_slope_per_rd).
get_weapon_class_setLook up the set bonuses for a weapon CLASS (e.g. 'Blade', 'Gun', 'Elemental'), keyed by how many weapons of that class are equipped.
list_enemiesList enemy summaries, optionally filtered by `appears_in` (e.g. 'normal'), `ability` (e.g. 'charger', 'spawner'), or `attack_kind` ('melee', 'ranged', 'charging'). Call get_filter_options for valid values.
list_itemsList item summaries (id, name, tier), optionally filtered by `tag`, `scaling_stat`, `archetype`, and/or `tier` (1-4). All filters are case-sensitive exact matches — call get_filter_options first to see the valid tags, archetypes, and scaling stats.
list_weaponsList weapon summaries (id, name, tier), optionally filtered by `scaling_stat` (a stat the weapon scales with) and/or `tier` (1-4). Filter values are case-sensitive; call get_filter_options first for the exact valid values.
loadout_set_bonusesread_meReturn the orientation primer for this server: how Brotato's core loop works, the source-verified stat mechanics, and — critically — what this dataset's precomputed fields mean and which assumptions they bake in.
stat_display_valueConvert a raw stat value into the value the game DISPLAYS for a given character, after that character's stat-gain modifiers.
wave_compositionBase-game composition for a Crash Zone wave (1-20): the enemy groups that spawn, their base counts, first-spawn timing, and repeats.
weapon_dpsCompute one weapon's realized DPS for a given build, with a breakdown.
Public scan report
scanner v0.1.9 · 2026-09-26 · same rubric, same numbers if you re-run it
- Code scan36 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 53 days ago12/15
- Maintainer identityregistry namespace matches repository owner6/10
How Brotato Coach compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 85/100
- higher than 70% of 48,255 servers
- Tools
- 20
- the typical server has 7
- Tools that change things
- 5%
- typical: 0%. Fewer write tools means less an agent can break
- Downloads a week
- 58
- more than 48% of 12,191 servers with a package
What its tools let an agent do: 18 read · 2 run or deploy
Install Brotato Coach in Claude Code, Cursor or VS Code
claude mcp add spudcoach -- uvx spudcoach
What the publisher says
From the Brotato Coach repository's README, as published. We do not edit it. Read it on GitHub
Brotato Coach
<!-- mcp-name: io.github.brendanlefebvre/spudcoach -->
A deterministic theorycrafter for Brotato, delivered as an MCP server you can chat with from Claude Code (and other MCP clients).
The design principle: a deterministic core holds the ground truth — weapon/item/character data, DPS formulas, stat mechanics — so the language model looks facts up and computes instead of recalling (and misremembering) them. Every tool returns a finished, verifiable answer or a structured error; there are no baked-in tier lists or opinions, only facts and math.
The dataset (data/brotato.json) is not committed — it is derived from copyrighted game files, so you build it yourself from a local Brotato install (see Building the dataset). A full build from Brotato 1.1.15.4 contains 202 weapons, 197 items, 50 characters, and 15 weapon-class sets.
Requirements
- Python 3.11+
- uv for environment/dependency management
Install dependencies:
uv syncQuick start
Build the dataset (needs a local extraction — see Building the dataset), then start the server:
uv run python build_dataset.py # writes data/brotato.json
uv run python -m brotato_coach.server # starts the MCP server over stdioThe server refuses to start without data/brotato.json and tells you to build it first.
Run the tests (the dataset-dependent integration test is skipped when no dataset is built):
uv run pytest # 89 tests (88 passed + 1 skipped without a built dataset)Run
uvx spudcoach --data /path/to/brotato.jsonThe dataset is never distributed — build your own from your Brotato install: uv run python builddataset.py (see docs/extraction-setup.md). Game version auto-detects from the decompiled recovered/singletons/progressdata.gd, and generatedat defaults to the current UTC time — pass --game-version/--generated-at explicitly to override either. SPUDCOACHDATA works as an env-var alternative to --data.
Use as a Claude Code plugin
The MCP server is described by plugin/.mcp.json:
{
"mcpServers": {
"spudcoach": {
"command": "uv",
"args": ["run", "python", "-m", "brotato_coach.server"],
"cwd": "${CLAUDE_PLUGIN_ROOT}"
}
}
}The server reads the (locally built) data/brotato.json relative to its working directory, so it must run with the repository root as its cwd (the manifest handles this via ${CLAUDEPLUGINROOT} when bundled as a plugin), and you must build the dataset first.
To register it directly in Claude Code without packaging, add the server pointed at your checkout, e.g.:
claude mcp add spudcoach -- uv run --directory /path/to/spud-coach python -m brotato_coach.serverOnce connected, just ask in natural language — the model routes your question to the tools below:
- "Does Handcuffs fit my Ranger run? I'm at 7 ranged damage, 65 HP."
- "Minigun T4 vs Revolver T4 at 20 ranged damage — which hits harder?"
- "Is attack speed ever dead weight? Can I let knockback go negative on a gun build?"
- "What does the Ranger's ranged-damage bonus do to a raw stat of 6?"
- "Here's my run.json — how's this build doing?" (post-mortem a whole save at once)
Use with Claude Desktop
Claude Desktop can launch the server with uvx in two forms: fetch straight from this repo (auto-updates on restart, but needs git reachable — see the Windows note below), or point at a local checkout (nothing fetched at runtime; the most reliable form on Windows). Either way you supply your own locally built brotato.json — the dataset is never distributed.
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Brotato Coach: common questions
- Is Brotato Coach MCP server safe?
- Yes, by our scan: it is graded A (85/100). Read the Brotato Coach safety report
- How do I install Brotato Coach?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Brotato Coach need an API key?
- No secret keys are declared. It reads 1 setting from the environment.
- Is Brotato Coach maintained?
- The last commit was 92 days ago (2026-08-04). The latest release is v0.11.0.
- How does Brotato Coach compare with other MCP servers?
- safety score 85/100 (higher than 70% of 48,255 servers); tools 20 (the typical server has 7); tools that change things 5% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.