Ref MCPとは?
Ref MCPは、コーディングエージェントと開発者ツールをキュレーションされた技術文書の宇宙に接続する特別なMCPサーバーです。エージェントは、最も関連性の高い文書の部分を要求に応じて検索、取得、分析できます。トークンの使用を最小限に抑え、APIやライブラリを扱う際のLLMのパフォーマンスを向上させます。
Ref MCPの設定方法
Ref MCPをMCPサーバーとしてセットアップする方法は二つあります:
1. ストリーミングHTTP(推奨):
- 対応クライアント(例:Cursor)を通じて提供されたインストールリンクを使ってRef MCPをインストールするか、サーバー設定を直接指定します:
"Ref": { "type": "http", "url": "https://api.ref.tools/mcp?apiKey=YOUR_API_KEY" }
- APIキーを取得するために、ref.toolsにサインアップする必要があります。
2. ローカルスタンダードI/Oサーバー(レガシー):
"Ref": {
"command": "npx",
"args": ["ref-tools-mcp@latest"],
"env": {
"REF_API_KEY": <your_api_key>
}
}
- Node.jsとnpmが必要です。
オプションとして、ローカル開発とデバッグのためにRef MCPのリポジトリをクローンし、npm install
で依存関係をインストールし、npm run dev
で実行できます。
Ref MCPの使用方法
- 上記で説明した設定を使用して、MCP対応のエージェントまたはツールをRef MCPサーバーに接続します。
- 利用可能なツール(例:
ref_search_documentation
を使ってAPIドキュメントを検索する、またはref_read_url
で関連する文書内容を取得および濃縮する)を使用します。 - エージェントは、コード生成または理解に必要な内容だけにコンテキストを賢く絞り込む探索と読み取りを繰り返すことができます。
- OpenAIとの統合において、Ref MCPは自動的にツールをOpenAI互換の関数名にマッピングします。
開発と検査のために、MCP Inspectorを使用して、インタラクションを視覚的にテストおよび監視します。
主な機能
- トークン効率の良い文書取得: 最もコンテキスト関連のセクションのみを返します。これにより、過剰なトークンコストとパフォーマンス低下を回避します。
- 反復的でエージェントに優しい検索: セッション中に検索結果を調整し、類似のプロンプトに対して結果を繰り返しません。
- オンデマンドでコンテキストの強化: LLMが文書を必要な時に正確に引き出せるようにします。
- 公開およびプライベートソースの両方をサポート: 公開文書、ウェブページ、GitHub、および社内リポジトリやPDFなどのプライベートリソースを検索します。
- 統合されたセッション管理: エージェントセッション内の検索と読解の軌跡を追跡し、最適なコンテキストを提供します。
- OpenAIとの互換性: ツール名を自動的に最適化し、OpenAIの研究やコーディングエージェントとのシームレスな使用を実現します。
ユースケース
- AI駆動のコードアシスタント: コーディングエージェント(例:Claude DesktopやCursor)に正確な技術文書のアクセスを提供します。
- 自動化されたAPI統合: エージェントがAPIエンドポイントを理解、実装、トラブルシューティングする手助けを行い、最も関連性の高い文書を提供します。
- コードレビューと監査ボット: エージェントがコードをレビューする際に権威ある文書を取得して引用する能力を付与します。
- 開発者オンボーディングツール: 企業や公開されている文書から情報を検索して抽出し、一般的な開発者の質問に動的に対応します。
- 深い技術調査: 複数のソースを効率的に照会し、正確な回答を得るためにできるだけ小さなコンテキストセットに焦点を当てます。
よくある質問
Q1: 文書コンテキストでトークンを最小化することはなぜ重要ですか?
A1: LLMは大きく雑音の多いコンテキストウィンドウでパフォーマンスが低下し、トークンにはコストがかかります。文書の関連部分だけを引き出すことで、Ref MCPはLLMのパフォーマンスを向上させ、無駄なAPIコストを削減します。
Q2: Ref MCPはどんな種類の文書を検索できますか?
A2: Ref MCPは広範な公開文書(API、ライブラリ、ウェブドキュメント)を検索し、GitHubリポジトリやPDFなどのプライベート/内部リソースもインデックスできます。
Q3: Ref MCPはどのようにLLMエージェントが同じコンテンツを繰り返し読むのを防ぎますか?
A3: アクティブなセッション内で、Ref MCPは前の検索と返された結果を追跡し、各類似の検索が新しい非重複文書を生成するようにします。これにより、効率的なプロンプトエンジニアリングが促進されます。
Q4: 自分のエージェントやツールでRef MCPを使用できますか?
A4: はい、MCPプロトコルをサポートするエージェントやアプリケーションは、HTTPまたはスタンダードI/Oモードを使用してRef MCPに接続できます。
Q5: ref_search_documentation
とref_read_url
の違いは何ですか?
A5: ref_search_documentation
はクエリによって関連する文書リンクとコンテキストを見つけ、ref_read_url
はターゲットページを取得してマークダウン要約に変換し、エージェントが消費しやすくします。