A Python MCP server giving an LLM client read/write access to local Obsidian vaults via direct filesystem access.
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"py-obsidian-mcp","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# obsidian-mcp (Python) A Python MCP (Model Context Protocol) server giving an LLM client (e.g. Claude Desktop) read/write access to local Obsidian vaults, via direct filesystem access — no Obsidian Local REST API plugin, no HTTP, no auth token required. This is a Python port of [obsidian-mcp](https://github.com/StevenStavrakis/obsidian-mcp) (TypeScript), functionally equivalent with a few deliberate fixes and simplifications — see `Plans/review-the-typescript-obsidian-mcp-parsed-shamir.md` and `ISA.md` for the full rationale. > **Warning**: This server has read/write access to your vault. Back up your notes (e.g. via git) before use. ## Requirements - Python 3.11+ - [`uv`](https://docs.astral.sh/uv/) - An Obsidian vault (a directory that has been opened by Obsidian at least once, i.e. contains a `.obsidian/app.json`) - macOS or Linux (Windows is not supported — see ISA "Out of Scope") ## Install & run The PyPI distribution is named `py-obsidian-mcp` (the `obsidian-mcp` name was already taken by an unrelated project) — the installed command is still `obsidian-mcp`. ```bash uvx --from py-obsidian-mcp obsidian-mcp /path/to/your/vault [/path/to/another/vault ...] # or: pip install py-obsidian-mcp && obsidian-mcp /path/to/your/vault ``` ### From source (development) ```bash uv sync uv run obsidian-mcp /path/to/your/vault [/path/to/another/vault ...] ``` Vault names are auto-derived from each directory's basename (lowercased, non-alphanumeric characters become hyphens, duplicates get a numeric suffix). Up to 10 vaults; vault paths must not be nested inside one another. ## Claude Desktop configuration Edit `claude_desktop_config.json` (macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`): ```json { "mcpServers": { "obsidian": { "command": "uvx", "args": ["--from", "py-obsidian-mcp", "obsidian-mcp", "/path/to/your/vault"] } } } ``` Or, running from a local clone instead of the published package: ```json { "mcp…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.