MCP server for Obsidian

MarkusPfundstein/mcp-obsidian · MCP server

Даёт агенту доступ к хранилищу Obsidian: просматривать папки и заметки, искать по тексту, дописывать и вставлять фрагменты под нужный заголовок или поле frontmatter, удалять файлы.

Обзор

АвторMarkusPfundsteinСообщество
РепозиторийMarkusPfundstein/mcp-obsidian ↗
РазделРабота и заметки
Как подключаетсяPython — uvx
Звёзды4 485
ЛицензияMIT
Обновлён31 августа 2026 г.
Что понадобитсяObsidian с плагином Local REST API и его API-ключ, uv
Переменные и ключи
  • OBSIDIAN_API_KEY — API key from the Obsidian Local REST API plugin settings
  • OBSIDIAN_HOST — Obsidian REST API host (default 127.0.0.1)
  • OBSIDIAN_PORT — Obsidian REST API port (default 27124)

Подключение

Выберите своё приложение и скопируйте готовую настройку. Значения в угловых скобках замените своими ключами.

claude mcp add obsidian -e OBSIDIAN_API_KEY=<OBSIDIAN_API_KEY> -e OBSIDIAN_HOST=<OBSIDIAN_HOST> -e OBSIDIAN_PORT=<OBSIDIAN_PORT> -- uvx mcp-obsidian

README

оригинальный текст автора · только чтение

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.

Requirements

  • Python >= 3.11
  • mcp Python SDK >=1.1.0,<2.0.0 (pinned in pyproject.toml). mcp-obsidian currently registers its tool handlers via the mcp 1.x low-level Server API (@app.list_tools() / @app.call_tool()), which was removed in mcp 2.0. Installing with an unconstrained mcp>=2.0 will crash at import with AttributeError: 'Server' object has no attribute 'list_tools'.

Configuration

Obsidian REST API Key

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

  • 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>",
      "OBSIDIAN_PORT": "<your_obsidian_port>"
    }
  }
}

Sometimes Claude has issues detecting the location of uv / uvx. You can use which uvx to find and paste the full path in above config in such cases.

  • Create a .env file in the working directory with the following required variables:
OBSIDIAN_API_KEY=your_api_key_here
OBSIDIAN_HOST=your_obsidian_host
OBSIDIAN_PORT=your_obsidian_port

Note:

  • You can find the API key in the Obsidian plugin config
  • Default port is 27124 if not specified
  • Default host is 127.0.0.1 if not specified

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

Development/Unpublished Servers Configuration

{
  "mcpServers": {
    "mcp-obsidian": {
      "command": "uv",
      "args": [
        "--directory",
        "<dir_to>/mcp-obsidian",
        "run",
        "mcp-obsidian"
      ],
      "env": {
        "OBSIDIAN_API_KEY": "<your_api_key_here>",
        "OBSIDIAN_HOST": "<your_obsidian_host>",
        "OBSIDIAN_PORT": "<your_obsidian_port>"
      }
    }
  }
}

Published Servers Configuration

{
  "mcpServers": {
    "mcp-obsidian": {
      "command": "uvx",
      "args": [
        "mcp-obsidian"
      ],
      "env": {
        "OBSIDIAN_API_KEY": "<YOUR_OBSIDIAN_API_KEY>",
        "OBSIDIAN_HOST": "<your_obsidian_host>",
        "OBSIDIAN_PORT": "<your_obsidian_port>"
      }
    }
  }
}

Docker

You can run the server in a container instead of installing uv/Python locally.

  • Copy .env.example to .env and fill in your Obsidian REST API key:
cp .env.example .env

By default OBSIDIAN_HOST is set to host.docker.internal, which resolves to

your host machine from inside the container (works on Linux, Mac and Windows).

  • Build the image:
docker compose build
  • Point your MCP client at the container. Since MCP speaks JSON-RPC over

stdio, the client must run it with stdin attached and no pseudo-TTY — use

docker compose run --rm -T, not docker compose up:

{
  "mcpServers": {
    "mcp-obsidian": {
      "command": "docker",
      "args": [
        "compose",
        "-f",
        "<dir_to>/mcp-obsidian/docker-compose.yml",
        "run",
        "--rm",
        "-T",
        "mcp-obsidian"
      ]
    }
  }
}

You can also run it manually to sanity-check the container starts:

docker compose run --rm -T mcp-obsidian

(it will sit waiting for a JSON-RPC message on stdin; Ctrl+C to exit)

Development

Building

To prepare the package for distribution:

  • 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

Вопросы и ответы

Что делает MCP-сервер MCP server for Obsidian?

Даёт агенту доступ к хранилищу Obsidian: просматривать папки и заметки, искать по тексту, дописывать и вставлять фрагменты под нужный заголовок или поле frontmatter, удалять файлы.

Как подключить MCP server for Obsidian к Claude, Cursor или VS Code?

MCP server for Obsidian запускается на вашем компьютере командой uvx. Скопируйте готовую настройку для своего приложения из блока «Подключение» — Claude Code, Claude Desktop, Cursor, VS Code или Codex.

Что нужно для работы MCP server for Obsidian?

Obsidian с плагином Local REST API и его API-ключ, uv.

MCP server for Obsidian бесплатный?

Код сервера открыт на GitHub под лицензией MIT. Сам сервис, к которому он подключается, может быть платным — смотрите тарифы автора.

Что такое MCP-сервер?

MCP (Model Context Protocol) — открытый стандарт, по которому ИИ-агенты подключаются к внешним программам и данным. MCP-сервер даёт модели новые инструменты: открыть страницу, прочитать файл, сделать запрос к базе или сервису.

Безопасно ли подключать MCP-серверы?

MCP-сервер выполняет действия от вашего имени, поэтому ставьте серверы из проверенных источников, давайте ключам минимальные права и проверяйте, что агент делает с файлами и сервисами. Не публикуйте ключи в открытых файлах настроек.

Похожие MCP-серверы

Все MCP-серверы →
n8n-MCPДаёт агенту документацию и схемы тысяч узлов n8n, шаблоны воркфлоу и валидацию, а при подключении API — создание, правку и запуск воркфлоу в вашем n8n.czlonkowski23.1kWhatsApp MCP ServerПодключает агента к личному аккаунту WhatsApp: искать и читать переписки, искать контакты, отправлять сообщения людям и группам, пересылать фото, видео, документы и голосовые. Сообщения хранятся локально.lharries6.7kGemini Notebook CLI & MCP ServerРабота с Gemini Notebook (бывший NotebookLM) из агента: блокноты и источники, вопросы по материалам, аудио- и видеообзоры, слайды, исследования и выгрузка результатов.jacob-bd6.4kMCP AtlassianПодключает Jira и Confluence (Cloud и Server/Data Center): поиск задач по JQL и страниц по CQL, создание и обновление задач, смена статусов, правка страниц и комментарии.sooperset6kZotero MCPПодключает вашу библиотеку Zotero: поиск статей по автору, тегам, полному тексту и смыслу, чтение PDF, BibTeX, аннотации и выделения, добавление работ по DOI и управление коллекциями.54yyyu5.5kNotion MCP ServerЛокальный сервер для Notion API: агент ищет страницы, читает и правит их в Markdown, создаёт страницы и комментарии, запрашивает и обновляет базы данных.makenotion4.7k