Integrations
Allows retrieving and indexing documents from Google Drive to provide up-to-date private information for RAG queries.
Powers the RAG query functionality, enabling the retrieval of relevant information from indexed documents.
LlamaIndex MCP デモ
このリポジトリでは、LlamaCloud を使用して MCP サーバーを作成する方法と、LlamaIndex を MCP クライアントとして使用する方法の両方を示します。
LlamaCloudをMCPサーバーとして
Claude Desktopのようなクライアントが利用できるローカルMCPサーバーを提供するには、 mcp-server.py
を使用します。これを使用することで、RAGを使用してClaudeに最新の個人情報を提供し、質問に答えるためのツールを提供できます。これらのツールは必要な数だけ提供できます。
LlamaCloudインデックスを設定する
- LlamaCloudアカウントを取得する
- 任意のデータソースで新しいインデックスを作成してください。今回のケースではGoogleドライブを使用し、LlamaIndexドキュメントのサブセットをソースとして提供しました。テスト目的であれば、ドキュメントを直接インデックスにアップロードすることもできます。
- LlamaCloud UIからAPIキーを取得する
MCPサーバーをセットアップする
- このリポジトリをクローンする
.env
ファイルを作成し、次の 2 つの環境変数を追加します。LLAMA_CLOUD_API_KEY
- 前の手順で取得したAPIキーOPENAI_API_KEY
- OpenAI APIキー。RAGクエリを実行するために使用されます。OpenAIを使用しない場合は、他のLLMを使用できます。
それではコードを見てみましょう。まずMCPサーバーをインスタンス化します。
次に、 @mcp.tool()
デコレータを使用してツールを定義します。
ここで使用するツールはllama_index_documentation
です。このツールはmcp-demo-2
というLlamaCloudインデックスをインスタンス化し、それをクエリエンジンとして使用してクエリに回答します。プロンプトには追加の指示も表示されます。LlamaCloudインデックスの設定方法については、次のセクションで説明します。
最後に、サーバーを実行します。
Claude Desktop との通信に使用されるstdio
トランスポートに注意してください。
Claudeデスクトップの設定
- Claude Desktopをインストールする
- メニューバーで
Claude
」→Settings
→Developer
」→Edit Config
を選択します。すると、お好みのテキストエディタで編集できる設定ファイルが表示されます。 - 設定は次のようになります (
$YOURPATH
リポジトリへのパスに置き換えてください)。
ファイルを構成した後は、必ずClaude Desktop を再起動してください。
これでクエリを実行する準備ができました。Claude Desktop のクエリボックスの下に、次のように、サーバー名がリストされたツールアイコンが表示されます。
MCPクライアントとしてのLlamaIndex
LlamaIndex には MCP クライアント統合機能も備わっており、任意の MCP サーバーをエージェントが使用できるツールセットに変換できます。 mcp-client.py
では、 BasicMCPClient
を使用してローカル MCP サーバーに接続しています。
デモを簡素化するため、上記でセットアップしたMCPサーバーと同じサーバーを使用しています。通常、LlamaCloudをLlamaIndexエージェントに接続する際にMCPは使用せず、 QueryEngineToolを使用してエージェントに直接渡します。
MCPサーバーをセットアップする
HTTPクライアントが使用できるローカルMCPサーバーを提供するには、 mcp-server.py
少し変更して、 run
ではなくrun_sse_async
メソッドを使用する必要があります。このメソッドはmcp-http-server.py
にあります。
MCPサーバーからツールを入手する
エージェントを作成して質問する
準備完了です。エージェントを使用して、LlamaCloud インデックスからの質問に回答できるようになりました。
This server cannot be installed
Claude Desktop と統合されたローカル MCP サーバー。RAG 機能により、カスタム LlamaCloud インデックスから最新のプライベート情報を Claude に提供できるようになります。