QMD MCP
QMD MCP
QMD MCP verpackt QMD als einen langlaufenden Streamable-HTTP-MCP-Server. Es bietet QMD-Suche und Dokumentabruf zusammen mit begrenzten Indexwartungsoperationen, ohne beliebige Shell-Ausführung zu ermöglichen.
Dies ist eine von der Community gepflegte Integration. Sie ist weder mit dem Upstream-QMD-Projekt verbunden, noch von ihm unterstützt oder offiziell gepflegt.
Feedback und Beiträge
Nutzen Sie GitHub Issues für Fehlerberichte und Feature-Anfragen sowie Pull Requests für vorgeschlagene Änderungen. Siehe CONTRIBUTING.md für den Entwicklungsablauf, Testanforderungen und Codekonventionen. Sicherheitsprobleme müssen dem privaten Prozess in SECURITY.md folgen.
Änderungen an Releases werden in CHANGELOG.md festgehalten.
Related MCP server: Keenable MCP
Schnellstart
Das öffentliche Docker-Image wird auf der GitHub Container Registry (GHCR) veröffentlicht:
ghcr.io/x1pher/qmd-mcp:v0.1.3Das Paket ist öffentlich, daher benötigt Docker keine GitHub-Anmeldung, um es zu ziehen.
Für Produktionsbereitstellungen verwenden Sie den unveränderlichen Digest, der im entsprechenden GitHub-Release veröffentlicht wird, anstatt sich allein auf den Versions-Tag zu verlassen.
Das Image unterstützt derzeit linux/amd64. Es behält bewusst nur die native QMD-linux-x64-Llama-Laufzeit bei, um das Image begrenzt zu halten.
1. Erstellen Sie die Verzeichnisse
mkdir -p qmd/config qmd/content
cd qmdLegen Sie die Markdown-Dateien, die QMD indizieren soll, in content/ ab.
2. Erstellen Sie config/index.yml
global_context: >-
This is a local Markdown knowledge base. Search results are discovery evidence;
read the source document before relying on a material claim.
collections:
notes:
path: /vault
pattern: "**/*.md"
ignore:
- "archive/**"
archive:
path: /vault/archive
pattern: "**/*.md"
includeByDefault: false
append-only-log:
path: /vault/logs
pattern: "history.md"
includeByDefault: false
embedding: falsepath-Werte beziehen sich auf Pfade innerhalb des Containers. Das Compose-Beispiel unten mountet ./content unter /vault.
embedding: false ist eine QMD-MCP-Wrapper-Erweiterung für Sammlungen, die rein lexikalisch bleiben sollen. Die Dateien werden weiterhin indiziert und sind für explizite lexikalische (lex) Suchen verfügbar, sind jedoch vom Embedding-Status, geplanten Embeddings und manuellen start_embed-Aufträgen ausgeschlossen. Verwenden Sie dies für große Append-only-Protokolle oder anderes Material für exakte Nachschläge, bei denen das wiederholte Neuaufbauen von Vektoren Kosten verursacht, ohne nützlichen semantischen Abruf zu bieten.
3. Erstellen Sie compose.yml
services:
qmd-mcp:
image: ghcr.io/x1pher/qmd-mcp:v0.1.3
container_name: qmd-mcp
environment:
QMD_FORCE_CPU: "1"
QMD_REFRESH_INTERVAL_MINUTES: "15"
QMD_REFRESH_INITIAL_DELAY_SECONDS: "120"
ports:
- "127.0.0.1:8181:8181"
volumes:
- ./content:/vault:ro
- ./config:/config:ro
- qmd-data:/data
healthcheck:
test:
- CMD
- node
- -e
- >-
fetch('http://127.0.0.1:8181/health')
.then(r=>process.exit(r.ok?0:1))
.catch(()=>process.exit(1))
interval: 30s
timeout: 10s
retries: 5
start_period: 30s
restart: unless-stopped
volumes:
qmd-data:Das Beispiel bindet den HTTP-Port nur an Loopback. Wenn ein anderer Container QMD MCP direkt aufrufen muss, verbinden Sie beide Container mit einem gemeinsamen Docker-Netzwerk und verwenden Sie den QMD-Dienstnamen, anstatt ihn auf dem Host breit zugänglich zu machen.
QMD_FORCE_CPU=1 ergibt eine vorhersehbare CPU-only-Bereitstellung. Entfernen Sie es oder setzen Sie es auf 0, wenn Sie absichtlich möchten, dass QMD nach unterstützter Beschleunigung sucht.
4. Starten Sie den Container
docker compose up -dPrüfen Sie den Dienst:
curl --fail http://127.0.0.1:8181/healthDer Streamable-HTTP-MCP-Endpunkt ist:
http://127.0.0.1:8181/mcpDocker-CLI-Alternative
Sie können dasselbe Release ohne Compose ausführen:
docker volume create qmd-data
docker run -d \
--name qmd-mcp \
--restart unless-stopped \
-p 127.0.0.1:8181:8181 \
-e QMD_FORCE_CPU=1 \
-e QMD_REFRESH_INTERVAL_MINUTES=15 \
-e QMD_REFRESH_INITIAL_DELAY_SECONDS=120 \
-v "$PWD/content:/vault:ro" \
-v "$PWD/config:/config:ro" \
-v qmd-data:/data \
ghcr.io/x1pher/qmd-mcp:v0.1.3Was QMD M
This server cannot be deployed
Maintenance
Related MCP Connectors
QuLab MCP remote server (Streamable HTTP) for computational science and lab tools.
Read-only MCP server for the OrchestKit docs: full-text search + Markdown fetch. No auth.
Remote MCP server exposing SMI Aware tools, resources, and skills over Streamable HTTP.
Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceRemote HTTP/SSE MCP server for web search with full page content extraction, search summaries, and API authentication.MIT
- AlicenseAqualityBmaintenanceMCP server for live web search and clean-markdown page fetch over the Keenable web index.278 npm6MIT
- FlicenseNot gradedqualityDmaintenanceA web search MCP server using DuckDuckGo, supporting streaming HTTP and session management.1-
- FlicenseAqualityBmaintenancePrivate local stdio MCP server for metadata-only discovery, recording, and querying of Markdown and PDF documents.4-