ツール概要
Linkly AI は MCP(Model Context Protocol)を通じて AI アシスタントに 6 つのツールを公開し、段階的なドキュメントアクセスワークフローを構成します:list_libraries(ナレッジライブラリの一覧表示)と explore(ドキュメントコレクションの概要表示)。
search
ドキュメントを検索し、関連する結果を取得
outline
ドキュメントのアウトラインを表示し、構造を把握
grep
正規表現で特定のテキストパターンを検索
read
ドキュメントの内容を読み取り、詳細情報を取得
list_libraries
ナレッジライブラリとそのドキュメント数を一覧表示
explore
ドキュメントコレクションのテーマと構造の概要を表示
検索(search)
インデックス済みのローカルドキュメントを検索し、最も関連性の高い結果リストを返します。パラメータ
| パラメータ | 型 | 必須 | デフォルト値 | 説明 |
|---|---|---|---|---|
query | string | はい | — | 検索キーワードまたはフレーズ |
limit | number | いいえ | 20 | 最大返却結果数(1-50) |
doc_types | string[] | いいえ | 全部 | ドキュメントタイプでフィルター、例:["pdf", "md", "docx"] |
library | string | いいえ | — | 特定のライブラリに検索を限定します。list_libraries で利用可能なライブラリを確認できます |
path_glob | string | いいえ | — | SQLite GLOB 構文でファイルパスをフィルターします。* は任意の文字列(/ を含む)、? は単一文字にマッチします。常に大文字小文字を区別します |
output_format | string | いいえ | markdown | json に設定すると構造化 JSON 出力を取得 |
返却フィールド
各検索結果には以下の情報が含まれます:| フィールド | 説明 |
|---|---|
doc_id | ドキュメントの一意識別子。後続の outline/read 呼び出しに使用 |
title | ドキュメントタイトル |
path | ファイルパス |
relevance | 関連度スコア(0-1) |
word_count | ドキュメントの語数 |
total_lines | ドキュメントの総行数 |
has_outline | 利用可能なアウトラインがあるか |
modified_at | 最終更新日時 |
keywords | 抽出されたキーワードリスト |
snippet | マッチした内容のスニペット |
使用例
アウトライン(outline)
1 つまたは複数のドキュメントの構造化されたアウトラインとメタデータを取得し、ドキュメント構造の迅速な把握と対象セクションの特定に役立ちます。パラメータ
| パラメータ | 型 | 必須 | デフォルト値 | 説明 |
|---|---|---|---|---|
doc_ids | string[] | はい | — | ドキュメント ID リスト(検索結果から取得) |
expand | string[] | いいえ | 自動 | 展開するノード ID(例:["2", "3.1"])、省略するとすべての階層を自動表示 |
output_format | string | いいえ | markdown | json に設定すると構造化 JSON 出力を取得 |
アウトラインを使うべきタイミング
| シナリオ | 推奨 |
|---|---|
| 50 行超のドキュメントでアウトラインあり | まずアウトラインを確認し、対象セクションを読み取る |
| 短いドキュメント(50 行未満) | アウトラインをスキップし、read で全文を直接読む |
has_outline: false のドキュメント | grep でパターンを検索するか、read でページごとに閲覧 |
アウトライン機能はブックマーク付きの PDF、Markdown、DOCX
のドキュメントで最も効果的です。長いドキュメントや書籍を読む際に特に有効です。
プレーンテキストやブックマークのない PDF
へのアウトラインサポートは、今後のイテレーションで追加予定です。
使用例
Grep
単一のドキュメント内で正規表現パターンにより特定の行を検索します。アウトラインが利用できないhas_outline=false のドキュメントに最適です。search の後に使用して、名前、日付、用語、識別子、その他のパターンの正確な位置を特定し、read で offset を指定して前後の文脈を確認します。すべてのドキュメントタイプ(PDF、Markdown、DOCX、TXT、HTML)で動作します。複数のドキュメントを検索する場合は、ドキュメントごとに grep を 1 回呼び出してください。
パラメータ
| パラメータ | 型 | 必須 | デフォルト値 | 説明 |
|---|---|---|---|---|
pattern | string | はい | — | 検索する正規表現パターン |
doc_id | string | はい | — | 検索対象のドキュメント ID(検索結果から取得) |
context | number | いいえ | 3 | 各マッチの前後に表示するコンテキスト行数 |
before | number | いいえ | — | 各マッチの前に表示するコンテキスト行数(context を上書き) |
after | number | いいえ | — | 各マッチの後に表示するコンテキスト行数(context を上書き) |
case_insensitive | boolean | いいえ | false | 大文字小文字を区別しないマッチング |
output_mode | string | いいえ | content | content(コンテキスト付きマッチ行)または count(マッチ数のみ、先に合計を確認する場合) |
limit | number | いいえ | 20 | 返却するマッチ行の最大数(最大 100) |
offset | number | いいえ | 0 | ページネーション用にスキップするマッチ数 |
output_format | string | いいえ | markdown | json に設定すると構造化 JSON 出力を取得 |
Grep とアウトラインの使い分け
| シナリオ | 推奨 |
|---|---|
| 特定の用語、名前、日付を検索したい | パターンを指定して grep を使用 |
| ドキュメント全体の構造を把握したい | outline を使用 |
アウトラインがないドキュメント(has_outline: false) | grep でコンテンツを検索 |
| パターンの検索(メール、ID、数値など) | 正規表現で grep を使用 |
使用例
読み取り(read)
ドキュメントの内容を行番号での位置指定とページネーションで読み取ります。長いドキュメントの特定部分の読み取りに適しています。Read ツールは Claude AI SDK と一貫した動作をするため、各種 Agentic AI モデルで最適な結果が得られます。パラメータ
| パラメータ | 型 | 必須 | デフォルト値 | 説明 |
|---|---|---|---|---|
doc_id | string | はい | — | ドキュメント ID(検索結果から取得) |
offset | number | いいえ | 1 | 開始行番号(1 から開始) |
limit | number | いいえ | 200 | 読み取り行数(最大 500) |
output_format | string | いいえ | markdown | json に設定すると構造化 JSON 出力を取得 |
コンテンツ形式
Read ツールは行番号付きの内容を返し、参照と位置特定が容易です:
ページネーション戦略
長いドキュメントの場合、分割して読み取ることをお勧めします:read でその範囲の内容を正確に読み取れます。
使用例
ライブラリ一覧(list_libraries)
ユーザーが設定したすべてのナレッジライブラリを、説明とドキュメント数とともに一覧表示します。パラメータ
パラメータは不要です。ユースケース
- ユーザーが「どんなライブラリがありますか?」と質問した場合
searchのlibraryパラメータを使用する前に、ライブラリ名を確認する場合
探索(explore)
インデックス済みの全ドキュメントまたは特定のライブラリの鳥瞰的な概要を取得します。ドキュメントタイプの分布、ディレクトリ構造(ファイル数と語数の中央値付き)、上位キーワード(出典の帰属付き)を返します。パラメータ
| パラメータ | 型 | 必須 | デフォルト値 | 説明 |
|---|---|---|---|---|
library | string | いいえ | — | 特定のライブラリに限定します。省略するとすべてのドキュメントを探索します |
ユースケース
- ユーザーがナレッジベースやドキュメントコレクションの内容を知りたい場合
- ユーザーに特定の検索トピックがなく、利用可能なテーマや方向性を発見したい場合
- AI アシスタントが効果的な検索戦略を策定するために、規模とトピック分布を把握する必要がある場合
search クエリに活用します。
ワークフロー例
完全なワークフロー:CLI 方式
以下の例は、CLI を使って完全なドキュメント検索を行う方法を示しています:完全なワークフロー:MCP 方式
AI アシスタントが MCP プロトコルでツールを呼び出す場合、リクエスト形式は以下の通りです:よくある質問
どのドキュメント形式に対応していますか?
どのドキュメント形式に対応していますか?
Linkly AI は現在、以下の形式に対応しています:
| 形式 | 拡張子 | アウトライン対応 |
|---|---|---|
| Markdown | .md, .mdx | Yes |
| Word | .docx | Yes |
.pdf | Partial | |
| プレーンテキスト | .txt | No |
| HTML | .html, .htm | Partial |
| 画像(OCR) | .png, .jpg, .jpeg, .bmp, .webp | No |
アウトラインが利用できない場合はどうすればよいですか?
アウトラインが利用できない場合はどうすればよいですか?
ドキュメントに利用可能なアウトラインがない場合(
has_outline: false)、以下の方法があります:readツールを直接使用して、ドキュメントの内容をページごとに閲覧します- まずドキュメントの冒頭(デフォルト 200 行)を読み取り、大まかな内容を把握してから続きを読むか判断します
長いドキュメントはどのように処理すればよいですか?
長いドキュメントはどのように処理すればよいですか?
推奨フロー:
- まず
outlineでドキュメントの構造を把握します(アウトラインがある場合) - アウトライン内の行範囲に基づいて、
readのoffsetとlimitパラメータで対象セクションを正確に読み取ります - 1 回の読み取りは最大 500 行です。
offsetを調整してページごとに読み取ります
MCP サービスのデフォルトポートは何番ですか?
MCP サービスのデフォルトポートは何番ですか?
デフォルトポートは 60606 です。このポートが使用中の場合、アプリは自動的に他のポートを試行します。Linkly AI Desktop の設定で実際に使用されているポートを確認できます。
検索結果が不正確な場合はどうすればよいですか?
検索結果が不正確な場合はどうすればよいですか?
以下をお試しください:
- より正確なキーワードを使用する
- 自然言語での記述を使用する(ベクトルセマンティックマッチングを活用)
- キーワードと同義語を組み合わせる(例:
"authentication auth login sign-in") --typeで特定のドキュメントタイプをフィルターし、検索範囲を絞り込む

