# Nauro

Stores approved project choices and discarded alternatives in plain Markdown. Keeps AI agents aligned with earlier technical reasoning.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 11
- Author: Nauro-AI
- License: Apache-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/Nauro-AI/nauro
- Updated: 2026-10-23
- HTML: https://affpapa.org/en/nevibecode/mcp/nauro

## What it does

Nauro maintains a log of human-approved architectural decisions, noting both the reasoning and discarded alternatives. When agents begin new sessions, the server surfaces these historical arguments. That keeps assistants from resurfacing proposals the team already rejected. Everything stays on your local disk as plain Markdown files.

Context retrieval is advisory. The model cannot alter the record autonomously: every new or modified choice demands explicit confirmation from the developer. During adoption, an existing `AGENTS.md` file stays intact, and its `# Manual` section remains untouched across synchronization runs.

Setup requires `uv` or Python 3.10+. If you configure global MCP wiring in Cursor, you must provide a permanent absolute path to the `nauro` executable, or the connection fails.

## Requirements
- Needs: Python and uv (commands run via uvx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add nauro -- uvx nauro
```
uvx runs the command named after the package; if the README names another one, use uvx --from nauro <command>

### Codex

**Platform CLI**
```bash
codex mcp add nauro -- uvx nauro
```
uvx runs the command named after the package; if the README names another one, use uvx --from nauro <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "nauro": {
            "command": "uvx",
            "args": [
                "nauro"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from nauro <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "nauro": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "nauro"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from nauro <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add nauro uvx nauro
```
uvx runs the command named after the package; if the README names another one, use uvx --from nauro <command>

## When to use it
- record software architecture choices alongside rejected alternatives
- keep historical reasoning intact across separate agent sessions
- prevent assistants from suggesting previously abandoned technical paths
- safeguard manual sections inside `AGENTS.md` from being overwritten

## Example prompts
- /nauro-adopt
- Check prior decisions to see why we rejected passive expense tracking.
- Log our move to PostgreSQL and document the rejected SQLite alternative.

## Similar
- [agents-md](https://affpapa.org/en/nevibecode/skills/agents-md.md) — skill · 7100 installs
- [bmad-project-context](https://affpapa.org/en/nevibecode/skills/bmad-project-context.md) — skill · 11500 installs
- [sync](https://affpapa.org/en/nevibecode/skills/sync.md) — skill · 4300 installs
- [audit](https://affpapa.org/en/nevibecode/skills/jsmastery-pro-audit.md) — skill · 4300 installs
- [decision-doc-sync](https://affpapa.org/en/nevibecode/skills/decision-doc-sync.md) — skill · 3000 installs
- [maintaining-agent-context](https://affpapa.org/en/nevibecode/skills/maintaining-agent-context.md) — skill · 1900 installs

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
