Skip to main content
Glama

Obsidian MCP Server

by pmmvr
MIT License
3

Obsidian MCP Server

Ein MCP-Server (Model Context Protocol), der es KI-Agenten ermöglicht, über das Local REST API-Plugin anspruchsvolle Wissensentdeckungen und -analysen in Ihrem Obsidian-Tresor durchzuführen.

Warum das wichtig ist

Dieser Server verwandelt Ihren Obsidian-Tresor in eine leistungsstarke Wissensdatenbank für KI-Agenten und ermöglicht komplexe mehrstufige Arbeitsabläufe wie:

  • „Rufen Sie Notizen aus meinem Ordner „Projekte/Planung“ ab, die „Roadmap“ oder „Zeitleiste“ in der Überschrift enthalten und nach dem 1. April erstellt wurden. Analysieren Sie sie anschließend auf etwaige Blockaden oder Abhängigkeiten und präsentieren Sie eine konsolidierte Risikobewertung mit Verweisen auf die Quellnotizen.“
  • „Suchen Sie alle mit ‚Forschung‘ oder ‚Analyse‘ gekennzeichneten Notizen des letzten Monats, durchsuchen Sie deren Inhalt nach unvollständigen Abschnitten oder offenen Fragen und vergleichen Sie sie dann mit meinen ‚Team/Expertise‘-Notizen, um vorzuschlagen, welche Kollegen bei der Behebung der jeweiligen Lücken helfen könnten.“
  • „Holen Sie sich den kompletten Inhalt der Besprechungsnotizen aus ‚Leadership/Quarterly‘ mit den Angaben ‚Budget‘ oder ‚Personalbestand‘, analysieren Sie diese auf die meiner Abteilung zugewiesenen Aktionspunkte und erstellen Sie eine chronologische Zeitleiste mit Quellenangaben.“

Dank der erweiterten Filterung, der Regex-Unterstützung und der umfassenden Inhaltsabruffunktionen des Servers können Agenten differenzierte Wissensarbeit leisten, die manuell Stunden dauern würde.

Voraussetzungen

  1. Installieren Sie das Obsidian Local REST API- Plugin in Ihrem Obsidian-Tresor
  2. Konfigurieren und aktivieren Sie das Plugin in den Obsidian-Einstellungen
  3. Notieren Sie sich die API-URL (Standard: https://localhost:27124 ) und den API-Schlüssel, falls Sie einen festgelegt haben

Installation

Von PyPI (empfohlen)

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

Zur MCP-Konfiguration hinzufügen

Fügen Sie Ihrer MCP-Clientkonfiguration (z. B. Claude Desktop) Folgendes hinzu:

{ "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" } } } }

Aus der Quelle (Entwicklung)

# 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 .

Konfiguration

Legen Sie Umgebungsvariablen für die Obsidian-API fest:

# 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"

Wichtiger Sicherheitshinweis : Vermeiden Sie es, Ihren OBSIDIAN_API_KEY direkt in Skripte einzubinden oder ihn der Versionskontrolle zu übergeben. Verwenden Sie eine .env Datei (die in der .gitignore Datei dieses Projekts enthalten ist) und eine Bibliothek wie python-dotenv zur Verwaltung Ihres API-Schlüssels oder verwenden Sie Umgebungsvariablen, die von Ihrem Betriebssystem oder Ihrer Shell verwaltet werden.

Hinweis : Der Server verwendet standardmäßig HTTPS und deaktiviert die SSL-Zertifikatsprüfung für selbstsignierte Zertifikate, die häufig bei lokalen Obsidian-Instanzen verwendet werden. Für HTTP-Verbindungen setzen Sie OBSIDIAN_API_URL="http://localhost:27123" .

Verwendung

Führen Sie den MCP-Server aus:

obsidian-mcp

Verfügbare Tools

Der Server bietet drei leistungsstarke Tools:

  1. search_vault – Erweiterte Suche mit flexiblen Filtern und vollständigem Inhaltsabruf:
    • query – Text- oder Regex-Suche im gesamten Notizinhalt (optional)
    • query_type – Suchtyp: „Text“ (Standard) oder „regulärer Ausdruck“
    • search_in_path – Suche auf bestimmten Ordnerpfad beschränken
    • title_contains – Filtern nach Text in Notiztiteln (Zeichenfolge, Array oder JSON-Zeichenfolge)
    • title_match_mode – So werden mehrere Begriffe abgeglichen: „any“ (OR) oder „all“ (AND)
    • tag – Filtern nach Tag (Zeichenfolge, Array oder JSON-Zeichenfolge – durchsucht Frontmatter und Inline-#Tags)
    • tag_match_mode – So werden mehrere Tags abgeglichen: „any“ (OR) oder „all“ (AND)
    • context_length – Menge des zurückzugebenden Inhalts (hoch einstellen für vollständigen Inhalt)
    • include_content – Boolescher Wert zum Abrufen des vollständigen Inhalts aller übereinstimmenden Notizen
    • created_since/until – Filtern nach Erstellungsdatum
    • modified_since/until – Filtern nach Änderungsdatum
    • page_size – Ergebnisse pro Seite
    • max_matches_per_file – Übereinstimmungen pro Notiz begrenzen

    Hauptmerkmale :

    • Wenn keine query angegeben ist, wird bei Nur-Filter-Suchen automatisch der vollständige Inhalt zurückgegeben.
    • include_content=True erzwingt den vollständigen Inhaltsabruf für jede Suche
    • Unterstützt Regex-Muster für komplexe Textübereinstimmungen (ODER-Bedingungen, Suche ohne Berücksichtigung der Groß-/Kleinschreibung usw.)
  2. get_note_content - Vollständigen Inhalt und Metadaten einer bestimmten Notiz über den Pfad abrufen
  3. browse_vault_structure – Effizientes Navigieren in der Tresor-Verzeichnisstruktur:
    • path – Zu durchsuchendes Verzeichnis (standardmäßig das Stammverzeichnis des Tresors)
    • include_files – Boolescher Wert zum Einschließen von Dateien (Standard: False, Ordner nur aus Geschwindigkeitsgründen)
    • recursive - Boolescher Wert zum Durchsuchen aller verschachtelten Verzeichnisse

Beispiel-Anwendungsfälle

Einfache Suchen

  1. Suchen Sie in einem bestimmten Ordner nach Notizen nach Titel:
    search_vault( search_in_path="Work/Projects/", title_contains="meeting" )
  2. Notizen mit mehreren Titelbegriffen finden (ODER-Logik):
    search_vault( title_contains=["foo", "bar", "fizz", "buzz"], title_match_mode="any" # Default )
  3. Notizen mit ALLEN Titelbegriffen (UND-Logik) finden:
    search_vault( title_contains=["project", "2024"], title_match_mode="all" )
  4. Alle aktuellen Notizen mit vollständigem Inhalt abrufen:
    search_vault( modified_since="2025-05-20", include_content=True )
  5. Textsuche mit Kontext:
    search_vault( query="API documentation", search_in_path="Engineering/", context_length=500 )
  6. Suche nach Tag:
    search_vault( tag="project" )
  7. Regex-Suche nach ODER-Bedingungen:
    search_vault( query="foo|bar", query_type="regex", search_in_path="Projects/" )
  8. Regex-Suche nach Aufgaben, die bestimmten Personen zugewiesen sind:
    search_vault( query="(TODO|FIXME|ACTION).*@(alice|bob)", query_type="regex", search_in_path="Work/Meetings/" )

Erweiterte mehrstufige Workflows

Diese Beispiele zeigen, wie Agenten anspruchsvolle Aufgaben zur Wissensermittlung miteinander verketten können:

  1. Strategische Projektanalyse:
    # 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 )
    Der Agent kann dann Abhängigkeiten analysieren, Risiken identifizieren und eine Ressourcenzuweisung empfehlen
  2. Mining von Meeting-Aktionselementen:
# 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 )

Der Agent durchsucht Inhalte nach Aktionselementen, extrahiert Aufgaben und erstellt eine chronologische Verfolgung

  1. Forschungslückenanalyse:
# 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 )

Der Agent identifiziert Wissenslücken und schlägt Teammitglieder vor, die helfen könnten

  1. Erkundung der Tresorstruktur:
# 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. Tag-basiertes Wissensmapping:
# 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" )

Entwicklung

# 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

Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE .

You must be authenticated.

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

Ein Server, der es KI-Agenten ermöglicht, über das lokale REST-API-Plugin anspruchsvolle Wissensermittlungen und -analysen in Obsidian-Tresoren durchzuführen und komplexe mehrstufige Workflows mit erweiterter Filterung und vollständigem Inhaltsabruf zu unterstützen.

  1. Warum das wichtig ist
    1. Voraussetzungen
      1. Installation
        1. Von PyPI (empfohlen)
        2. Zur MCP-Konfiguration hinzufügen
        3. Aus der Quelle (Entwicklung)
      2. Konfiguration
        1. Verwendung
          1. Verfügbare Tools
            1. Beispiel-Anwendungsfälle
              1. Einfache Suchen
              2. Erweiterte mehrstufige Workflows
            2. Entwicklung
              1. Lizenz

                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