name: qmd
description: Search personal markdown knowledge bases, notes, meeting transcripts, and documentation using QMD - a local hybrid search engine. Combines BM25 keyword search, vector semantic search, and LLM re-ranking. Use when users ask to search notes, find documents, look up information in their knowledge base, retrieve meeting notes, or search documentation. Triggers on "search markdown files", "search my notes", "find in docs", "look up", "what did I write about", "meeting notes about".
license: MIT
compatibility: Requires qmd CLI or MCP server. Install via bun install -g https://github.com/tobi/qmd.
metadata:
author: tobi
version: "1.1.1"
QMD is a local, on-device search engine for markdown content. It indexes your notes, meeting transcripts, documentation, and knowledge bases for fast retrieval.
!qmd status 2>/dev/null || echo "Not installed. Run: bun install -g https://github.com/tobi/qmd"
Choose the right search mode for the task:
| Command | Use When | Speed |
|---|---|---|
qmd search |
Exact keyword matches needed | Fast |
qmd vsearch |
Keywords aren't working, need conceptual matches | Medium |
qmd query |
Best results needed, speed not critical | Slower |
# Fast keyword search (BM25)
qmd search "your query"
# Semantic vector search (finds conceptually similar content)
qmd vsearch "your query"
# Hybrid search with re-ranking (best quality)
qmd query "your query"
-n <num> # Number of results (default: 5)
-c, --collection <name> # Restrict to specific collection
--all # Return all matches
--min-score <num> # Minimum score threshold (0.0-1.0)
--full # Show full document content
--json # JSON output for processing
--files # List files with scores
--line-numbers # Add line numbers to output
# Get document by path
qmd get "collection/path/to/doc.md"
# Get document by docid (shown in search results as #abc123)
qmd get "#abc123"
# Get with line numbers for code review
qmd get "docs/api.md" --line-numbers
# Get multiple documents by glob pattern
qmd multi-get "docs/*.md"
# Get multiple documents by list
qmd multi-get "doc1.md, doc2.md, #abc123"
# Check index status and available collections
qmd status
# List all collections
qmd collection list
# List files in a collection
qmd ls <collection-name>
# Update index (re-scan files for changes)
qmd update
| Score | Meaning | Action |
|---|---|---|
| 0.8 - 1.0 | Highly relevant | Show to user |
| 0.5 - 0.8 | Moderately relevant | Include if few results |
| 0.2 - 0.5 | Somewhat relevant | Only if user wants more |
| 0.0 - 0.2 | Low relevance | Usually skip |
qmd statusqmd search "topic" -n 10qmd vsearch "describe the concept"qmd query "question" --min-score 0.4qmd get "#docid" --full# Search for meetings about a topic
qmd search "quarterly review" -c meetings -n 5
# Get semantic matches
qmd vsearch "performance discussion" -c meetings
# Retrieve the full meeting notes
qmd get "#abc123" --full
# Hybrid search for best results
qmd query "authentication implementation" --min-score 0.3 --json
# Get all relevant files for deeper analysis
qmd query "auth flow" --all --files --min-score 0.4
This plugin configures the qmd MCP server automatically. When available, prefer MCP tools over Bash for tighter integration:
| MCP Tool | Equivalent CLI | Purpose |
|---|---|---|
qmd_search |
qmd search |
Fast BM25 keyword search |
qmd_vector_search |
qmd vsearch |
Semantic vector search |
qmd_deep_search |
qmd query |
Deep search with expansion and reranking |
qmd_get |
qmd get |
Retrieve document by path or docid |
qmd_multi_get |
qmd multi-get |
Retrieve multiple documents |
qmd_status |
qmd status |
Index health and collection info |
For manual MCP setup without the plugin, see references/mcp-setup.md.