MCP RAG Server - Model Context Protocol (MCP)に準拠したRAG機能を持つPythonサーバー
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"iflow-mcp-karaage0703-mcp-rag-server","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# MCP RAG Server MCP RAG Serverは、Model Context Protocol (MCP)に準拠したRAG(Retrieval-Augmented Generation)機能を持つPythonサーバーです。マークダウン、テキスト、パワーポイント、PDFなど複数の形式のドキュメントをデータソースとして、multilingual-e5-largeモデルを使用してインデックス化し、ベクトル検索によって関連情報を取得する機能を提供します。 ## 概要 このプロジェクトは、MCPサーバーの基本的な実装に加えて、RAG機能を提供します。複数形式のドキュメントをインデックス化し、自然言語クエリに基づいて関連情報を検索することができます。 ## 機能 - **MCPサーバーの基本実装** - JSON-RPC over stdioベースで動作 - ツールの登録と実行のためのメカニズム - エラーハンドリングとロギング - **RAG機能** - 複数形式のドキュメント(マークダウン、テキスト、パワーポイント、PDF)の読み込みと解析 - 階層構造を持つソースディレクトリに対応 - markitdownライブラリを使用したパワーポイントやPDFからのマークダウン変換 - 選択可能なエンベディングモデル(multilingual-e5-large、ruriなど)を使用したエンベディング生成 - PostgreSQLのpgvectorを使用したベクトルデータベース - ベクトル検索による関連情報の取得 - 前後のチャンク取得機能(コンテキストの連続性を確保) - ドキュメント全文取得機能(完全なコンテキストを提供) - 差分インデックス化機能(新規・変更ファイルのみを処理) - **ツール** - ベクトル検索ツール(MCP) - ドキュメント数取得ツール(MCP) - インデックス管理ツール(CLI) ## 前提条件 - Python 3.10以上 - PostgreSQL 14以上(pgvectorエクステンション付き) ## インストール ### 依存関係のインストール ```bash # uvがインストールされていない場合は先にインストール # pip install uv # 依存関係のインストール uv sync ``` ### PostgreSQLとpgvectorのセットアップ #### Dockerを使用する場合 ```bash # pgvectorを含むPostgreSQLコンテナを起動 docker run --name postgres-pgvector -e POSTGRES_PASSWORD=password -p 5432:5432 -d pgvector/pgvector:pg17 ``` #### データベースの作成 PostgreSQLコンテナを起動した後、以下のコマンドでデータベースを作成します: ```bash # ragdbデータベースの作成 docker exec -it postgres-pgvector psql -U postgres -c "CREATE DATABASE ragdb;" ``` #### 既存のPostgreSQLにpgvectorをインストールする場合 ```sql -- pgvectorエクステンションをインストール CREATE EXTENSION vector; ``` ### 環境変数の設定 `.env`ファイルを作成し、以下の環境変数を設定します: ``` # PostgreSQL接続情報 POSTGRES_HOST=localhost POSTGRES_PORT=5432 POSTGRES_USER=postgres POSTGRES_PASSWORD=password POSTGRES_DB=ragdb # ドキュメントディレクトリ SOURCE_DIR=./data/source PROCESSED_DIR=./data/processed # エンベディングモデル設定 EMBEDDING_MODEL=intfloat/multilingual-e5-large EMBEDDING_DIM=1024 EMBEDDING_PREFIX_QUERY="query: " EMBEDDING_PREFIX_EMBEDDING="passage: " ``` ## エンベディングモデルの設定 このサーバーでは、環境変数でエンベディングモデルを選択できます。 ### サポートされているモデル #### multilingu…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.