MCP テストサーバー について
MCP テストサーバーは、ディレクトリ内のファイルからOpenAIのベクトルストアを作成・検索するPython製MCPサーバーです。テキスト、PDF、DOCX、Markdownの情報をRAGで取得できます。
主な機能
- 01ディレクトリ内のファイルからベクトルストア作成
- 02テキスト、PDF、DOCX、Markdownに対応
- 03クエリから関連情報を検索
- 04ステータスと結果情報を返却
活用シーン
- 01文書群を検索可能なデータにする
- 02既存のベクトルストアから関連情報を検索
MCP 対応
MCPクライアントに、ベクトルデータベースの作成と検索を行うツールを提供します。ファイル処理と検索にはOpenAIのベクトルストアを使用します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
プロジェクトの README よりMCP テストサーバー
Model Context Protocol (MCP) を使用したPythonサーバーで、OpenAIのベクトルストア機能を活用したRAG(Retrieval Augmented Generation)システムを提供します。
機能
このMCPサーバーは以下の機能を提供します:
- ベクトルDBの作成: 指定したディレクトリ内のファイル(テキスト、PDF、DOCX、マークダウン)からOpenAIのベクトルストアを構築します。
- ベクトルDBの検索: 構築したベクトルDBに対してクエリを実行し、関連性の高い情報を取得します。
必要条件
- Python 3.11以上
- OpenAI API キー
インストール方法
1. プロジェクトの初期化と仮想環境の作成
# プロジェクトを初期化
uv init mcp-test-server
cd mcp-test-server
# 仮想環境を作成して有効化
uv venv .venv
source .venv/bin/activate
2. 必要なパッケージのインストール
# 必要なパッケージをインストール
uv sync
3. 環境変数の設定
.envファイルを作成し、OpenAI APIキーを設定します:
OPENAI_API_KEY="your-api-key"
MCPサーバーのテスト(任意)
MCP Inspectorを使用したテスト
MCP Inspectorを使用して、サーバーの動作を確認できます:
# MCP Inspectorを起動
npx @modelcontextprotocol/inspector uv run server.py
MCP Inspectorでの操作手順:
- 左ペインで"Connect"を選択
- 中央のタブで"Tools"を選択
- "List Tools"を実行
- 検証したいツールを選択
- 右ペインで引数を設定して"Run Tool"を実行
- 応答内容がResultに表示されます(unicodeエスケープされるため、適宜decodeして確認)
- 終了後は、CLIでInspectorの実行を終了してポートを解放
Claudeアプリへの統合
Claudeデスクトップアプリのコンフィグファイルに以下の設定を追加します:
"test_calc": {
"command": "uv",
"args": [
"--directory",
"/abs/path/to/your/mcp-test-server",
"run",
"server.py"
]
}
/abs/path/to/your/mcp-test-serverは、実際のプロジェクトパスに置き換えてください。
設定後、Claudeアプリを再起動すると、MCPサーバーが利用可能になります。
提供されるツール
このMCPサーバーは以下のツールを提供します:
1. create_vector_db_from_directory
指定したディレクトリ内のファイルからベクトルDBを作成します。
引数:
directory_path: ファイルを検索するディレクトリのパス(必須)vector_store_name: ベクトルストアの名前(デフォルト: "local_knowledge")file_patterns: 処理するファイルのパターン(デフォルト: [".txt", ".pdf", ".docx", ".md"])
戻り値:
- 処理結果の情報(ステータス、メッセージ、統計情報など)
2. query_vector_db
構築したベクトルDBを検索して、関連情報を取得します。
引数:
query: 検索クエリ(必須)vector_store_id: ベクトルストアのID(必須)n_results: 返す結果の数(デフォルト: 10)
戻り値:
- 検索結果(ステータス、クエリ、結果リストなど)
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。