Shopify CEO の Tobi Lütke が開発したオープンソースのオンデバイス検索エンジン。手元に散らばった Markdown ノート・会議メモ・技術ドキュメントをまとめてインデックス化し、キーワードでも自然文でも探せる。BM25 による全文検索、ベクトルによる意味検索、そしてローカル LLM による再ランキングを組み合わせたハイブリッド方式が特徴で、モデルの実行を含めてすべて自分のマシン上で完結する。MCP サーバーとしても動くため、Claude Code などの AI エージェントから「自分のメモを検索させる」記憶基盤としても使える。GitHub で 2 万件を超えるスターを集めており、ライセンスは MIT。
主な特徴
- 3 層のハイブリッド検索: 完全一致に強い BM25 全文検索、言い換えに強いベクトル検索、そして候補を並べ替えるローカル LLM の再ランカーを Reciprocal Rank Fusion で統合する。単純なキーワード検索では拾えない「言い方が違うだけの同じ話題」も引き当てられる
- 完全ローカル動作: 埋め込みモデルも再ランカーも GGUF 形式のローカルモデル(node-llama-cpp 経由)で動く。ノートの中身が外部の API に送信されないため、業務メモや個人の記録を扱いやすい
- Markdown を理解したチャンク分割: 見出し・段落・コードブロックといった構造の切れ目を見てテキストを分割する。コードについては tree-sitter による構文単位の分割も選べ、途中で意味が切れた断片が返りにくい
- コレクション単位の管理:
qmd collection addで複数のディレクトリをそれぞれコレクションとして登録し、検索時に対象を絞り込める。Obsidian の Vault、リポジトリの docs、議事録フォルダを別々に扱うといった運用ができる - MCP サーバー / Claude Code プラグイン:
querygetmulti_getstatusといったツールを MCP 経由で公開し、AI エージェントが会話の途中で自分のナレッジベースを検索できる。Claude Code にはclaude plugin install qmd@qmdでプラグインとして導入できる - 用途で選べる 3 つの検索コマンド: 速度優先の
search(BM25 のみ)、意味検索のvsearch、クエリ拡張と再ランキングまで行う最高精度のqueryを使い分けられる。出力形式は JSON・CSV・Markdown などから選べ、スクリプトへの組み込みも容易
料金
| プラン | 料金 | 主な特徴 |
|---|---|---|
| オープンソース(MIT ライセンス) | $0 | 全機能を利用可能。モデルもローカル実行のため利用料は発生しない |
料金は2026年8月時点の情報です。最新の情報は公式リポジトリをご確認ください。
なお、初回セットアップ時に埋め込み用・再ランキング用・クエリ拡張用のモデルが自動でダウンロードされ、合計で 2GB 前後のディスク容量を使う(~/.cache/qmd/models/ にキャッシュされる)。金銭的なコストは発生しないが、ディスクと計算資源は自前で用意する形になる。
メリット・デメリット
✅ メリット
- ノートの内容を外部に送らずに済むため、社外秘の議事録や個人的な記録でも安心して索引化できる
- 無料かつ MIT ライセンスで、商用利用や社内ツールへの組み込みにも制約が少ない
- キーワード検索と意味検索の両方を 1 つのコマンドで扱え、「うろ覚えの内容」から目的のメモに辿り着ける
- MCP 対応により、AI エージェントに「自分の過去の記録」を参照させる用途に直結する
- 出力形式が選べる CLI なので、既存のスクリプトやエディタ連携に組み込みやすい
⚠️ デメリット
- CLI ツールであり GUI は付属しない。ターミナル操作に慣れていないと扱いにくい
- Node.js 22 以上または Bun が必要で、macOS では拡張機能に対応した Homebrew 版 SQLite を用意する必要がある
- ローカル LLM を動かすため、再ランキングまで行う
queryは環境によっては応答に時間がかかる - 既定の埋め込みモデル(EmbeddingGemma)は英語向けの最適化が中心で、日本語中心のノートでは多言語モデルへの切り替えと再インデックスが必要になる場合がある
- 対象は Markdown を中心としたテキスト。PDF や Office ファイルをそのまま索引化する用途には向かない
類似サービスとの比較
| 比較項目 | QMD | Khoj | Obsidian(標準検索) | ripgrep |
|---|---|---|---|---|
| 提供形態 | CLI(オープンソース) | セルフホスト / クラウド | ノートアプリ | CLI(オープンソース) |
| 検索方式 | BM25 + ベクトル + LLM 再ランキング | 全文 + 意味検索 | キーワード中心 | 正規表現による全文一致 |
| ローカル完結 | 可能 | ローカルモデル利用時は可能 | 可能 | 可能 |
| AI エージェント連携 | MCP サーバー / Claude Code プラグイン | チャット UI・API 経由 | プラグインに依存 | なし |
| 対象データ | Markdown・ドキュメント全般 | ノート・文書・一部のオンラインソース | 自身の Vault 内のノート | 任意のテキストファイル |
こんな人におすすめ
- 数年分の Markdown ノートや議事録が溜まっていて、キーワード検索だけでは目的の記録に辿り着けなくなっている人
- 社外秘の資料を扱うため、検索インデックスやモデル推論を外部サービスに預けたくない人
- Claude Code などの AI エージェントに、自分の過去の記録を参照させながら作業させたい開発者
- Obsidian の Vault やリポジトリの docs を横断して一括検索したい人
- CLI ツールを普段から使っていて、検索結果を JSON で受け取って自分のワークフローに組み込みたい人
まとめ
QMD は、ローカルに閉じたまま高精度の検索を実現することに振り切ったツールである。BM25・ベクトル検索・LLM 再ランキングという現代的な検索の構成要素を、外部サービスに依存せず 1 つの CLI にまとめた点が最大の価値といえる。GUI がなくセットアップに前提条件がある分、導入のハードルはやや高いが、蓄積したノートを AI エージェントの記憶として活かしたい人にとっては有力な選択肢になる。まずは 1 つのコレクションを登録して qmd query の精度を確かめてみるとよい。