Read, write, search, and surgically edit Obsidian notes, tags, and frontmatter via MCP.
Indexed, not yet reviewed
We found obsidian-mcp-server in the official MCP registry. Our automated check passed on Nov 1, 2026 (it confirms the server is published and reachable), but no one at CuratedMCP has reviewed its code, permissions or credentials handling. Check what it can access before you give it keys. Scan your machine free to see every MCP server you have installed.
claude mcp add obsidian -e OBSIDIAN_API_KEY=<obsidian-api-key> -- npx -y obsidian-mcp-serverAdd --scope user to make it available in every project.
Replace the values in angle brackets. Optional settings are listed below.
| Environment variable | Required | What it is |
|---|---|---|
| OBSIDIAN_API_KEY | Yes | Bearer token for the Obsidian Local REST API plugin (Settings → Community Plugins → Local REST API). |
| OBSIDIAN_BASE_URL | No | Base URL of the Obsidian Local REST API. Default: http://127.0.0.1:27123 (enable "Non-encrypted (HTTP) Server" in plugin settings). Use https://127.0.0.1:27124 for the always-on HTTPS port (self-signe |
| OBSIDIAN_VERIFY_SSL | No | Whether to verify the TLS certificate on the Obsidian endpoint. Default false because the plugin uses a self-signed cert. |
| OBSIDIAN_REQUEST_TIMEOUT_MS | No | Per-request timeout in milliseconds. |
| OBSIDIAN_ENABLE_COMMANDS | No | Opt-in flag for the command-palette pair (obsidian_list_commands + obsidian_execute_command). Off by default — Obsidian commands are opaque and can be destructive. |
| OBSIDIAN_READ_PATHS | No | Optional comma-separated vault-relative folder allowlist for reads. Prefix-based with implicit recursion; case-insensitive; backslashes read as slashes, repeated and trailing slashes and '.' segments |
| OBSIDIAN_WRITE_PATHS | No | Optional comma-separated vault-relative folder allowlist for writes. Same syntax as OBSIDIAN_READ_PATHS. Unset = full vault, or the read scope when reads are restricted; paths in OBSIDIAN_DENY_PATHS s |
| OBSIDIAN_DENY_PATHS | No | Optional comma-separated vault-relative paths withheld from reads and writes. Same syntax as OBSIDIAN_READ_PATHS. Wins over both allowlists; denied paths are left out of listings, search results, and |
| OBSIDIAN_READ_ONLY | No | Global read-only kill switch. When true, every write is denied regardless of OBSIDIAN_WRITE_PATHS, and the command-palette pair is suppressed (commands can mutate). Useful for shared or public-facing |
| OBSIDIAN_DELETE_ELICITATION | No | Opt-in delete confirmation. When true, obsidian_delete_note asks the user to confirm each delete through an elicitation round (the client must support elicitation), and HTTP startup requires a statefu |
| OBSIDIAN_OMNISEARCH_URL | No | Override URL for the Omnisearch plugin HTTP server. Unset derives from OBSIDIAN_BASE_URL host with port 51361. Required only if the Omnisearch plugin is not on the default port. |
| MCP_LOG_LEVEL | No | Sets the minimum log level for output (e.g., 'debug', 'info', 'warn'). |
About obsidian-mcp-server: repo, license and check results →
Claim this page to get a full CuratedMCP listing: edit your description, see listing analytics, and add our README badge. Listing is free, and a person checks every submission before it goes live. We'll pre-fill the form from the registry.