Skip to main content
ClaudeWave

Real, calibrated Dota 2 / Deadlock win-rate predictions for your LLM — read-only MCP server over batru.gg's production model

MCP ServersRegistry oficial0 estrellas0 forksPythonMITActualizado 6d ago
Install in Claude Code / Claude Desktop
Method: UVX (Python) · batru-mcp
Claude Code CLI
claude mcp add batru-mcp -- uvx batru-mcp
claude_desktop_config.json (Claude Desktop)
{
  "mcpServers": {
    "batru-mcp": {
      "command": "uvx",
      "args": ["batru-mcp"]
    }
  }
}
1. Run the command above in your terminal (Claude Code), or paste the JSON config into claude_desktop_config.json (Claude Desktop).
2. Replace any <placeholder> values with your API keys or paths.
3. Restart Claude. The MCP server and its tools appear automatically.
Casos de uso

Resumen de MCP Servers

# batru-mcp

<!-- mcp-name: gg.batru/batru-mcp -->

A minimal, read-only **MCP server** over [batru.gg](https://batru.gg)'s live API, so your LLM can answer Dota 2 / Deadlock draft, counter and win-rate questions with **real, calibrated model predictions** instead of guessing from memory.

It is a thin wrapper around batru.gg's public endpoints — no model runs locally; every number comes from the same production model the website serves.

## Why calibrated matters

batru.gg's model is trained on ~20M real matches and **calibrated**: a reported 60% win rate corresponds to an empirically observed ~60% win rate. We deliberately do not headline a raw "accuracy" number — accuracy alone is misleading for win prediction. What you get from these tools are probabilities you can trust at face value. The tool descriptions instruct the host LLM to report these numbers verbatim and never invent matchup data.

## Tools

| Tool | What it does |
| --- | --- |
| `lookup_hero(query, game="dota2")` | Normalise a name/alias/shortName to `{id, displayName, shortName}`. `game` ∈ {`dota2`, `deadlock`}. |
| `predict_dota_winrate(my_heroes, enemy_heroes, my_side="radiant")` | Calibrated win-rate % for both teams (partial drafts OK; empty → 50/50). |
| `recommend_dota_pick(my_heroes, enemy_heroes, my_side="radiant")` | Top-3 heroes to pick next, each with its calibrated win rate. |
| `get_dota_counters(hero, limit=12)` | Real matchup table: who this hero beats / loses to, with win rate % and sample size. |
| `predict_deadlock_draft(team0_heroes, team1_heroes)` | Calibrated win-rate % for a Deadlock 6v6 (6 heroes per team). |

Hero names are accepted in any form (e.g. `am`, `anti mage`, `Anti-Mage`) and normalised internally — the backend silently drops names it doesn't recognise, so normalising first keeps predictions honest.

## Install

Requires [uv](https://docs.astral.sh/uv/) (or any way to run a Python 3.12+ package from PyPI):

```bash
uvx batru-mcp           # fetches from PyPI and starts the stdio MCP server
```

Configuration is via the `BATRU_API_BASE` environment variable (default `https://batru.gg`) — you normally don't need to set anything.

## Claude Desktop config

Add to `claude_desktop_config.json` (macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "batru": {
      "command": "uvx",
      "args": ["batru-mcp"]
    }
  }
}
```

Restart Claude Desktop; the `batru` tools appear in the tool picker. Claude Code:
`claude mcp add batru -- uvx batru-mcp`.

## Development

```bash
git clone https://github.com/batrugg/batru-mcp && cd batru-mcp
uv sync
uv run batru-mcp        # run the server from the checkout (blocks, waiting on stdin)
```

For a Claude Desktop pointing at the checkout, use
`"command": "uv", "args": ["run", "--directory", "/absolute/path/to/batru-mcp", "batru-mcp"]`.

## Tests

```bash
uv run pytest            # offline: hero normalisation + draft assembly
uv run pytest -m live    # also hits the real batru.gg API
```

---

Prefer programmatic access from Python instead of MCP? `pip install batru` — the
official [batru SDK](https://pypi.org/project/batru/).

Lo que la gente pregunta sobre batru-mcp

¿Qué es batrugg/batru-mcp?

+

batrugg/batru-mcp es mcp servers para el ecosistema de Claude AI. Real, calibrated Dota 2 / Deadlock win-rate predictions for your LLM — read-only MCP server over batru.gg's production model Tiene 0 estrellas en GitHub y se actualizó por última vez 6d ago.

¿Cómo se instala batru-mcp?

+

Puedes instalar batru-mcp clonando el repositorio (https://github.com/batrugg/batru-mcp) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.

¿Es seguro usar batrugg/batru-mcp?

+

batrugg/batru-mcp aún no ha sido auditado por nuestro agente de seguridad. Revisa el repositorio original en GitHub antes de usarlo en producción.

¿Quién mantiene batrugg/batru-mcp?

+

batrugg/batru-mcp es mantenido por batrugg. La última actividad registrada en GitHub es de 6d ago, con 0 issues abiertos.

¿Hay alternativas a batru-mcp?

+

Sí. En ClaudeWave puedes explorar mcp servers similares en /categories/mcp, ordenados por popularidad o actividad reciente.

Despliega batru-mcp en tu cloud

Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.

¿Mantienes este repo? Añade un badge a tu README

Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.

Featured on ClaudeWave: batrugg/batru-mcp
[![Featured on ClaudeWave](https://claudewave.com/api/badge/batrugg-batru-mcp)](https://claudewave.com/repo/batrugg-batru-mcp)
<a href="https://claudewave.com/repo/batrugg-batru-mcp"><img src="https://claudewave.com/api/badge/batrugg-batru-mcp" alt="Featured on ClaudeWave: batrugg/batru-mcp" width="320" height="64" /></a>

Más MCP Servers

Alternativas a batru-mcp