Skip to content
← All comparisons

Engram vs local Obsidian MCP servers

A server inside your Obsidian process versus a hosted endpoint. The ceiling is architectural, not quality.

What is the difference between Engram and a local Obsidian MCP server?

A local Obsidian MCP server runs inside your Obsidian process, binds to 127.0.0.1, and serves your vault to an MCP client on the same machine. Engram runs a hosted MCP endpoint at mcp.engram.page that serves your vault over the public internet with OAuth. The local server needs Obsidian open on that desktop. Engram does not.

That is the whole difference, and it decides almost everything else.

Credit where it is due

The community MCP servers for Obsidian are good software, several are actively maintained, and the Local REST API plugin now ships its own MCP endpoint so you do not need a separate bridge process at all. If you work at one desktop with Obsidian open, they cost nothing and they work.

We are not going to pretend otherwise to sell you something. The comparison below is about what each architecture can and cannot do, not about code quality.

Side by side

Local MCP serverEngram
Where it runsInside Obsidian, on 127.0.0.1Hosted endpoint, mcp.engram.page
Obsidian must be openYesNo
Works from your phoneNoYes
Works from a browser (claude.ai, ChatGPT web)NoYes
Works from a second computerNoYes
Syncs the vault between devicesNoYes, real-time, with 3-way merge
Search indexWhatever the plugin builds locallyServer-side: keyword (BM25), semantic, hybrid
AuthLocal bearer tokenOAuth 2.1 with Dynamic Client Registration
Listable in Anthropic’s remote connector directoryNo, see belowYes
CostFreeFree tier, then $7 or $14 per month
You can run it yourselfYesYes, self-host the whole stack

Why localhost is a ceiling, not a setting

Three consequences follow from binding to 127.0.0.1, and none of them are fixable by a better plugin:

Your laptop is the server. Close the lid and your AI loses your notes. Any question you ask from your phone is answered without them.

The web clients cannot reach it. claude.ai in a browser and ChatGPT on the web cannot open a connection to your machine’s loopback address. Desktop apps can, via a local process. Web cannot, ever.

Anthropic’s remote connector directory requires a public HTTPS endpoint with OAuth 2.0 and PKCE. Loopback hosts are not eligible. That is why there is no dedicated Obsidian connector in that directory today: not because nobody wants one, but because the servers that exist are structurally barred from applying. They can ship desktop extensions, which keeps the same ceiling.

When to use a local MCP server instead

Pick the local option when:

  • You work at one desktop and keep Obsidian open anyway.
  • You never need vault access from a phone, a browser, or a second machine.
  • You want zero cost and zero account.
  • You would rather your notes never leave the machine at all.

That last one is a real preference and we respect it. If it is yours and you still want sync and server-side search, self-host Engram: same code, same protocols, your hardware, no billing.

When to use Engram instead

Pick Engram when any of these is true:

  • You want to ask your AI about your notes from your phone.
  • You use claude.ai or ChatGPT in a browser rather than a desktop app.
  • You work across more than one computer and want the vault to match on all of them.
  • You want search that is more than filename and full-text matching over whatever is on one disk.

What search actually does here

This is where the architectures diverge most, so here are the specifics rather than an adjective.

Engram indexes your vault server-side and runs three modes:

  • Keyword is real BM25 over per-chunk sparse vectors, with NFKC normalization, CJK bigram tokenization, and per-language stemming. Your German compounds and your Japanese notes get stemmed by the right stemmer, not by an English one.
  • Semantic uses Voyage AI embeddings (voyage-4-large, 1024-dim) stored in Qdrant with binary quantization and rescore.
  • Hybrid fuses the two server-side with Reciprocal Rank Fusion, and is the default. Optional diversity reranking keeps one long note from occupying every result slot.

Two honest notes on that. The Free tier searches your oldest 2,000 notes; newer notes past that cap are not searchable until you upgrade. And we make no claim that our ranking is better than anyone else’s, because we have not measured it and we are not going to assert what we cannot show. What we will claim is the part that is structural: a system with no keyword leg cannot find an exact string, and a system with no per-language stemming degrades quietly on languages that are not English.

Can I use both?

Yes, and some people do. An MCP client can hold connections to more than one server. A reasonable setup is the local server for fast desktop-only operations and Engram for everything reachable from elsewhere. They read the same vault on disk; Engram syncs it, the local server serves it.

Summary

Local Obsidian MCP servers and Engram are not competing implementations of the same idea. One puts a server inside your editor, which is free and fast and bounded by that process. The other puts your vault behind a hosted endpoint, which costs money and is reachable from anywhere. Pick by where you need your notes to be answerable from, not by feature count.

Something here out of date or unfair to a tool you maintain? Open an issue. We would rather fix a comparison than win one on a stale fact.