adrkit decision memory — Claude Code MCP server: what it does
Provides coding assistants with deterministic, read-only access to Git-backed ADR records. Prevents agents from re-suggesting already rejected choices.
claude mcp add --env ADRKIT_MCP_CWD=<ADRKIT_MCP_CWD> --env ADRKIT_MCP_DIR=<ADRKIT_MCP_DIR> --transport stdio mcp -- npx -y @adrkit/mcpWhat adrkit decision memory does
The server exposes repository Architecture Decision Records directly to coding assistants via stdio. It parses Markdown files equipped with YAML frontmatter from a directory like docs/adr. Crucially, it surfaces superseded or discarded decisions, stopping models from pitching architectures your team already dismissed.
Operation is entirely local. The toolset contains four read-only actions, including search_decisions with filters for tags, status, and scope. There are no outbound network calls, no background LLM requests, and no write operations back into the repository.
Node 22 or higher is required. Without a readable .git path at the root, the process exits with a non-zero status immediately.
What it helps with
- retrieve historical decisions before refactoring code
- filter active architectural records by tags and scope
- surface rejected technical proposals to prevent redundant work
Example prompts for the agent
- Check our ADR records to see why we rejected PostgreSQL.
- Search decisions tagged with backend to find our database standards.
- Review past decisions governing these authentication files.
How to install adrkit decision memory
Platform CLI
claude mcp add --env ADRKIT_MCP_CWD=<ADRKIT_MCP_CWD> --env ADRKIT_MCP_DIR=<ADRKIT_MCP_DIR> --transport stdio mcp -- npx -y @adrkit/mcpReplace <…> with your own values
Platform CLI
codex mcp add mcp --env ADRKIT_MCP_CWD=<ADRKIT_MCP_CWD> --env ADRKIT_MCP_DIR=<ADRKIT_MCP_DIR> -- npx -y @adrkit/mcpReplace <…> with your own values
Config file
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@adrkit/mcp"
],
"env": {
"ADRKIT_MCP_CWD": "<ADRKIT_MCP_CWD>",
"ADRKIT_MCP_DIR": "<ADRKIT_MCP_DIR>"
}
}
}
}Replace <…> with your own values
Config file
{
"servers": {
"mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@adrkit/mcp"
],
"env": {
"ADRKIT_MCP_CWD": "<ADRKIT_MCP_CWD>",
"ADRKIT_MCP_DIR": "<ADRKIT_MCP_DIR>"
}
}
}
}Replace <…> with your own values
Platform CLI
gemini mcp add -e ADRKIT_MCP_CWD=<ADRKIT_MCP_CWD> -e ADRKIT_MCP_DIR=<ADRKIT_MCP_DIR> mcp npx -y @adrkit/mcpReplace <…> with your own values
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about adrkit decision memory
How do I install adrkit decision memory in Claude Code?
Run claude mcp add mcp -- npx -y @adrkit/mcp. To specify explicit repository and ADR paths, use claude mcp add --env ADRKIT_MCP_CWD=<ADRKIT_MCP_CWD> --env ADRKIT_MCP_DIR=<ADRKIT_MCP_DIR> --transport stdio mcp -- npx -y @adrkit/mcp.
What is the purpose of adrkit decision memory?
It provides assistants with local, read-only ADR context so they respect past decisions and avoid re-proposing rejected ideas.
Does the server need internet connectivity or API keys?
No external network access or credentials are used. It runs locally over stdio and reads files straight from disk.