obsidian-mermaid-mcp
obsidian-mermaid-mcp
Lokale, tokenfreie, verlustfreie Mermaid-Darstellung und reversible Notiz-Synchronisierung für Obsidian-Vaults über alle KI-Agenten hinweg.
🌟 Hauptmerkmale
✍️ Prompt-freies Agent-Schreiberlebnis KI-Agenten (Codex, Claude Code, Antigravity, Cursor, Windsurf, Cline usw.) können ganz natürlich standardmäßiges Markdown mit
```mermaid-Codeblöcken schreiben. Der Hintergrund-Watcher konvertiert sie automatisch in eingebettete SVGs innerhalb von ~2 Sekunden, ohne dass spezielle Prompts erforderlich sind.🔒 100% lokal & privat Rendert lokal über headless Chrome/Puppeteer. Keine Cloud-Rendering-APIs, keine Token-Kosten und keine Netzwerklecks.
🔄 Verlustfrei & vollständig reversibel Der ursprüngliche Mermaid-Code wird sicher in
.mmd-Sidecar-Dateien und SVG-<metadata>aufbewahrt. Mit einem Klick jederzeit zurück in die ursprünglichen Mermaid-Codeblöcke umwandelbar.🧠 Intelligente Vault-Anpassung Erkennt automatisch
.obsidian/app.json(unterstützt ordnerrelativeassets/${filename}, Vault-Wurzel-attachmentsund gleichordnerige Setups) ohne Konfiguration.⚡ Zwei Betriebsmodi
Automatischer Watcher-Modus (Hintergrund-Datei-Watcher für nahtloses Schreiben)
MCP-Tool-Modus (4 standardmäßige stdio-MCP-Tools für direkte Agent-Aufrufe)
💻 Universelle Plattformunterstützung macOS, Linux, Windows, WSL und Docker.
🚀 Schnellstart
Voraussetzungen
Node.js:
>= 20.0.0Chrome / Chromium / Edge / Brave / Arc: An einem Standardort installiert oder über
PUPPETEER_EXECUTABLE_PATHangegeben.
Installation & Build (Lokales Node.js)
git clone https://github.com/IPromise-23/obsidian-mermaid-mcp.git
cd obsidian-mermaid-mcp
npm ci
npm run build
npm testInstallation & Build (Docker-Alternative)
git clone https://github.com/IPromise-23/obsidian-mermaid-mcp.git
cd obsidian-mermaid-mcp
docker build -t obsidian-mermaid-mcp:latest .👉 Detaillierter Docker-Leitfaden (MCP-Server & Docker Compose): docs/docker-guide.md
🛠️ Verwendungsmodus 1: Automatischer Watcher (Empfohlen)
Führen Sie den Watcher im Hintergrund aus, um neu geschriebene oder bearbeitete Mermaid-Blöcke in Ihren Obsidian-Notizen automatisch zu konvertieren.
Vordergrund-Test
node packages/watcher/dist/index.js watch \
--vault-root /path/to/your/obsidian/vault \
--apply \
--debounce-ms 3000Hinweis:
--applyist für tatsächliche Dateischreibvorgänge erforderlich. Ohne--applyarbeitet der Watcher nur im Vorschau-Modus.
Hintergrund-Daemon-Einrichtung
Wir bieten gebrauchsfertige Hintergrunddienst-Vorlagen für alle gängigen Plattformen:
macOS (LaunchAgent): Siehe
examples/daemons/com.obsidian-mermaid.watch.plistLinux (systemd-Benutzerdienst): Siehe
examples/daemons/obsidian-mermaid-watch.serviceWindows (Task Scheduler / PowerShell): Siehe
examples/daemons/register-task-windows.bat
👉 Detaillierter Daemon-Einrichtungsleitfaden: docs/daemon-setup.md
🔌 Verwendungsmodus 2: MCP-Tool-Modus
Konfigurieren Sie obsidian-mermaid-mcp als standardmäßigen MCP-Server in Ihrem bevorzugten KI-Host.
MCP-Konfigurationsbeispiel
{
"mcpServers": {
"obsidian-mermaid": {
"command": "node",
"args": ["/absolute/path/to/obsidian-mermaid-mcp/packages/mcp-server/dist/index.js"],
"env": {
"OBSIDIAN_MERMAID_VAULT_ROOT": "/absolute/path/to/your/vault"
}
}
}
}👉 Vollständiger Konfigurationsleitfaden für 10+ KI-Hosts (Codex, Claude Code, Cursor, Windsurf, Cline, Roo Code, Goose, Zed usw.):
Siehe docs/host-configs.md.
Verfügbare MCP-Tools
Tool-Name | Standardmodus | Beschreibung |
| preview | Mermaid-Fences in einer Notiz scannen, zu SVG rendern und Embed-Marker einfügen (erfordert |
| preview | Verwaltete SVG-Embed-Marker zurück in ursprüngliche Mermaid-Codefences umwandeln. |
| read-only | Rohe Mermaid-Quelle zu bereinigtem SVG rendern. |
| read-only | Mermaid-Quelle aus einer Notiz oder verwalteten SVG-Datei extrahieren oder wiederherstellen. |
📁 So funktioniert's: Vault-Transformation
Vor der Konvertierung (Standard-Markdown)
# Architecture Overview
```mermaid
flowchart LR
Client --> Server
Server --> Database
```Nach der Konvertierung (Sauberes eingebettetes SVG + Sidecar)
# Architecture Overview
![[assets/Architecture/mermaid-001-f97437d9e714d8ee.svg|600]]Generierte Dateistruktur
MyVault/
├── Architecture.md
└── assets/
└── Architecture/
├── mermaid-001-f974.svg # Sanitized, high-resolution SVG
└── mermaid-001-f974.mmd # Exact Mermaid source backup⚙️ Konfigurationsreferenz
Sie können das Verhalten über eine JSON-Konfigurationsdatei (--config /pfad/zu/config.json) oder Umgebungsvariablen anpassen.
Beispiel config.json:
{
"configVersion": 1,
"vaultRoot": "/path/to/vault",
"assetRoot": "assets",
"attachmentPattern": "{note_dir}/assets/{note_name}/mermaid-{index}-{hash}.svg",
"sourcePattern": "{note_dir}/assets/{note_name}/mermaid-{index}-{hash}.mmd",
"embedWidth": 600,
"theme": "default",
"background": "transparent",
"sourceStorage": "both",
"failurePolicy": "partial",
"renderer": {
"timeoutMs": 30000,
"browserIdleTimeoutMs": 300000,
"maxConcurrentRenders": 1,
"htmlLabels": false,
"securityLevel": "strict",
"executablePath": ""
},
"watcher": {
"enabled": true,
"debounceMs": 3000,
"apply": true
}
}Vorlagen-Platzhalter
{note_dir}: Unterverzeichnis der Notiz relativ zur Vault-Wurzel (z. B.SEM_AI/chapter1oder leer für Wurzelnotizen).{note_name}: Sicherer Dateiname der Notiz ohne.md-Erweiterung.{asset_root}: Konfiguriertes Asset-Root (Standard:assets).{index}: 3-stelliger Index des Diagramms innerhalb der Notiz (001,002usw.).{hash}: 16-stelliger SHA-256-Fingerabdruck der Mermaid-Quelle.{ext}: Dateierweiterung (svgodermmd).
🔍 Fehlerbehebung & FAQ
1. Browser nicht gefunden
Standardmäßig durchsucht der Server standardmäßige macOS-, Linux- und Windows-Verzeichnisse nach Google Chrome, Chromium, Microsoft Edge, Brave oder Arc. Wenn an einem benutzerdefinierten Ort installiert, setzen Sie:
export PUPPETEER_EXECUTABLE_PATH="/custom/path/to/chrome"Oder geben Sie "renderer.executablePath" in Ihrer config.json an.
2. Dunkles Theme unterstützen
Setzen Sie "theme": "dark" in config.json oder übergeben Sie "theme": "dark" in MCP-Tool-Aufrufen. Sie können auch "theme": "auto" mit "themeContext": "dark" verwenden.
3. So bearbeiten Sie ein bereits konvertiertes Diagramm
Option A: Führen Sie
restore_note(über MCP oder CLI) aus, um die Notiz zurück in```mermaid-Codeblöcke umzuwandeln, bearbeiten Sie sie und lassen Sie sie erneut synchronisieren.Option B: Bearbeiten Sie direkt die generierte
.mmd-Sidecar-Datei imassets/-Ordner. Der Watcher / die Sync-Engine erkennt die Sidecar-Änderung automatisch und generiert das SVG neu!
📄 Lizenz
MIT-Lizenz. Siehe LICENSE für Details.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Generate dynamic Mermaid diagrams and charts with AI assistance. Customize styles and export diagr…
Let Claude, Cursor, or ChatGPT author Mermaid diagrams your team can read and share.
Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/IPromise-23/obsidian-mermaid-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server