MCP server for Obsidian (TypeScript + Bun)
@fazer-ai
About MCP server for Obsidian (TypeScript + Bun)
MCP server for Obsidian (TypeScript + Bun)
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"mcp-obsidian-fazer-ai": {
"command": "npx",
"args": [
"@modelcontextprotocol/inspector",
"bun",
"/path/to/repo/src/index.ts"
]
}
}
}Tools
24Returns basic details about the Obsidian Local REST API server and your authentication status
Deletes the note that is currently active in the Obsidian UI
Retrieves the full content of the active note (Markdown or JSON view)
Inserts, replaces or prepends content in the active note relative to a heading, block reference, or front-matter field
Appends Markdown to the end of the active note
Replaces the entire body of the active note
Lists every command available in Obsidian’s command palette
Executes a specific Obsidian command by its ID
Opens the given file inside Obsidian (creates it if missing); optional flag to open in a new leaf
Deletes the current daily / weekly / monthly / quarterly / yearly note for the requested period
Returns the content of the current periodic note for the requested period
Inserts / replaces content in a periodic note relative to a heading, block reference, or front-matter field
Appends Markdown to the periodic note (creates it if it doesn’t exist)
Replaces the entire body of a periodic note
Runs a Dataview-DQL query across the vault and returns matching rows
Runs a JsonLogic query against structured note metadata
Performs a plain-text fuzzy search with optional surrounding context
Lists all files and directories at the **root** of your vault
Lists files and directories inside a **specific folder** of the vault
Deletes a specific file (or directory) in the vault
Retrieves the content of a file in the vault (Markdown or JSON view)
Inserts / replaces content in an arbitrary file relative to a heading, block reference, or front-matter field
Appends Markdown to a file (creates it if it doesn’t exist)
Creates a new file or replaces the entire body of an existing file
Overview
What is MCP server for Obsidian (TypeScript + Bun)?
An MCP server that lets Claude or any MCP-compatible LLM interact with your Obsidian vault through the Local REST API community plugin. It is written in TypeScript and runnable with bunx.
How to use MCP server for Obsidian (TypeScript + Bun)?
Install and run with bunx @fazer-ai/mcp-obsidian@latest. Configure the API key via the env field in your MCP client config (e.g., claude_desktop_config.json) or an .env file. The Obsidian Local REST API plugin must be installed and running.
Key features of MCP server for Obsidian (TypeScript + Bun)
- 24 tools for reading, writing, and managing notes
- Supports periodic notes (daily, weekly, monthly, etc.)
- Executes Obsidian commands by their ID
- Searches with fuzzy, Dataview-DQL, and JsonLogic queries
- Opens, creates, and deletes files in the vault
- Patches content relative to headings or block references
Use cases of MCP server for Obsidian (TypeScript + Bun)
- Summarize meeting notes by reading the active note
- Search across the vault for keywords like “Azure Cosmos Db”
- Create a daily summary note and append to a period note
- Open a specific file in Obsidian from a prompt
- Delete outdated periodic notes automatically
FAQ from MCP server for Obsidian (TypeScript + Bun)
How do I provide my Obsidian API key?
You can set the OBSIDIAN_API_KEY environment variable in your MCP client config (recommended) or place it in a .env file in the working directory.
What runtime does the server require?
It requires Bun to run. You can use bunx to execute the npm package directly, or run a local copy with bun.
How do I debug the server?
Use the MCP Inspector: run npx @modelcontextprotocol/inspector bun /path/to/src/index.ts and open the printed URL (usually http://localhost:6274).
How do I run a local development version?
Clone the repo, run bun install, and point Claude’s config to your local src/index.ts using bun instead of bunx.
Where does the API key come from?
It is obtained from the Local REST API plugin settings inside Obsidian. The server also uses configurable OBSIDIAN_PROTOCOL, OBSIDIAN_HOST, and OBSIDIAN_PORT (default 27123) environment variables.
Frequently asked questions
How do I provide my Obsidian API key?
You can set the `OBSIDIAN_API_KEY` environment variable in your MCP client config (recommended) or place it in a `.env` file in the working directory.
What runtime does the server require?
It requires Bun to run. You can use `bunx` to execute the npm package directly, or run a local copy with `bun`.
How do I debug the server?
Use the MCP Inspector: run `npx @modelcontextprotocol/inspector bun /path/to/src/index.ts` and open the printed URL (usually http://localhost:6274).
How do I run a local development version?
Clone the repo, run `bun install`, and point Claude’s config to your local `src/index.ts` using `bun` instead of `bunx`.
Where does the API key come from?
It is obtained from the Local REST API plugin settings inside Obsidian. The server also uses configurable `OBSIDIAN_PROTOCOL`, `OBSIDIAN_HOST`, and `OBSIDIAN_PORT` (default 27123) environment variables.
Basic information
More Memory & Knowledge MCP servers
minutes
silversteinEvery meeting, every idea, every voice note — searchable by your AI. Open-source, privacy-first conversation memory layer.
Memory Bank MCP Server
alioshrA Model Context Protocol (MCP) server implementation for remote memory bank management, inspired by Cline Memory Bank.
Zettelkasten MCP Server
entanglrA Model Context Protocol (MCP) server that implements the Zettelkasten knowledge management methodology, allowing you to create, link, explore and synthesize atomic notes through Claude and other MCP-compatible clients.
Obsidian MCP Server
cyanheadsRead, write, search, and surgically edit Obsidian vault notes, tags, and frontmatter via MCP. STDIO or Streamable HTTP.

ctxfile
ctxfileLocal-first MCP server that snapshots your project's working state into one context object. Open-core, privacy-first.
Comments