In-depth architectural comparison of the Obsidian Codex MCP 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
Obsidian Codex MCP
Knowledge & Memory · Local stdio
Quality: 44/100 (Fair) | Auth: No auth required
Moxie Docs MCP
Knowledge & Memory · Local stdio
Quality: 82/100 (Excellent) | Auth: API Key required
Verdict Summary: Choose Obsidian Codex MCP 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 Obsidian Codex MCP 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).
You have access to required keys: VAULT_PATH, READ_ONLY, BACKUP_ON_WRITE.
Primary tools included: Direct filesystem access to markdown notes, Read-only mode to prevent writes, Backup-on-write before updates and deletes.
Local-first Obsidian vault MCP server for Codex, Claude Desktop, and other MCP clients. Works directly with markdown files, no Obsidian plugin, API key, cloud service, or running Obsidian app required. Includes read-only mode, backup-on-write, path isolation, and setup examples.
MCP & Agent Skills for Automated Documentation, and codebase conventions + context
Tools & Capabilities Breakdown
Obsidian Codex MCP Tools (6)
Direct filesystem access to markdown notes
Read-only mode to prevent writes
Backup-on-write before updates and deletes
Path traversal protection and vault isolation
Full support for Obsidian Bases (.base) with schema validation
Works with any MCP client via JSON or TOML config
Moxie Docs MCP Tools (12)
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).
Obsidian Codex MCP 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 Obsidian Codex MCP when you need capabilities focused on knowledge & memory and Moxie Docs MCP when you require tools for knowledge & memory.
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.