Skip to main content
Glama

Obsidian MCP Server

by pmmvr
MIT License
3

Сервер Obsidian MCP

Сервер MCP (Model Context Protocol), который позволяет агентам ИИ выполнять сложный поиск и анализ знаний в вашем хранилище Obsidian с помощью плагина Local REST API.

Почему это важно

Этот сервер преобразует ваше хранилище Obsidian в мощную базу знаний для агентов ИИ, позволяя выполнять сложные многоэтапные рабочие процессы, такие как:

  • «Извлеките заметки из моей папки «Проекты/Планирование», содержащие в заголовках слова «дорожная карта» или «хронология», созданные после 1 апреля, затем проанализируйте их на предмет наличия блокировщиков или зависимостей и представьте консолидированную оценку рисков со ссылками на исходные заметки»
  • «Найдите все заметки с тегами «исследование» или «анализ» за последний месяц, просмотрите их содержимое на предмет незавершенных разделов или открытых вопросов, затем сравните с моими заметками «Команда/Экспертиза», чтобы предложить коллегам, которые могли бы помочь заполнить каждый пробел»
  • «Получить полное содержание заметок о встречах из «Руководства/Ежеквартально», содержащих «бюджет» или «численность персонала», проанализировать их на предмет пунктов действий, назначенных моему отделу, и создать хронологическую временную шкалу со ссылками на исходные заметки»

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

Предпосылки

  1. Установите плагин Obsidian Local REST API в хранилище Obsidian
  2. Настройте и включите плагин в настройках Obsidian
  3. Запишите URL-адрес API (по умолчанию: https://localhost:27124 ) и ключ API, если вы его установили.

Установка

Из PyPI (рекомендуется)

# Install from PyPI pip install obsidian-api-mcp-server # Or with uv uv pip install obsidian-api-mcp-server

Добавить в конфигурацию MCP

Добавьте в конфигурацию вашего клиента MCP (например, Claude Desktop):

{ "mcpServers": { "obsidian-api-mcp-server": { "command": "uvx", "args": [ "--from", "obsidian-api-mcp-server>=1.0.1", "obsidian-api-mcp" ], "env": { "OBSIDIAN_API_URL": "https://localhost:27124", "OBSIDIAN_API_KEY": "your-api-key-here" } } } }

Из источника (Разработка)

# Clone the repository git clone https://github.com/pmmvr/obsidian-api-mcp-server cd obsidian-api-mcp-server # Install with uv uv pip install -e . # Or with pip pip install -e .

Конфигурация

Установите переменные среды для Obsidian API:

# Required: Obsidian API URL (HTTPS by default) export OBSIDIAN_API_URL="https://localhost:27124" # Default # Optional: API key if you've configured authentication export OBSIDIAN_API_KEY="your-api-key-here"

Важное примечание по безопасности : Избегайте жесткого кодирования OBSIDIAN_API_KEY непосредственно в скриптах или передачи его в систему контроля версий. Рассмотрите возможность использования файла .env (который включен в .gitignore этого проекта) и библиотеки, например python-dotenv для управления вашим ключом API или используйте переменные среды, управляемые вашей операционной системой или оболочкой.

Примечание : сервер по умолчанию использует HTTPS и отключает проверку сертификатов SSL для самоподписанных сертификатов, обычно используемых с локальными экземплярами Obsidian. Для HTTP-подключений установите OBSIDIAN_API_URL="http://localhost:27123" .

Использование

Запустите сервер MCP:

obsidian-mcp

Доступные инструменты

Сервер предоставляет три мощных инструмента:

  1. search_vault — Расширенный поиск с гибкими фильтрами и полным извлечением контента:
    • query — поиск текста или регулярного выражения по содержимому заметки (необязательно)
    • query_type - Тип поиска: «текст» (по умолчанию) или «регулярное выражение»
    • search_in_path — Ограничить поиск определенным путем к папке
    • title_contains — Фильтр по тексту в заголовках заметок (строка, массив или строка JSON)
    • title_match_mode — Как сопоставить несколько терминов: «любой» (ИЛИ) или «все» (И)
    • tag — фильтр по тегу (строка, массив или строка JSON — поиск по заголовкам и встроенным #тегам)
    • tag_match_mode — Как сопоставить несколько тегов: «любой» (ИЛИ) или «все» (И)
    • context_length — объем возвращаемого контента (установите высокое значение для полного контента)
    • include_content — логическое значение для извлечения полного содержимого всех соответствующих заметок.
    • created_since/until - Фильтр по дате создания
    • modified_since/until - Фильтр по дате изменения
    • page_size - Результаты на страницу
    • max_matches_per_file — ограничение совпадений на одну заметку

    Основные характеристики :

    • Если query не указан, автоматически возвращается полный контент для поиска только с фильтром.
    • include_content=True принудительно извлекает полный контент для любого поиска
    • Поддерживает шаблоны регулярных выражений для сложного сопоставления текста (условия ИЛИ, поиск без учета регистра и т. д.)
  2. get_note_content — Извлечь полное содержимое и метаданные определенной заметки по пути
  3. browse_vault_structure — эффективная навигация по структуре каталогов хранилища:
    • path — каталог для просмотра (по умолчанию — корень хранилища)
    • include_files — логическое значение для включения файлов (по умолчанию: False, только папки для скорости)
    • recursive - Булевский для просмотра всех вложенных каталогов

Примеры использования

Базовые поиски

  1. Найти заметки по названию в определенной папке:
    search_vault( search_in_path="Work/Projects/", title_contains="meeting" )
  2. Найти заметки с несколькими терминами в заголовках (логика ИЛИ):
    search_vault( title_contains=["foo", "bar", "fizz", "buzz"], title_match_mode="any" # Default )
  3. Найти заметки со ВСЕМИ терминами заголовка (И логикой):
    search_vault( title_contains=["project", "2024"], title_match_mode="all" )
  4. Получить все последние заметки с полным содержанием:
    search_vault( modified_since="2025-05-20", include_content=True )
  5. Текстовый поиск с контекстом:
    search_vault( query="API documentation", search_in_path="Engineering/", context_length=500 )
  6. Поиск по тегу:
    search_vault( tag="project" )
  7. Поиск регулярных выражений для условий OR:
    search_vault( query="foo|bar", query_type="regex", search_in_path="Projects/" )
  8. Поиск регулярных выражений для задач, назначенных конкретным людям:
    search_vault( query="(TODO|FIXME|ACTION).*@(alice|bob)", query_type="regex", search_in_path="Work/Meetings/" )

Расширенные многошаговые рабочие процессы

Эти примеры демонстрируют, как агенты могут объединять сложные задачи по обнаружению знаний:

  1. Стратегический анализ проекта:
    # Step 1: Get all project documentation search_vault( search_in_path="Projects/Infrastructure/", title_contains=["planning", "requirements", "architecture"], title_match_mode="any", include_content=True ) # Step 2: Find related technical discussions search_vault( tag=["infrastructure", "technical-debt"], tag_match_mode="any", modified_since="2025-04-01", include_content=True )
    Затем агент может анализировать зависимости, выявлять риски и рекомендовать распределение ресурсов.
  2. Майнинг элементов действия встречи:
# Get all recent meeting notes with full content search_vault( search_in_path="Meetings/", title_contains=["standup", "planning", "retrospective"], title_match_mode="any", created_since="2025-05-01", include_content=True )

Агент сканирует контент на предмет элементов действий, извлекает задания и создает хронологическое отслеживание.

  1. Анализ пробелов в исследованиях:
# Find research notes with questions or gaps search_vault( query="(TODO|QUESTION|INVESTIGATE|UNCLEAR)", query_type="regex", tag=["research", "analysis"], tag_match_mode="any", include_content=True ) # Cross-reference with team expertise search_vault( search_in_path="Team/", tag=["expertise", "skills"], tag_match_mode="any", include_content=True )

Агент выявляет пробелы в знаниях и предлагает членов команды, которые могли бы помочь

  1. Исследование структуры хранилища:
# Quick organizational overview browse_vault_structure(recursive=True) # Deep dive into specific areas browse_vault_structure( path="Projects/CurrentSprint/", include_files=True, recursive=True )
  1. Картирование знаний на основе тегов:
# Find notes with multiple tags (AND logic) search_vault( tag=["project", "urgent"], tag_match_mode="all", include_content=True ) # Find notes with any relevant tags (OR logic) search_vault( tag=["architecture", "design", "implementation"], tag_match_mode="any", modified_since="2025-04-15" )

Разработка

# Install with test dependencies uv pip install -e ".[test]" # Run the server python -m obsidian_mcp.server # Run tests uv run behave features/blackbox_tests.feature # Or use the test runner python run_tests.py

Лицензия

Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE .

You must be authenticated.

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

Сервер, который позволяет агентам ИИ выполнять сложный поиск и анализ знаний в хранилищах Obsidian с помощью плагина Local REST API, поддерживая сложные многоэтапные рабочие процессы с расширенной фильтрацией и полным извлечением контента.

  1. Почему это важно
    1. Предпосылки
      1. Установка
        1. Из PyPI (рекомендуется)
        2. Добавить в конфигурацию MCP
        3. Из источника (Разработка)
      2. Конфигурация
        1. Использование
          1. Доступные инструменты
            1. Примеры использования
              1. Базовые поиски
              2. Расширенные многошаговые рабочие процессы
            2. Разработка
              1. Лицензия

                Related MCP Servers

                • -
                  security
                  A
                  license
                  -
                  quality
                  Enables AI assistants to interact with Obsidian vaults, providing tools for reading, creating, editing and managing notes and tags.
                  Last updated -
                  598
                  149
                  TypeScript
                  MIT License
                  • Apple
                • -
                  security
                  A
                  license
                  -
                  quality
                  Provides programmatic search functionality for Obsidian vaults through a REST API interface, allowing external applications to search through notes and retrieve absolute paths to matching documents.
                  Last updated -
                  10
                  Python
                  MIT License
                  • Apple
                • -
                  security
                  A
                  license
                  -
                  quality
                  Provides a standardized interface for AI assistants to interact with Obsidian vaults through a local REST API, enabling reading, writing, searching, and managing notes.
                  Last updated -
                  37
                  TypeScript
                  MIT License
                • -
                  security
                  F
                  license
                  -
                  quality
                  A lightweight server that enables AI assistants like Cursor & Claude to read from and write to Obsidian vaults, allowing actions like creating notes, checking existing content, and managing todos through natural language.
                  Last updated -
                  192
                  8
                  TypeScript

                View all related MCP servers

                MCP directory API

                We provide all the information about MCP servers via our MCP API.

                curl -X GET 'https://glama.ai/api/mcp/v1/servers/pmmvr/obsidian-api-mcp-server'

                If you have feedback or need assistance with the MCP directory API, please join our Discord server