RAG Documentation MCP Server

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Uses Ollama as the default embedding provider for local embeddings generation, supporting semantic documentation search and vector storage.

  • Provides OpenAI as a fallback embedding provider, using models like text-embedding-3-small for document embedding when Ollama is unavailable.

RAG ドキュメント MCP サーバー

ベクトル検索を通じてドキュメントを取得および処理するためのツールを提供する MCP サーバー実装。これにより、AI アシスタントは関連するドキュメント コンテキストを使用して応答を拡張できます。

目次

特徴

ツール

  1. 検索ドキュメント
    • ベクトル検索を使用してドキュメントを検索する
    • ソース情報を含む関連ドキュメントのチャンクを返します
  2. リストソース
    • 利用可能なすべてのドキュメントソースを一覧表示する
    • 各ソースに関するメタデータを提供する
  3. 抽出URL
    • テキストからURLを抽出し、それがすでにドキュメントに含まれているかどうかを確認します
    • 重複文書の防止に役立ちます
  4. ドキュメントの削除
    • 特定のソースからドキュメントを削除する
    • 古くなった、または無関係なドキュメントをクリーンアップします
  5. リストキュー
    • 処理キュー内のすべてのアイテムを一覧表示する
    • 保留中の文書処理のステータスを表示します
  6. 実行キュー
    • キュー内のすべてのアイテムを処理する
    • 新しいドキュメントをベクターストアに自動的に追加します
  7. クリアキュー
    • 処理キューからすべてのアイテムをクリアする
    • システムをリセットするのに役立ちます
  8. ドキュメントの追加
    • 処理キューに新しいドキュメントを追加する
    • さまざまな形式とソースをサポート

クイックスタート

RAG ドキュメント ツールは次の目的で設計されています。

  • 関連ドキュメントによるAI応答の強化
  • ドキュメント認識型AIアシスタントの構築
  • 開発者向けのコンテキスト認識ツールの作成
  • セマンティックドキュメント検索の実装
  • 既存の知識ベースの拡張

Docker Compose のセットアップ

このプロジェクトには、コンテナ化されたデプロイメントを容易にするためのdocker-compose.ymlファイルが含まれています。サービスを開始するには、以下の手順に従ってください。

docker-compose up -d

サービスを停止するには:

docker-compose down

ウェブインターフェース

システムには、Docker Compose サービスを開始した後にアクセスできる Web インターフェイスが含まれています。

  1. ブラウザを開き、 http://localhost:3030に移動します。
  2. インターフェースは以下を提供します:
    • リアルタイムキュー監視
    • ドキュメントソース管理
    • クエリをテストするための検索インターフェース
    • システムステータスとヘルスチェック

構成

埋め込み構成

このシステムは、ローカル埋め込み生成のデフォルトの埋め込みプロバイダとしてOllamaを使用し、フォールバックオプションとしてOpenAIも利用できます。この設定により、クラウドベースのフォールバックによって信頼性を維持しながら、ローカル処理を優先します。

環境変数

  • EMBEDDING_PROVIDER : 主要な埋め込みプロバイダを選択します(「ollama」または「openai」、デフォルト:「ollama」)
  • EMBEDDING_MODEL : 使用するモデルを指定する(オプション)
    • OpenAIの場合: デフォルトは「text-embedding-3-small」
    • Ollamaの場合: デフォルトは「nomic-embed-text」
  • OPENAI_API_KEY : OpenAIをプロバイダーとして使用する場合に必要
  • FALLBACK_PROVIDER : オプションのバックアッププロバイダー(「ollama」または「openai」)
  • FALLBACK_MODEL : フォールバックプロバイダのオプションモデル

傾斜構成

これをcline_mcp_settings.jsonに追加します:

{ "mcpServers": { "rag-docs": { "command": "node", "args": ["/path/to/your/mcp-ragdocs/build/index.js"], "env": { "EMBEDDING_PROVIDER": "ollama", // default "EMBEDDING_MODEL": "nomic-embed-text", // optional "OPENAI_API_KEY": "your-api-key-here", // required for fallback "FALLBACK_PROVIDER": "openai", // recommended for reliability "FALLBACK_MODEL": "nomic-embed-text", // optional "QDRANT_URL": "http://localhost:6333" }, "disabled": false, "autoApprove": [ "search_documentation", "list_sources", "extract_urls", "remove_documentation", "list_queue", "run_queue", "clear_queue", "add_documentation" ] } } }

クロードデスクトップ構成

これをclaude_desktop_config.jsonに追加します:

{ "mcpServers": { "rag-docs": { "command": "node", "args": ["/path/to/your/mcp-ragdocs/build/index.js"], "env": { "EMBEDDING_PROVIDER": "ollama", // default "EMBEDDING_MODEL": "nomic-embed-text", // optional "OPENAI_API_KEY": "your-api-key-here", // required for fallback "FALLBACK_PROVIDER": "openai", // recommended for reliability "FALLBACK_MODEL": "nomic-embed-text", // optional "QDRANT_URL": "http://localhost:6333" } } } }

デフォルト設定

システムは、効率的なローカル埋め込み生成のためにデフォルトでOllamaを使用します。最適な信頼性のために:

  1. Ollamaをローカルにインストールして実行する
  2. OpenAI をフォールバックとして設定します (推奨):
    { // Ollama is used by default, no need to specify EMBEDDING_PROVIDER "EMBEDDING_MODEL": "nomic-embed-text", // optional "FALLBACK_PROVIDER": "openai", "FALLBACK_MODEL": "text-embedding-3-small", "OPENAI_API_KEY": "your-api-key-here" }

この構成により、次のことが保証されます。

  • Ollamaによる高速なローカル埋め込み生成
  • Ollama が失敗した場合、OpenAI に自動的にフォールバックします
  • 必要でない限り外部API呼び出しは行わない

注: システムはプロバイダーに基づいて適切なベクトル次元を自動的に使用します。

  • オラマ(nomic-embed-text): 768次元
  • OpenAI (テキスト埋め込み3小): 1536次元

謝辞

このプロジェクトは、元々 qpd-v によって開発されたqpd-v/mcp-ragdocsのフォークです。この実装の基盤は、元のプロジェクトによって提供されました。

このMCPサーバーの初期バージョンにおける革新的な取り組みに対し、オリジナルの作成者であるqpd-v氏に深く感謝いたします。このフォークは、Rahul Retnan氏による追加機能と改良によって強化されました。

トラブルシューティング

サーバーが起動しない(ポートの競合)

ポートの競合により MCP サーバーの起動に失敗した場合は、次の手順に従います。

  1. ポート 3030 を使用しているプロセスを識別して終了します。
npx kill-port 3030
  1. MCPサーバーを再起動します
  2. 問題が解決しない場合は、ポートを使用している他のプロセスを確認してください。
lsof -i :3030
  1. 必要に応じて、設定でデフォルトのポートを変更することもできます。
-
security - not tested
F
license - not found
-
quality - not tested

AI アシスタントがセマンティック ベクター検索を通じて関連ドキュメントで応答を強化できるようにし、ドキュメントを効率的に管理および処理するためのツールを提供します。

  1. Table of Contents
    1. Features
      1. Tools
    2. Quick Start
      1. Docker Compose Setup
        1. Web Interface
          1. Configuration
            1. Embeddings Configuration
            2. Cline Configuration
            3. Claude Desktop Configuration
            4. Default Configuration
          2. Acknowledgments
            1. Troubleshooting
              1. Server Not Starting (Port Conflict)
            ID: co522bhy31