mcp-docs-rag MCP サーバー
ローカルディレクトリ内のドキュメントの RAG (検索拡張生成)
これはTypeScriptベースのMCPサーバーで、ローカルディレクトリに保存されたドキュメント用のRAGシステムを実装しています。ユーザーは、ローカルに保存されたリポジトリやテキストファイルからコンテキスト付きLLMを使用してドキュメントをクエリできます。
特徴
リソース
docs://
URI 経由でドキュメントの一覧表示とアクセスを行うドキュメントはGitリポジトリまたはテキストファイルになります
コンテンツアクセス用のプレーンテキスト MIME タイプ
ツール
list_documents
- DOCS_PATH ディレクトリにある利用可能なすべてのドキュメントを一覧表示しますすべてのドキュメントのフォーマットされたリストを返します
利用可能なドキュメントの総数を表示します
rag_query
- RAG を使用してドキュメントをクエリするdocument_idとクエリをパラメータとして受け取ります
ドキュメントからコンテキストを抽出した AI 生成の応答を返します
add_git_repository
- オプションのスパースチェックアウトを使用して、Git リポジトリを docs ディレクトリにクローンします。パラメータとしてrepository_urlを取る
ドキュメントの名前をカスタマイズするためのオプションの document_name パラメータ(「-docs」サフィックスなしの単純な説明的な名前を使用)
特定のディレクトリのスパースチェックアウトのためのオプションのサブディレクトリパラメータ
リポジトリがすでに存在する場合は最新の変更を自動的に取得します
add_text_file
- テキストファイルをドキュメントディレクトリにダウンロードしますfile_urlをパラメータとして受け取ります
wgetを使用してファイルをダウンロードする
プロンプト
guide_documents_usage
- ドキュメントと RAG 機能の使用方法に関するガイド利用可能な文書のリストが含まれています
RAG機能の使用ヒントを提供します
発達
依存関係をインストールします:
サーバーを構築します。
自動リビルドを使用した開発の場合:
設定
このサーバーはドキュメントを保存するためのローカルディレクトリを必要とします。デフォルトでは~/docs
が使用されますが、 DOCS_PATH
環境変数で別の場所を指定することもできます。
ドキュメント構造
ドキュメント ディレクトリには次のものを含めることができます。
Git リポジトリ (クローンされたディレクトリ)
プレーンテキストファイル(拡張子.txt)
各ドキュメントは、Google の Gemini 埋め込みを使用した llama-index.ts を使用して個別にインデックス化されます。
APIキー
このサーバーは、ドキュメントのインデックス作成とクエリにGoogleのGemini APIを使用しています。環境変数としてGemini APIキーを設定する必要があります。
Gemini APIキーはGoogle AI Studioウェブサイトから取得できます。このキーをシェルプロファイルに追加するか、Claude Desktopの環境設定に含めてください。
インストール
Claude Desktop で使用するには、サーバー設定を追加します。
MacOS の場合: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows の場合: %APPDATA%/Claude/claude_desktop_config.json
Linux の場合: ~/.config/Claude/claude_desktop_config.json
/Users/username/docs
ドキュメント ディレクトリへの実際のパスに置き換えてください。
デバッグ
MCPサーバーはstdio経由で通信するため、デバッグが困難になる場合があります。パッケージスクリプトとして提供されているMCP Inspectorの使用をお勧めします。
インスペクターは、ブラウザでデバッグ ツールにアクセスするための URL を提供します。
使用法
設定が完了すると、Claude でサーバーを使用して次のことが可能になります。
ドキュメントを追加:
Add a new document from GitHub: https://github.com/username/repositoryまたはカスタムドキュメント名を使用します:
Add GitHub repository https://github.com/username/repository-name and name it 'framework'または、特定のディレクトリのスパースチェックアウトを使用します。
Add only the 'src/components' directory from https://github.com/username/repositoryまたは、カスタム名とスパースチェックアウトを組み合わせる:
Add the 'examples/demo' directory from https://github.com/username/large-repo and name it 'demo-app'またはテキストファイルを追加します:
Add this text file: https://example.com/document.txtクエリドキュメント:
What does the documentation say about X in the Y repository?利用可能なドキュメントの一覧:
What documents do you have access to?
サーバーは、効率的な検索のためにドキュメントのインデックス作成を自動的に処理します。
local-only server
The server can only run on the client's local machine because it depends on local resources.
RAG (Retrieval-Augmented Generation) システムを通じて、ローカルに保存されたリポジトリとテキスト ファイルからのコンテキストを使用して LLM を使用してドキュメントをクエリできる TypeScript MCP サーバー。
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol (MCP) server that enables LLMs to interact directly the documents that they have on-disk through agentic RAG and hybrid search in LanceDB. Ask LLMs questions about the dataset as a whole or about specific documents.Last updated -572MIT License
- AsecurityFlicenseAqualityA template for creating Model Context Protocol (MCP) servers in TypeScript, offering features like container-based dependency injection, a service-based architecture, and integration with the LLM CLI for architectural design feedback through natural language.Last updated -117
- -securityFlicense-qualityA TypeScript-based MCP server that enables users to manage text notes and generate summaries, showcasing key MCP concepts like resource representation and LLM integration.Last updated -3,063
- -securityFlicense-qualityA customized MCP server that enables integration between LLM applications and documentation sources, providing AI-assisted access to LangGraph and Model Context Protocol documentation.Last updated -1