mrkeyoor.com_
Tue 01 Sept 16:16 UTC
ProductivityMCP servermeasured 19 Aug 2026

Obsidian

mcp-obsidian is a community MCP server that lets an AI client read, search and write notes in an Obsidian vault. It does not talk to the vault folder directly; it talks over HTTP to the Local REST API plugin running inside the Obsidian desktop app, which means the app has to be open and the plugin has to be installed and enabled.

BootDID NOT BOOTWe started it and it never completed initialize: exited with code 1 before initialize completed
Tools0tools/list payload 0 bytes
Context tax~0estimated tokens for the whole tools/list, chars/4 estimate
Resources / prompts / counts returned by resources/list and prompts/list
Measured19 Aug 2026one run of the harness, clean environment, no credentials · how we test

How we started it

uvx mcp-obsidian
Verdict

We ran it with a clean environment and it never reached the initialize handshake: it raised on import because OBSIDIAN_API_KEY was missing, and exited with code 1. That is a config failure, not a broken package, and it is a reasonable one for a server that is useless without a vault to point at. Use it if you already live in Obsidian on the same machine as your agent and are fine keeping the desktop app running as a background dependency; skip it if you wanted something that reads markdown files off disk, because that is not the shape of this thing.

Use it if

Your vault is your working memory and you want an agent to grep it, cite notes back to you, and append to a daily note without you copy-pasting.
Obsidian desktop already runs all day on the same machine as your MCP client, so the Local REST API plugin is a checkbox rather than a new process to babysit.
You want writes as well as reads, and you accept that an agent with an API key can modify notes you have not backed up.
You are comfortable putting a plugin-generated key into your client config and rotating it when you hand your laptop to someone.

Skip it if

You expected a filesystem server. If the vault is just markdown in a folder, a plain filesystem MCP server reads it with no plugin, no key and no running app.
The vault lives on a headless box, a server, or a phone-synced folder with no desktop Obsidian to host the REST plugin.
You are wiring this into CI or a cron agent: anything that needs a GUI app open is a bad dependency for an unattended job.
You will not install the Local REST API community plugin, which is a third-party plugin with write access to every note you own.
You want a page here that tells you the tool count and context cost, because our clean-env run never got far enough to list tools.

The bill for your context window

Our run produced no token figure at all. The process died before initialize, so tools/list was never sent and the measured payload is empty rather than small; read the zero as "unknown", not "free". For what it is worth, the failure itself costs your agent nothing, because a server that exits during startup just shows up as a dead connection in your client rather than as tokens in your window. Once you supply the key, expect a handful of note-search and note-write tools with short descriptions, which in this batch's terms should land well under the heavyweight vendor servers rather than near them. We will republish the real number when we can run it against a live vault.

Setup reality

The stderr is unusually polite about what is wrong: mcp_obsidian/tools.py raises at import time with the message that OBSIDIAN_API_KEY is required, and it prints the working directory it was launched from, which is a nice touch when your client swallows logs. So the setup is three steps in the right order. Install the Local REST API community plugin inside Obsidian, copy the key it generates, and pass it as OBSIDIAN_API_KEY in the env block of your MCP client config. Some setups also need the host and port if you changed the plugin defaults or are using the non-HTTPS listener; the plugin's docs cover which certificate warning you are about to see. Transport is stdio, launched by uvx, and uv pulled 34 packages before hitting the error, so first start on a cold cache is not instant.

OBSIDIAN_API_KEY

Questions people ask

Why did the Obsidian MCP server exit with code 1 on startup?

It raised a ValueError while importing its tools module because OBSIDIAN_API_KEY was not set. Our harness runs every server with a clean environment and no credentials, so this is expected. Set the key from the Local REST API plugin in your client config and the import succeeds.

Do I need the Obsidian desktop app running?

Yes. This server is an HTTP client for the Local REST API plugin, which lives inside the app. Close Obsidian and the tools start failing on connection, even though the server process itself stays alive and keeps advertising them.

Can I skip the plugin and just read the vault as files?

For read-only work, yes, and often you should. A filesystem MCP server pointed at the vault directory needs no key and no GUI. You lose Obsidian's own search semantics and its handling of properties and links, which is the main reason to pay the plugin tax.

Other productivity servers we started

ServerVendorBootsContext tax
Airtablecommunity (domdomegg)~0 tokens
NotionNotion~19,054 tokens

How this page is made: the server is spawned as an unprivileged user with a clean environment and no credentials, then asked for its tools, resources and prompts over stdio. Token figures are estimates at four characters per token, not a tokenizer count. One run, one machine. Corrections: contact the desk.

← All measured MCP servers