ナレッジベースMCPサーバー
この MCP サーバーは、さまざまなナレッジ ベースからコンテンツを一覧表示および取得するためのツールを提供します。
セットアップ手順
これらの手順では、システムに Node.js と npm がインストールされていることを前提としています。
Smithery経由でインストール
Smithery経由で Claude Desktop の Knowledge Base Server を自動的にインストールするには:
手動インストール
前提条件
リポジトリをクローンします。
git clone <repository_url> cd knowledge-base-mcp-server依存関係をインストールします:
npm install環境変数を設定します。
サーバーでは、
HUGGINGFACE_API_KEY環境変数を設定する必要があります。これは、知識ベースコンテンツの埋め込みを生成するために使用されるHugging Face推論APIのAPIキーです。Hugging Faceのウェブサイト( https://huggingface.co/ )から無料のAPIキーを入手できます。サーバーでは、
KNOWLEDGE_BASES_ROOT_DIR環境変数を設定する必要があります。この変数は、ナレッジベースのサブディレクトリが配置されているディレクトリを指定します。この変数を設定しない場合、デフォルトで$HOME/knowledge_basesが使用されます。ここで、$HOMEは現在のユーザーのホームディレクトリです。サーバーは、FAISSインデックスへのパスを指定するための
FAISS_INDEX_PATH環境変数をサポートしています。設定されていない場合は、デフォルトで$HOME/knowledge_bases/.faissが使用されます。サーバーは、埋め込み生成に使用するHugging Faceモデルを指定するための
HUGGINGFACE_MODEL_NAME環境変数をサポートしています。設定されていない場合は、デフォルトでsentence-transformers/all-MiniLM-L6-v2が使用されます。これらの環境変数は、
.bashrcまたは.zshrcファイルで設定することも、MCP 設定で直接設定することもできます。
サーバーを構築します。
npm run buildサーバーを MCP 設定に追加します。
/home/jean/.vscode-server/data/User/globalStorage/saoudrizwan.claude-dev/settings/にあるcline_mcp_settings.jsonファイルを編集します。mcpServersオブジェクトに次の構成を追加します。
"knowledge-base-mcp": { "command": "node", "args": [ "/path/to/knowledge-base-mcp-server/build/index.js" ], "disabled": false, "autoApprove": [], "env": { "KNOWLEDGE_BASES_ROOT_DIR": "/path/to/knowledge_bases", "HUGGINGFACE_API_KEY": "YOUR_HUGGINGFACE_API_KEY", }, "description": "Retrieves similar chunks from the knowledge base based on a query." },/path/to/knowledge-base-mcp-serverサーバー ディレクトリへの実際のパスに置き換えます。/path/to/knowledge_basesナレッジ ベース ディレクトリへの実際のパスに置き換えます。
ナレッジ ベース ディレクトリを作成します。
各ナレッジ ベース (例:
company、it_support、onboarding) のKNOWLEDGE_BASES_ROOT_DIR内にサブディレクトリを作成します。これらのサブディレクトリ内に、ナレッジ ベースのコンテンツを含むテキスト ファイル (例:
.txt、.md) を配置します。
サーバーは、指定されたナレッジ ベースのサブディレクトリ内のすべてのテキスト ファイル (例:
.txt、.md) を再帰的に読み取ります。サーバーは隠しファイルとディレクトリ (
.で始まるもの) をスキップします。サーバーは各ファイルについてSHA256ハッシュを計算し、隠しサブディレクトリ
.index内の同名のファイルに保存します。このハッシュは、前回のインデックス作成以降にファイルが変更されたかどうかを判断するために使用されます。ファイルの内容は、
langchain/text_splitterのMarkdownTextSplitterを使用してチャンクに分割されます。各チャンクの内容は、類似性検索に使用される FAISS インデックスに追加されます。
FAISSインデックスは、サーバーの起動時に自動的に初期化されます。ナレッジベースファイルの変更をチェックし、それに応じてインデックスを更新します。
使用法
サーバーは 2 つのツールを公開します。
list_knowledge_bases: 利用可能なナレッジベースを一覧表示します。クエリに基づいてナレッジベースから類似のチャンクを取得し
retrieve_knowledge。オプションでナレッジベースを指定した場合は、そのナレッジベースのみが検索されます。指定しない場合は、利用可能なすべてのナレッジベースが対象となります。デフォルトでは、スコアがしきい値2未満のドキュメントチャンクが最大10個返されます。thresholdthresholdを使用して、異なるしきい値を指定することもできます。
これらのツールは、MCP インターフェースを通じて使用できます。
retrieve_knowledgeツールは、FAISSインデックスを使用してセマンティック検索を実行します。インデックスは、サーバーの起動時またはナレッジベース内のファイルが変更されたときに自動的に更新されます。
retrieve_knowledgeツールの出力は、次の構造を持つマークダウン形式の文字列です。
各結果には、最も類似したチャンクのコンテンツ、ソース ファイル、および類似度スコアが含まれます。
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
セマンティック検索機能を使用して、さまざまなナレッジ ベースからコンテンツを一覧表示および取得するためのツールを提供します。
Related Resources
Related MCP Servers
- -security-license-qualityProvides tools for retrieving and processing documentation through vector search, enabling AI assistants to augment their responses with relevant documentation context.Last updated -22MIT License
- -security-license-qualityIntelligent knowledge base management tool that enables searching, browsing, and analyzing documents across multiple datasets with smart document analysis capabilities.Last updated -16
- Asecurity-licenseAqualityEnables AI assistants to search and retrieve content from WikiJS knowledge bases, allowing integration with your Wiki through simple search and retrieval tools.Last updated -4141MIT License
- -security-license-qualityEnables LLMs to manage file-based knowledge bases with dual storage (Markdown + SQLite). Supports creating, searching, and organizing articles across multiple knowledge bases with full-text search capabilities.Last updated -42MIT License