Skip to content

Repository files navigation

Munnin — an agent identity server

Munnin gives an AI agent a persistent self — identity, reasoning patterns, emotional moments, episodic history, knowledge — and serves the procedures for tending that memory beside the data, over MCP. It is the memory server of the agent-memory framework: an agent awakens from it as who it is, not from a pile of recalled facts, and writes back through the same discipline.

Python · FastMCP · FastAPI · SQLite. Apache-2.0. Runs on a laptop in five minutes with no identity provider.

Five-minute run

Needs Docker and git.

git clone --recurse-submodules https://github.com/alvseek/agent-memory-server
cd agent-memory-server
docker compose up -d --build
curl http://127.0.0.1:8200/health      # {"status":"ok","service":"munnin","version":"0.1.0"}

Connect a client. Claude Code:

claude mcp add --transport http munnin http://127.0.0.1:8200/mcp

or in a project's .mcp.json:

{ "mcpServers": { "munnin": { "type": "http", "url": "http://127.0.0.1:8200/mcp" } } }

Then, in a session: ping answers pong, list_procedures returns the 13 memory procedures, and read_procedure("create-agent") walks you through making the first agent. No sign-in happens: this is local mode — one tenant, reachable from this machine only, and the server refuses to start any other way (how that guard works).

No Docker? uv sync && MUNNIN_AUTH=off uv run python -m munnin does the same on 127.0.0.1:8200.

Hosting it

The default is token mode: every /mcp and /api call needs a bearer token from an OIDC issuer that binds tokens to this server (aud = https://<your-host>/mcp), and each person who signs in gets their own tenant. Set MUNNIN_PUBLIC_BASE_URL and MUNNIN_LOGTO_ENDPOINT, put it behind TLS, and paste https://<your-host>/mcp into claude.ai's connectors or claude mcp add. The issuer requirements, the one-identifier rule, and the prebuilt image are in How Is It Deployed.

Develop

uv sync
uv run pytest        # 446 tests
uv run ruff check

Full architecture, the tool and endpoint surface, the data model, and known debts: docs/README.md.

License

Apache License 2.0 — Copyright 2026 Alviandi Widiasto. The control-files submodule (agent-memory-system) is licensed the same way, so a clone with submodules is one licence throughout.

About

Munnin — an agent identity server: persistent memory for AI agents (identity, reasoning, episodic, knowledge) plus the procedures for tending it, served over MCP. Apache-2.0, runs locally in 5 minutes.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages