MCP Docs Search Server について
LangChain、LlamaIndex、OpenAI などの AI ライブラリの最新ドキュメントを取得する、LLM エージェント向け MCP サーバーです。ウェブ検索とページ解析で関連テキストを返します。
主な機能
- 01ドキュメントページの検索
- 02読みやすい本文の抽出
- 03get_docs ツールの提供
- 04ライブラリを指定した検索
活用シーン
- 01AI ライブラリの最新の使い方を確認
- 02エージェント用に文書を取得
- 03検索語とライブラリを指定して調査
MCP 対応
MCP クライアントに get_docs ツールを公開します。検索語とライブラリ名を受け取り、検索・解析したドキュメントのテキストを返します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP ドキュメント検索サーバー
LangChain、LlamaIndex、OpenAI などの人気の AI ライブラリのドキュメントから、ウェブ検索とコンテンツ解析を組み合わせて関連する内容を検索・取得する、軽量な MCP サーバーです。
このプロジェクトでは、LLM が最新のドキュメントの内容を動的に検索・取得できます。LLM と外部のドキュメントソースをつなぐ橋渡しとして機能します。
Model Context Protocol(MCP)
Model Context Protocol は、開発者がデータソースと AI 搭載ツールの間に安全な双方向接続を構築できるオープン標準です。そのアーキテクチャはシンプルです。開発者は、MCP サーバーを通じてデータを公開するか、これらのサーバーに接続する AI アプリケーション(MCP クライアント)を構築できます。
単独で動作する LLM
LLM だけでは限界があります。その真の可能性は、MCP のようなフレームワークを介してツールやサービスと統合することで引き出されます。
-
ツールのない LLM は静的で、用途が限られています。
-
ツールを使うと対話的になりますが、オーケストレーションが複雑になることがあります。
-
MCP を使うと、LLM は実世界のサービスに接続する、拡張性の高いプラグアンドプレイ型のインターフェースを利用できるようになり、本番環境でより実用的かつ強力になります。
MCP エコシステム
MCP サーバーは、LLM とサービスの間の翻訳役/インターフェースとして機能します。
MCP(モジュラー・ケイパビリティ・プロバイダー)は、LLM が外部のツールやサービスとやり取りする方法を標準化し、相互運用性、モジュール性、より明確なインターフェースを促進します。
この構造では、責任が分散されます。
-
ツールプロバイダーが独自の MCP サーバー実装を構築し、保守します。
-
LLM は MCP プロトコルに対応するだけで済みます。
目的とビジョン:
-
LLM と外部ツール間の通信を標準化する
-
個別対応の統合を避ける
-
拡張性の高いサービスのエコシステム(プラグインアーキテクチャなど)を促進する
機能
ウェブ検索との統合
Serper API を使用して Google にクエリを送信し、検索クエリに関連する上位のドキュメントページを取得します。
コンテンツのクリーンな抽出
BeautifulSoup を使用して HTML コンテンツを解析し、不要なタグ、広告、ナビゲーションコンテンツを取り除いて、読みやすいテキストを抽出します。
LLM ツールとのシームレスな連携
構造化された get_docs ツールを公開します。このツールは、LLM エージェント(例:Claude、GPT)内で使用して、特定のライブラリについてリアルタイムに検索できます。
ツール
get_docs(query: str, library: str)
これは MCP サーバーが提供する中核的なツールです。 次の引数を受け取ります。
query:検索語またはフレーズ。
library:langchain、llama-index、openai のいずれか。
ワークフロー
- 関連するドキュメントページを検索します
- 内容を取得し、クリーンなテキストに解析します
- 結果を LLM に返し、さらに推論して応答を生成します
セットアップ
- リポジトリをクローンします
git clone https://github.com/your-username/mcp-docs-search.git
cd mcp-docs-search
- uv を使って仮想環境を作成し、有効化します
uv venv .venv
.\.venv\Scripts\activate
- 依存関係をインストールします
uv add "mcp[cli]" httpx
uv pip install beautifulsoup4
- 環境変数を設定します。.env ファイルを作成し、Serper API キーを追加します。
SERPER_API_KEY=your_serper_api_key
Claude Desktop との統合
このサーバーを Claude Desktop 内のツールとして統合するには:
Claude Desktop を開き、File > Settings > Developer > Edit Config を選択します。
claude_desktop_config.json を更新し、以下を追加します。
{
"mcpServers": {
"documnetation": {
"command": "uv",
"args": [
"--directory",
"your_reository_where_the_repo_exists",
"run",
"main.py"
]
}
}
}
🔁 重要:設定を保存した後、Claude Desktop を再起動して新しいツールを読み込んでください
統合に成功すると、Claude UI 内にカスタム MCP ツールが表示されます。
リアルタイムでドキュメントを検索するために使用します。
リアルタイムでのデバッグ
次のコマンドを使用して、作成したツールをデバッグすることもできます。
NodeJs18+ をインストールしてください。
npx @modelcontextprotocol/inspector uv run main.py
接続が設定されているポートに移動してください。
対応ライブラリ/ドキュメント
docs_urls 辞書を更新することで、ライブラリを簡単に追加できます。
今後の拡張
-
HuggingFace、PyTorch、TensorFlow など、追加のライブラリへの対応を追加します。
-
重複する取得を減らし、パフォーマンスを向上させるため、キャッシュを実装します。
-
関連性やトークン品質に基づくスコアリング/ランキングの仕組みを導入します。
-
本番環境での利用に向けて、単体テストと例外処理を改善します。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。