MCP server for Obsidian

Integrations

  • Allows interaction with Obsidian via the Local REST API community plugin. Capabilities include listing files in vault, retrieving file contents, searching across vault files, patching content into existing notes, and appending content to new or existing files.

MCP server for Obsidian

MCP server to interact with Obsidian via the Local REST API community plugin.

Components

Tools

The server implements multiple tools to interact with Obsidian:

  • list_files_in_vault: Lists all files and directories in the root directory of your Obsidian vault
  • list_files_in_dir: Lists all files and directories in a specific Obsidian directory
  • get_file_contents: Return the content of a single file in your vault.
  • search: Search for documents matching a specified text query across all files in the vault
  • patch_content: Insert content into an existing note relative to a heading, block reference, or frontmatter field.
  • append_content: Append content to a new or existing file in the vault.
  • delete_file: Delete a file or directory from your vault.

Example prompts

Its good to first instruct Claude to use Obsidian. Then it will always call the tool.

The use prompts like this:

  • Get the contents of the last architecture call note and summarize them
  • Search for all files where Azure CosmosDb is mentioned and quickly explain to me the context in which it is mentioned
  • Summarize the last meeting notes and put them into a new note 'summary meeting.md'. Add an introduction so that I can send it via email.

Configuration

Obsidian REST API Key

There are two ways to configure the environment with the Obsidian REST API Key.

  1. Add to server config (preferred)
{ "mcp-obsidian": { "command": "uvx", "args": [ "mcp-obsidian" ], "env": { "OBSIDIAN_API_KEY": "<your_api_key_here>", "OBSIDIAN_HOST": "<your_obsidian_host>" } } }
  1. Create a .env file in the working directory with the following required variable:
OBSIDIAN_API_KEY=your_api_key_here OBSIDIAN_HOST=your_obsidian_host

Note: You can find the key in the Obsidian plugin config.

Quickstart

Install

Obsidian REST API

You need the Obsidian REST API community plugin running: https://github.com/coddingtonbear/obsidian-local-rest-api

Install and enable it in the settings and copy the api key.

Claude Desktop

On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json

On Windows: %APPDATA%/Claude/claude_desktop_config.json

{ "mcpServers": { "mcp-obsidian": { "command": "uv", "args": [ "--directory", "<dir_to>/mcp-obsidian", "run", "mcp-obsidian" ] } } }
{ "mcpServers": { "mcp-obsidian": { "command": "uvx", "args": [ "mcp-obsidian" ], "env": { "OBSIDIAN_API_KEY" : "<YOUR_OBSIDIAN_API_KEY>" } } } }

Development

Building

To prepare the package for distribution:

  1. Sync dependencies and update lockfile:
uv sync

Debugging

Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.

You can launch the MCP Inspector via npm with this command:

npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-obsidian run mcp-obsidian

Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.

You can also watch the server logs with this command:

tail -n 20 -f ~/Library/Logs/Claude/mcp-server-mcp-obsidian.log

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

MCP server to interact with Obsidian via the Local REST API community plugin.

  1. Components
    1. Tools
    2. Example prompts
  2. Configuration
    1. Obsidian REST API Key
  3. Quickstart
    1. Install
  4. Development
    1. Building
    2. Debugging

Related MCP Servers

  • -
    security
    A
    license
    -
    quality
    A local MCP server that enables AI applications like Claude Desktop to securely access and work with Obsidian vaults, providing capabilities for reading notes, executing templates, and performing semantic searches.
    Last updated -
    60
    TypeScript
    MIT License
    • Apple
    • Linux
  • A
    security
    A
    license
    A
    quality
    An MCP server that enables posting messages to Discord webhooks, allowing customization of content, username, and avatar URL.
    Last updated -
    1
    0
    JavaScript
    MIT License
  • -
    security
    A
    license
    -
    quality
    A framework to use with AI to easily create a server for any service. Just drop the API Documentation in it and ask to create the MCP.
    Last updated -
    4
    TypeScript
    MIT License

View all related MCP servers

ID: 3wko1bhuek