Skip to main content
Glama
Utkarshsharma30

Obsidian Knowledge MCP

Obsidian Knowledge MCP

Ein schreibgeschützter Obsidian-zu-PostgreSQL-Importierer und MCP-Server. Der Vault ist die Quelle der Wahrheit: Die Erfassung liest Markdown-Dateien und bearbeitet oder löscht sie nie.

Architektur

Obsidian-Vault -> Python-Parser/Upsert-Importierer -> PostgreSQL -> FastMCP-Tools/Ressourcen -> Claude Connector

Dokumente behalten ihre relativen Pfade und den ursprünglichen Markdown-Text. Jede Notiz wird zu einem document-Knoten; [[links]] werden zu gerichteten related_to-Kanten und document_links. Tags, Aliase, Überschriften und nicht erkannte Frontmatter werden in JSONB behalten. Fehlende Link-Ziele werden protokolliert und übersprungen. Eine erneute Ausführung der Erfassung aktualisiert Datensätze anhand des Dateipfads und verhindert doppelte Kanten/Tags.

Related MCP server: Semantic Notes Vault MCP

Einrichtung

Voraussetzungen: Python 3.11+, Docker Desktop und ein PostgreSQL-Client nur, wenn Sie manuelle SQL-Inspektion wünschen.

  1. Kopieren Sie .env.example in .env, setzen Sie POSTGRES_PASSWORD und setzen Sie OBSIDIAN_VAULT_PATH auf den vorhandenen Vault. Legen Sie den Vault nicht in dieses Projekt, es sei denn, Sie möchten ihn dort haben.

  2. Erstellen Sie die Umgebung und installieren Sie die Abhängigkeiten:

    py -m venv .venv
    .\.venv\Scripts\Activate.ps1
    pip install -e ".[test]"
  3. Starten Sie PostgreSQL. Der Port ist nur an localhost gebunden:

    docker compose up -d postgres
  4. Importieren Sie den Vault:

    python -m ingestion.importer
    # or: obsidian-ingest "C:\path\to\vault"
  5. Überprüfen Sie es:

    docker compose exec postgres psql -U knowledge_app -d knowledge -c "select count(*) from documents; select count(*) from edges;"
    pytest

Das Schema wird als Initialisierungsskript eingebunden. Für ein vorhandenes Volume wenden Sie Änderungen explizit mit psql -f database/schema.sql an.

Auf Render bereitstellen

Dieses Repository enthält render.yaml für einen kostenlosen Render-Webdienst. Erstellen Sie in Render ein neues Blueprint aus diesem Repository und stellen Sie es bereit. Render generiert MCP_AUTH_TOKEN und verwendet seinen PORT. Da Render für seinen verwalteten PostgreSQL-Dienst Zahlungsinformationen benötigt, stellen Sie DATABASE_URL von einem kostenlosen externen PostgreSQL-Anbieter wie Neon oder Supabase bereit. Wenden Sie database/schema.sql auf diese Datenbank an, bevor Sie Abfragen ausführen. Der Standard-Endpunkt ist:

https://obsidian-knowledge-mcp.onrender.com/mcp

Wenn Sie den Dienstnamen ändern, aktualisieren Sie MCP_PUBLIC_URL in der Render-Umgebung auf die resultierende https://<service-name>.onrender.com-URL. Fügen Sie /mcp nicht zu MCP_PUBLIC_URL hinzu; /mcp gehört nur in die Claude-Connector-URL.

Der Render-Dienst kann keinen Windows- oder OneDrive-Vault lesen. Importieren Sie den Vault von einem Rechner, der sowohl auf den Vault als auch auf die Datenbank zugreifen kann, in die externe PostgreSQL-Datenbank, oder fügen Sie einen separaten Render-zugänglichen Speicher-/Import-Job hinzu, bevor Sie Abfragen ausführen.

MCP-Server

Lokal ausführen mit:

python -m mcp_server.server

Der Standard-Endpunkt ist http://127.0.0.1:8000/mcp mit Streamable HTTP. Für lokale Clients setzen Sie MCP_TRANSPORT=stdio und verwenden Sie obsidian-mcp als Befehl. Der Server stellt search_knowledge, get_node, get_document, get_related_nodes, find_path, list_nodes und search_documents sowie knowledge://node/{node_name}-Ressourcen bereit. Limits sind auf 100 begrenzt und SQL ist parametrisiert.

Claude Connector

Claude Connectors benötigen einen remote erreichbaren MCP-Endpunkt, keinen PostgreSQL-Endpunkt. Fügen Sie in Claude-Einstellungen -> Connectors die Render-URL hinzu, die auf /mcp endet, z. B. https://obsidian-knowledge-mcp.onrender.com/mcp. Verwenden Sie bei Aufforderung das generierte MCP_AUTH_TOKEN als Bearer-Token, schließen Sie den von Ihrem Claude-Workspace geforderten Authentifizierungsablauf ab und testen Sie dann mit What do I have in my knowledge base about Python?.

Für die Produktion verwenden Sie einen identitätsbewussten Proxy (OAuth/OIDC) oder mTLS anstelle eines statischen Tokens. Setzen Sie Port 5432 nicht offen. Wenn Claude einen Verbindungsfehler meldet, überprüfen Sie docker compose ps, docker compose logs postgres, die MCP-Prozessprotokolle, HTTPS-Zertifikat/DNS, Proxy-Weiterleitung von /mcp und ob der Endpunkt von außerhalb Ihres Netzwerks erreichbar ist. Halten Sie einen authentifizierten Health-Check getrennt von Datenbankfehlern und legen Sie keine Stack-Traces offen.

Beispielabfragen

  • Welche Konzepte sind mit Machine Learning verbunden?

  • Finden Sie den Beziehungspfad zwischen Python und Artificial Intelligence.

  • Welche Konzepte sind innerhalb von zwei Hops von RAG?

  • Welche Dokumente erwähnen sowohl Python als auch Machine Learning?

Annahmen und Erweiterungspunkte

In diesem Workspace war kein Vault verfügbar, um ihn zu inspizieren, daher folgt das Parsen den Standard-Obsidian-Konventionen und wird durch Fixtures in tests/test_parser.py abgedeckt. Dataview-spezifische Syntax wird als Inhalt beibehalten. Die Repository-Schicht isoliert SQL vom MCP und ermöglicht so eine zukünftige bidirektionale Synchronisierung, ohne den MCP-Vertrag zu ändern. MCP_AUTH_TOKEN wird vom Streamable-HTTP-Server erzwungen; verwenden Sie für eine stärkere Produktionszugriffskontrolle einen identitätsbewussten Proxy (OAuth/OIDC).

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Connects AI assistants to an Obsidian vault as a semantic knowledge graph, enabling graph navigation, semantic search, and content operations through MCP.
    12
    456
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Provides read-only access to an Obsidian vault, enabling file listing, content reading, and text search across notes via MCP.
    4
    1
    Apache 2.0
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables reading, writing, searching, and managing Obsidian vault notes through MCP tools and prompts, allowing AI agents to interact with local knowledge bases.

View all related MCP servers

Related MCP Connectors

  • Search and reason over your Obsidian-style Markdown vault, right from ChatGPT.

  • Serve a folder of Markdown notes as an MCP server: hybrid search, reading, and sourced answers.

  • Search your Obsidian vault to quickly find notes by title or keyword, summarize related content, a…

View all MCP Connectors

Latest Blog Posts

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/Utkarshsharma30/obsidian-knowledge-mcp'

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