Cartographer
io.github.BeppeTemp/cartographer · 38 stars · Go · Apache-2.0
MCP server Governance MCP server for agent-maintained knowledge bases (OKF): git-backed writes, search, lint.
Install
The repo has no one-line install. Follow its README.
Published as
- Docker
ghcr.io/beppetemp/cartographer:v0.23.0stdio
From the server's entry in the official MCP Registry.
Files
One home for everything your AI agents know — and everything that makes them work.
Memory they build, skills they share, rules they cannot break: one binary, every agent client, a whole team.
The Atlas, served by the same binary, on a generated demo KB. Pre-1.0: breaking changes bump the minor version and are called out in the changelog.
Why
AI agents start every session from zero. The usual fixes each solve a third of the problem:
- RAG retrieves, but nothing accumulates — the agent never gets to write down what it learned.
- A folder of Markdown the agent edits freely ends in broken links, lost history and silent corruption.
- Skills, subagents and instructions get hand-copied into
.claude/,.codex/,.kiro/… and drift apart on every machine.
Cartographer puts all three in one place: your agents read and grow a knowledge base only through MCP tools, behind a server that enforces the rules, and the same knowledge base carries how your agents are set up.
What you get
-
🧠 Memory that compounds
A wiki the agent builds over time (Karpathy's LLM Wiki pattern): plain Markdown + YAML, one git repo per KB, readable in Obsidian or any editor. No lock-in. -
🛡️ Guardrails, not good intentions
Schema validation, link checks, lint, immutability gates, optimistic concurrency, one commit per write, a signed audit log. The agent cannot leave the KB in a broken state. -
🧩 One KB configures every agent
Skills, subagents, hooks and standing instructions live in the KB and reach each client in its native format (below). Edit once, every machine converges. -
👥 Built for teams
Several KBs behind one server — a native user service, a container or a Kubernetes workload — per-KB and per-map access with bearer-token roles, git as the sync layer, conflicts turned into a guided workflow, Ed25519-signed artifacts. -
🗺️ See it all in the Atlas
A read-only web UI in the same binary: a living 3D graph, search, what the agents changed, what the KB ships to them, and what needs fixing. No extra service, no CDN. -
🔑 Secrets, done properly
SOPS-encrypted values referenced by concepts and resolved on demand; plaintext is never stored.
Quick start
You need git and an empty git repository you own (GitHub, Gitea, any host) to hold your first KB.
brew install beppetemp/tap/cartographer # macOS — Windows, Linux and source: see Install cartographer setup # server, first KB and your agents, in one guided step
setup shows its plan before touching anything, then installs the local service, creates the KB,
connects every agent client it detects and verifies the result. Restart already-open agent
sessions and ask your agent what it knows. Step by step:
docs/getting-started.md.
Prefer to let your agent install it? Paste this:
Set up Cartographer on this machine by following
https://raw.githubusercontent.com/BeppeTemp/cartographer/main/docs/agent-install.md
My first knowledge base is at: `<git remote URL>`
If you are an agent asked to install Cartographer: follow that runbook, not the Quick start.
One KB, every agent
cartographer connect detects your installed clients and writes, in each one's own format:
| Claude Code | Codex | OpenCode | Kiro | Antigravity | Crush | Copilot CLI | Hermes | |
|---|---|---|---|---|---|---|---|---|
| MCP endpoint | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | — |
| Instructions | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | — |
| Skills | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | inbox |
| Subagents | ✓ | ✓ | ✓ | ✓ | ✓ | — | ✓ | — |
| Hooks | ✓ | ✓ | ✓ | ✓ | ✓ | — | ✓ | — |
Subagents and hooks are translated, not copied. Every — is a gap declared for a stated reason,
never a silent omission. Cartographer re-syncs at session start (or on a timer where a client has
no hook), restores files edited or deleted by hand, and only ever touches what it created. Exact
paths and reasons: docs/sync.md.
Install
# macOS (Homebrew) brew install beppetemp/tap/cartographer # Windows (PowerShell; no administrator rights) irm https://raw.githubusercontent.com/BeppeTemp/cartographer/main/install.ps1 | iex # Linux / macOS without Homebrew curl -fsSL https://raw.githubusercontent.com/BeppeTemp/cartographer/main/install.sh | sh # From source (Go 1.26+) go install github.com/BeppeTemp/cartographer/cmd/cartographer@latest
What lands where, upgrades and removal:
docs/getting-started.md. Server configuration,
environment variables and deployment topologies: docs/deployment.md.
Documentation
Browsable at beppetemp.github.io/cartographer; the
map is docs/index.md.
- Getting started — from zero to a working wiki
- Overview — vision, principles, architecture
- MCP tools — the full tool API
- Deployment — topologies, configuration, backup
- Sync — how artifacts reach each agent client
Contributing
Issues and PRs are welcome: CONTRIBUTING.md covers building, testing and the
PR flow. Cartographer is a personal project maintained on a best-effort basis. Security reports:
SECURITY.md.
License
Apache License 2.0 — see LICENSE.
Facts
- Kind
- MCP server
- Group
- Uncategorized
- Stars
- 38
- License
- Apache-2.0
- Language
- Go
- Last push
- 2026-10-11
- Forks
- 6
- MCP Registry
- io.github.BeppeTemp/cartographer
- Homepage
- beppetemp.github.io/cartographer
- Topics
- go, knowledge-base, llm-agents, mcp
- 1REAio.github.morluto/reaReverse engineer anything from your terminal or agent with one CLI and MCP server.125.3k
- 2com.browser-use/browser-usecom.browser-use/browser-useControl a real Chrome browser to complete any task: fill forms, extract data, book flights.117.7k
- 3World Monitorapp.worldmonitor/mcpLive markets, conflicts, country risk, chokepoints, energy, and China decision signals. 93 tools.88.3k
- 4Scrapling MCP Serverd4vinci/scrapling🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scraplingdev86.9k
- 5Everythingmodelcontextprotocol/serversThis MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities.85.8k
- 6Fetchmodelcontextprotocol/serversA Model Context Protocol server that provides web content fetching capabilities. This server enables LLMs to retrieve and process content from web pages, converting HTML to markdown for easier consumption.85.8k
