Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
Predict query cost, explain the plan, and rewrite it before you run it — 12 DB engines.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
ANUMANA_DSN, ANUMANA_TARGETS, ANUMANA_POLICIESLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"anumana": {
"command": "uvx",
"args": [
"anumana-mcp"
],
"env": {
"ANUMANA_DSN": "your-value",
"ANUMANA_TARGETS": "your-value",
"ANUMANA_POLICIES": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add anumana --env ANUMANA_DSN=your-value --env ANUMANA_TARGETS=your-value --env ANUMANA_POLICIES=your-value -- uvx anumana-mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"anumana": {
"command": "uvx",
"args": [
"anumana-mcp"
],
"env": {
"ANUMANA_DSN": "your-value",
"ANUMANA_TARGETS": "your-value",
"ANUMANA_POLICIES": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"anumana": {
"type": "stdio",
"command": "uvx",
"args": [
"anumana-mcp"
],
"env": {
"ANUMANA_DSN": "your-value",
"ANUMANA_TARGETS": "your-value",
"ANUMANA_POLICIES": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
ANUMANA_POLICIES envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 8 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub sinhaKAN-ra, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: ANUMANA_DSN, ANUMANA_TARGETS
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.2.1) llegó al registro hace 34 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv) en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, MIDAS Gen NX / Civil NX
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Read and carefully change the model open in MIDAS Gen NX or Civil NX on this PC.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Know what your query will cost — before you run it. *Inference-grade foresight for every query your AI writes.*
Anumana is an MCP server that catches the costly query your AI coding agent just wrote — *before* it runs or reaches a PR. It rides inside Claude, Cursor, Windsurf, Codex, Kiro, or any MCP-compatible agent, reads your real schema via EXPLAIN (never EXPLAIN ANALYZE), and tells you — in plain English — how the query behaves and whether it'll hurt.
Its scope is the queries AI agents actually generate: text-to-SQL today, and RAG / vector search (pgvector) alongside it — because an agent writing a similarity search has no idea it just triggered a brute-force scan over every embedding. Anumana is the feedback loop the agent is missing.
It is not another NL→SQL tool and not a DB-health dashboard. It does one job: stop AI-written database code from silently rotting production.
| Tool | What it answers |
|---|---|
| `preflight_query` | *"Will this SQL query be costly?"* — risk tier (cheap/moderate/expensive/dangerous), rows scanned vs returned, scan strategy, and overhead flags. Without running it. |
| `preflight_vector_search` | *"Will this RAG similarity search be costly?"* — catches the vector traps a plain SQL check misses: brute-force scan with no HNSW/IVFFlat index, top_k too large, unbounded search, metadata-filter/ANN recall loss. |
| `rewrite_query` | *"Make it cheaper."* — a verified equivalent rewrite with before/after planner cost, plus index suggestions gated on selectivity (won't tell you to index a column when the filter matches most of the table). engine="pgvector" suggests an HNSW index. |
| `explain_query_working` | *"How does this run?"* — two layers: the logical gather order (FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY → LIMIT) and the actual physical plan for your schema, step by step. |
| `preflight_schema_only` | *"I haven't given you DB creds yet."* — static analysis against pasted CREATE TABLE DDL, no connection. Offline, zero-trust front door. |
Engines (12, across 7 paradigms): Postgres and SQLite are live-tested;
MySQL, pgvector, MongoDB, DynamoDB, FalkorDB, Cassandra, Redshift, BigQuery,
Snowflake and ClickHouse ship as offline-verified, untested adapters that
are promoted to live one at a time. Full matrix + cost signals in
SUPPORTED_ENGINES.md. The adapter interface is in
DESIGN.md.
Postgres planner cost is unitless — not milliseconds (docs). Anumana never fakes a ~3.2s number. It reports rows scanned, scan strategy, a risk tier, overhead flags, and the cost-delta of a rewrite — all defensible, nothing invented. Every estimate carries an accuracy tier (UPPER_BOUND live, HEURISTIC schema-only).
pip install anumana-mcp # once published to PyPI
pip install -e .
Then point your agent at it. The user installs it; the agent discovers the tools automatically on connect via the MCP tools/list handshake — there is no store to publish into.
mcpServers config block{
"mcpServers": { "anumana": { "command": "uvx", "args": ["anumana-mcp"], "env": { "ANUMANA_DSN": "postgres://readonly@localhost:5432/mydb" } } } }
Use a **read-only** Postgres role. Anumana only ever `EXPLAIN`s, but read-only is
defence in depth. Omit ANUMANA_DSN to run in schema-only mode (DDL in, no DB).
python3 src/demo.py # runs the engine on a canned plan, zero deps
# a throwaway table, then:
ANUMANA_DSN=postgres://localhost/mydb anumana-mcp
See `src/live_test.py` for a `psql`-backed harness that proves the real
cost-delta and the selectivity gate on live data.
No run_query (we never execute your SQL), no NL→SQL (the agent already does that), no DB-health reports, no dollar-billing. Staying narrow is the strategy.
MIT — see LICENSE.
Contributions welcome — see CONTRIBUTING.md and the Code of Conduct. Adding a database engine is the highest- leverage contribution; the adapter contract is small (SUPPORTED_ENGINES.md).