About ObsidianFetch
ObsidianFetch is an MCP server for LLMs working with Obsidian vaults. It offers focused note listing and reading, normalizes link searches, and includes backlinks when loading notes.
Key features
- 01Search notes by name or folder
- 02Read notes by name
- 03Return all matching duplicate names
- 04Normalize bracketed link searches
- 05Show backlinks with note contents
Use cases
- 01Find notes in a vault by partial name
- 02Load a named note without a path lookup
- 03Explore notes linked to an opened note
MCP support
It exposes `list` and `read` tools to MCP clients. It can run over stdio or Streamable HTTP.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEObsidianFetch
Languages: 日本語
MCP servers focused on fetching and presenting information from Obsidian vaults.
The existing MCP server has the following drawbacks:
- It supports many commands, which can cause slow prompt loading when computational resources are limited.
- When reading a note labeled "Sample Note", it is necessary to search for its path first before loading it, but the LLM may not always follow this procedure.
- Some tools include unnecessary options, leading the LLM to sometimes fail to invoke them correctly.
These issues become particularly noticeable when running an LLM on a local GPU.
To address this, we developed a new MCP server that simply retrieves and loads lists of notes.
The new server also provides the following additional features:
- When the LLM attempts to retrieve link information by searching with brackets like
[[link name]], the server automatically removes any characters that cannot be used in links. - In addition to loading the note contents, it also displays backlinks—notes that link to the currently opened note.
- This allows the LLM to load and understand the connections between related notes via backlinks.
Installation
gem install obsidian_fetch
Usage
Stdio Transport (default)
obsidian_fetch /path/to/your/vault
Streamable HTTP Transport
To run the server as an HTTP server:
obsidian_fetch /path/to/your/vault --transport streamable-http
By default, the server listens on http://localhost:9292. You can customize the port:
obsidian_fetch /path/to/your/vault --transport streamable-http --port 3000
Tools
- read: Read a note from the Obsidian vault. If multiple notes with the same name are found, all will be shown.
- list: Search for notes whose name or containing folder names partially match. It returns 20 notes by default. The
limitargument accepts an integer between 1 and 200, and the response states how many notes matched in total.
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/soukouki/obsidian_fetch.
License
The gem is available as open source under the terms of the MIT License.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.