navi-mcp
Safe, deterministic access to navi for any MCP-capable AI.
An MCP server that lets AI drive the navi CLI — 20 tools, live schema resources, and 17 companion skills that force every answer to come from real data, not plausible guesses. Writes are double-gated: server flag plus per-call confirm. Email and remote-exec each need their own extra environment gate on top. Docker image available in navi-mcp-suite/.
Why
Answers, not estimates.
WITHOUT navi-mcp
The model pages through raw API JSON, estimates from samples, or invents a number that sounds right.
WITH navi-mcp
The model reads the real schema, runs a real query against your local navi.db, and reports the real count — or says it can't.
"Plausibility becomes verifiability."
Five Safety Rules
■ Read first: schemas, counts, and sample rows before any answer or write.
■ Real schemas: live column definitions from navi.db kill invented field names.
■ Gated writes: every tag, ACR change, or scan needs the server armed (NAVI_MCP_ALLOW_WRITES=1) AND per-call confirm=True, narrated to you first. Two keys, two locks. The heaviest tools — mail and remote execution — add a second environment gate on top.
■ Freshness checks: stale data gets flagged — "as of the last sync, 41 days ago" appears automatically.
■ Skills orchestrate: a router plus 15 domain skills plus the Hounds playbook skill — 17 in total, including the double-gated mail and remote-execution harnesses — tell the model what to look up, in what order, every time.
What's Included
20 tools + resources.
Reads — run freely
- ■explore data/info
- ■raw SQL queries
- ■exports
- ■API GETs
- ■scan views
Writes — gated
- ■tagging
- ■ACR calibration
- ■asset adds
- ■scan create / start / stop
- ■WAS
- ■delete
- ■key rotation
- ■navi_action_mail — email delivery (double-gated: NAVI_EMAIL=1 + per-call confirm)
- ■navi_action_push — remote command execution (double-gated: NAVI_REMOTE_CODE_EXECUTION=1 + per-call confirm)
Resources
- ■live table schemas
- ■workdir status
- ■all 17 skills served in-band
The Heaviest Locks
Two gates, then a human.
navi_action_push (remote command execution) — requires NAVI_REMOTE_CODE_EXECUTION=1 on top of the write gate, plus per-call confirmation narrated to you first. Two environment gates, then a human.
navi_action_mail (email delivery) — requires NAVI_EMAIL=1 on top of the write gate, plus per-call confirmation narrated to you first. Two environment gates, then a human.
Still CLI-only: navi config update full — the foundational sync. Hours, hundreds of GB. You own the data state.
Still CLI-only: API keys and automation rules — where AI increases risk without proportionate benefit.
The double-gated tools are in the MCP — but they require two environment variables set by a human before Claude can even propose using them, then a second human confirmation per call.
Install
pip install navi-proThen run navi config keys and navi config update full at your terminal.
python tools/navi_mcp_config.py --writeClone github.com/packetchaos/navi-mcp and run the config tool — it auto-detects paths and installs the Claude Desktop config.
NAVI_MCP_ALLOW_WRITES=1Restart Claude Desktop. Writes stay off until you set this env variable.
pip install navi-mcpnavi-mcp is its own package — installing navi-pro alone gives you the CLI, not the MCP layer. Version 1.0.0 shipped 23 August 2026.