Kage vs Moxie Docs MCP — MCP Server Comparison | AllMCPs
Side-by-Side Model Context Protocol Comparison
Kage vs Moxie Docs MCP
In-depth architectural comparison of the Kage and Moxie Docs MCP MCP servers. Compare execution transports, security boundaries, tool capabilities, quality scores, and ready-to-paste client installation snippets for Claude, Cursor, Windsurf, and VS Code.
At a Glance & Executive Verdict
Kage
Knowledge & Memory · Local stdio
Quality: 67/100 (Great) | Auth: No auth required
Moxie Docs MCP
Knowledge & Memory · Local stdio
Quality: 80/100 (Excellent) | Auth: API Key required
Verdict Summary: Choose Kage if you need specialized Knowledge & Memory tools running via a local process. Choose Moxie Docs MCP if your workspace requires Knowledge & Memory integration with local subprocess execution. Both servers can be configured concurrently in your client's mcpServers manifest.
Which MCP Server Should You Choose?
Choose Kage when:
You need dedicated capabilities in the Knowledge & Memory domain.
You prefer local stdio subprocess transport architecture.
Your security boundary fits: No auth required (Free / Open Source).
Verified, git-native memory for coding agents. Memory is plain JSON packets committed in your repo, each checked against the code it cites — hallucinated citations rejected at write, stale or changed memory withheld at recall, plus diff-time stale-catch. Local-only (BM25 + vectors), no account, no API key. npx -y @kage-core/kage-graph-mcp install
MCP & Agent Skills for Automated Documentation, and codebase conventions + context
Tools & Capabilities Breakdown
Kage Tools (11)
kage_context
Primary kage entry point. Validates memory health, recalls relevant packets, and queries both the code graph and knowledge graph — all in one call. Call this at the start of every task; it answers caller/usage questions from the code graph too, so you rarely need a separate graph tool.
kage_risk
Assess modification risk for files using Kage's code graph plus local git history: dependents, impact surface, churn, ownership, co-change partners, and test gaps. Use before editing hotspot or shared files.
kage_dependency_path
Find how two files are connected in Kage's source-derived code graph. Reports direct dependency direction, reverse impact direction, or undirected graph connection.
kage_decisions
Summarize the repo's 'why' memory at a glance: the decisions, gotchas, runbooks, conventions, and code explanations Kage has captured, plus which high-traffic code paths still have no decision memory. Use it to brief yourself on a repo before changing it, or to audit where institutional knowledge is thin or going stale. Read-only: returns grouped entries with titles, types, cited file paths, and call-outs for weak, stale, or undocumented hot paths. Does not modify any memory.
Ready-to-Paste Client Configurations
Paste either (or both) of these JSON server blocks into your client config file (e.g. claude_desktop_config.json or ~/.cursor/mcp.json).
Kage is categorized under Knowledge & Memory and uses a local stdio subprocess. In contrast, Moxie Docs MCP belongs to Knowledge & Memory using local stdio subprocess. Select Kage when you need capabilities focused on knowledge & memory and Moxie Docs MCP when you require tools for knowledge & memory.
Search this repo's OWN committed documentation (README, docs/**, *.md, common doc dirs — including any framework/API docs checked into the repo). BM25 over heading-anchored chunks from .agent_memory/indexes/docs-index.json. Returns ranked doc hits with doc_path, heading, line, and snippet. This indexes only files on disk in the project, never the internet.
kage_refresh
Rebuild repo indexes, code graph, memory graph, metrics, and stale-memory metadata. Agents should run this after meaningful file/content changes before PR checks; push-only or same-tree commits do not need another refresh. On non-default git branches metadata-only packet rewrites are skipped (quiet refresh) to avoid merge conflicts; pass force to persist them anyway. On a repo with many stale packets or validation warnings, stale_packets and validation.warnings are capped to the 10 most actionable entries by default (ranked by urgency), with the true total and a truncation note; pass limit or verbose for more.
kage_pr_check
Check whether repo memory, code graph, memory graph, and stale-memory state are ready for merge. Leads with a human summary of team memories invalidated by the current change — relay it to the developer. On a repo with many stale packets, validation findings, or reconciliation items, those lists are each capped to the 10 most actionable entries by default (stale packets ranked by urgency), with true totals and truncation notes; pass limit or verbose for more.
kage_supersede
Replace one repo-local memory packet with a newer one that corrects or obsoletes it. Marks the old packet superseded, links it to the replacement, and writes bidirectional lineage edges so the history stays traceable. Use this instead of deleting when new knowledge updates an old fact, or to resolve a contradiction surfaced by kage_conflicts. Mutates both packets on disk: the superseded packet is withheld from recall but kept for lineage. Returns ids, paths, and titles for confirmation, not the full packet bodies.
kage_skills
Codify durable, verified repo memory (runbooks, workflows, actionable decisions) into git-native SKILL.md files under .claude/skills/ that every teammate's agent auto-loads. Only grounded, non-stale packets become skills. Pass dry_run to preview without writing. dir overrides the output directory.
kage_learn
Capture a durable, reusable learning from the current session as a verified repo-local memory packet (committed under .agent_memory/, shared with the team via git). Use it the moment you discover something a future session should know: a decision and its rationale, a bug's root cause and fix, a convention, or a setup step. Prefer it over diff-based proposals when you already know what was learned. The write is rejected if every cited path is missing from the repo (set allow_missing_paths for a file you are about to create), and secrets/PII are scanned out before writing. Returns the new packet id plus any contradiction warnings against existing memory.
kage_feedback
Record how useful a recalled repo-local memory packet was, which tunes Kage's trust and future recall. 'helpful' reinforces the packet, 'wrong' flags it as disputed, and 'stale' marks it for re-verification and withholds it from recall until refreshed. Use it right after a recalled packet helped you, misled you, or no longer matched the code. Mutates the packet's quality signals on disk.
Moxie Docs MCP Tools (12)
moxie.get_ai_context
Compact pre-edit briefing: repo status, verified commands, top conventions, open gaps, team notes. Read this first.
moxie.get_doc_impact
Given the paths you're about to change (and any you're deleting), returns the conventions, gaps, and existing docs whose evidence overlaps them - and flags net-new/undocumented surfaces.
moxie.get_api_context
Given paths you're about to touch, returns structured context for any API endpoints they map to: method, path, schema, and known consumers/features.
moxie.review_change
Self-review a change before opening the PR; returns a severity-ranked verdict (clean / warnings / must-fix) covering convention breaches, stale docs, undocumented surface, and broken references.
moxie.get_conventions
Discovered coding conventions, grouped by category, with confidence scores, agent guidance, and source-file citations.
moxie.search_docs
Semantic + keyword search over generated docs, conventions, gaps, and AI context.
moxie.get_doc_gaps
Unresolved documentation gaps with severity and the paths they concern.
moxie.get_documentation_opportunities
Recommended doc work: missing docs, drift repairs, and PR templates.
moxie.get_documentation_patterns
How the repository organizes and maintains its docs (where new docs belong).
moxie.list_docs
Paginated, section-grouped table of contents of every generated doc.
moxie.propose_doc_update
Add or update a doc as part of your current change; returns the target path + Markdown to write into your branch.
moxie.propose_doc_removal
Remove a Moxie-tracked doc your change makes obsolete; returns the path to delete in your branch.