docs-search について
Docs Searchは、ライブラリ文書のローカルGrounded Docsインデックスを検索するコマンドラインスキルです。開発者向けに、登録済みライブラリやバージョンの確認、文書検索、バージョン条件に合う版の特定を行います。
主な機能
- 01登録済みライブラリと版の一覧表示
- 02自然言語による文書検索
- 03条件に合うインデックス版の特定
- 04JSON、YAML、TOON形式に対応
活用シーン
- 01インデックス文書でAPIの動作を調べる
- 02ライブラリの版が登録済みか確認
- 03条件に合う文書バージョンを選択
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ arabold/ docs-mcp-server --skill docs-searchインストール後、Claude Code で/docs-searchを入力して読み込まれたか確認します。
詳細
Docs Search
ローカルの Grounded Docs インデックスを検索して、ライブラリのドキュメントを確認します。これらのコマンドは、デフォルトで JSON を出力し、インデックスを変更しません。
使用するタイミング
- ライブラリの API や動作について質問に答える必要があるとき。
- インデックスに登録されているライブラリとバージョンを確認したいとき。
- バージョン制約に最適な、インデックス登録済みのバージョンを確認したいとき。
ライブラリがインデックスに登録されているか不明な場合は、まず list を実行してください。登録されていない場合は、検索する前に docs-manage スキルを使ってインデックスに登録してください。
コマンド
3 つのコマンドは、すべて次のフラグを受け付けます。
| フラグ | 説明 |
|---|---|
--output json|yaml|toon | 出力形式(デフォルト:JSON) |
--server-url <url> | ローカルストアの代わりにリモートワーカーを使用します(例:http://localhost:8080/api) |
--quiet | エラーのみをログに記録します |
--verbose | デバッグ出力をログに記録します |
list
インデックス登録済みのすべてのライブラリとそのバージョンを一覧表示します。
npx @arabold/docs-mcp-server@latest list --output yaml
出力例:
- name: react
versions:
- id: 1
version: 19.0.0
documentCount: 412
uniqueUrlCount: 198
indexedAt: 2026-10-18T22:28:47.000Z
status: completed
sourceUrl: https://react.dev/reference/react
preserveHashes: false
version が空の場合、そのライブラリのバージョン指定のないドキュメントを表します。status: completed のバージョンは、インデックス登録が完了しています。それ以外のステータス(queued、running、updating、failed、cancelled、not_indexed)では、コンテンツが欠落または不完全な可能性があり、そのようなバージョンには progress フィールドが含まれることがあります。空のインデックスは [] を出力します。
search
自然言語のクエリで、インデックス登録済みのライブラリを検索します。
npx @arabold/docs-mcp-server@latest search <library> "<query>" [options]
| フラグ | 別名 | デフォルト | 説明 |
|---|---|---|---|
--version <ver> | -v | 最新バージョン | 正確なバージョンまたは範囲(例:18.x、5.2.x)。正確なバージョンを指定した場合、最も近い古いバージョンにも一致します。 |
--limit <n> | -l | 5 | 結果の最大数(1~100) |
--exact-match | -e | false | 古いバージョンへのフォールバックを行わず、指定した --version にのみ一致させます。--version が必要です。 |
--embedding-model <model> | 埋め込みモデル。例:openai:text-embedding-3-small |
例:
npx @arabold/docs-mcp-server@latest search react "useEffect cleanup" --version 18.x --limit 3 --output yaml
出力は一連の文章です。同じページ内で近接している一致箇所は 1 つの文章にまとめられ、離れた箇所は別々の項目として返されるため、url が複数回現れることがあります。各項目には次の内容が含まれます。
url:ページの URLcontent:周辺のコンテキストを含む一致箇所。Markdown またはテキスト形式ですscore:関連度スコアmimeType、sourceMimeType:保存されたコンテンツと元のコンテンツの種類contentUrl:コンテンツの取得元 URL がurlと異なる場合に含まれます
一致する結果がない場合は [] を出力します。ライブラリがインデックスに登録されていない場合、コマンドは類似するライブラリ名を提案するエラーを出して失敗します。
find-version
パターンに最適な、インデックス登録済みのバージョンを特定します。
npx @arabold/docs-mcp-server@latest find-version <library> [--version <pattern>]
| フラグ | 別名 | 説明 |
|---|---|---|
--version <pattern> | -v | 正確なバージョンまたは範囲。最新バージョンを使う場合は省略します |
例:
npx @arabold/docs-mcp-server@latest find-version react --version "18.x" --output yaml
bestMatch: 18.3.1
hasUnversioned: false
message: "Best match: 18.3.1."
一致するバージョンがなく、バージョン指定のないドキュメントが存在する場合(hasUnversioned: true)、bestMatch は null になります。どちらも存在しない場合、コマンドは失敗します。
出力の解釈
--output で別の形式を指定しない限り、結果は JSON で stdout に出力されます。ログは stderr に出力され、ターミナル以外ではエラーのみがログに記録されます。進行状況のメッセージを表示するには、LOG_LEVEL=INFO を設定するか、--verbose を指定してください。コマンドが失敗すると、ゼロ以外のステータスで終了します。
一般的なワークフロー
# 1. Check what is indexed
npx @arabold/docs-mcp-server@latest list --output yaml
# 2. Search for relevant docs
npx @arabold/docs-mcp-server@latest search react "server components" --version 19.x --output yaml
# 3. If the library is missing, index it first (docs-manage skill), then search again