Shared Knowledge MCP Server
共享知识 MCP 服务器
这是一个知识库 MCP 服务器,可与各种 AI 助手(CLINE、Cursor、Windsurf、Claude Desktop)通用。利用检索增强生成 (RAG) 可以实现高效的信息检索和利用。在多个 AI 助手工具之间共享知识库,以提供一致的信息访问。
特征
一个通用知识库可供多个人工智能助手使用
使用 RAG 进行高精度信息检索
使用 TypeScript 的类型安全实现
支持多种向量存储(HNSWLib、Chroma、Pinecone、Milvus)
通过抽象接口实现扩展
Related MCP server: Confluence MCP Server
安装
git clone https://github.com/yourusername/shared-knowledge-mcp.git
cd shared-knowledge-mcp
npm install环境
MCP 服务器设置被添加到每个 AI 助手的配置文件中。
VSCode(用于 CLINE/Cursor)
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json :
{
"mcpServers": {
"shared-knowledge-base": {
"command": "node",
"args": ["/path/to/shared-knowledge-mcp/dist/index.js"],
"env": {
"KNOWLEDGE_BASE_PATH": "/path/to/your/rules",
"OPENAI_API_KEY": "your-openai-api-key",
"SIMILARITY_THRESHOLD": "0.7",
"CHUNK_SIZE": "1000",
"CHUNK_OVERLAP": "200",
"VECTOR_STORE_TYPE": "hnswlib"
}
}
}
}使用 Pinecone 的示例
{
"mcpServers": {
"shared-knowledge-base": {
"command": "node",
"args": ["/path/to/shared-knowledge-mcp/dist/index.js"],
"env": {
"KNOWLEDGE_BASE_PATH": "/path/to/your/rules",
"OPENAI_API_KEY": "your-openai-api-key",
"VECTOR_STORE_TYPE": "pinecone",
"VECTOR_STORE_CONFIG": "{\"apiKey\":\"your-pinecone-api-key\",\"environment\":\"your-environment\",\"index\":\"your-index-name\"}"
}
}
}
}克劳德桌面
~/Library/Application Support/Claude/claude_desktop_config.json :
使用 HNSWLib 的示例(默认)
{
"mcpServers": {
"shared-knowledge-base": {
"command": "node",
"args": ["/path/to/shared-knowledge-mcp/dist/index.js"],
"env": {
"KNOWLEDGE_BASE_PATH": "/path/to/your/docs",
"OPENAI_API_KEY": "your-openai-api-key",
"SIMILARITY_THRESHOLD": "0.7",
"CHUNK_SIZE": "1000",
"CHUNK_OVERLAP": "200",
"VECTOR_STORE_TYPE": "hnswlib",
"VECTOR_STORE_CONFIG": "{}"
},
"disabled": false,
"autoApprove": []
}
}
}Weaviate 使用示例
{
"mcpServers": {
"shared-knowledge-base": {
"command": "node",
"args": ["/path/to/shared-knowledge-mcp/dist/index.js"],
"env": {
"KNOWLEDGE_BASE_PATH": "/path/to/your/docs",
"OPENAI_API_KEY": "your-openai-api-key",
"SIMILARITY_THRESHOLD": "0.7",
"CHUNK_SIZE": "1000",
"CHUNK_OVERLAP": "200",
"VECTOR_STORE_TYPE": "weaviate",
"VECTOR_STORE_CONFIG": "{\"url\":\"http://localhost:8080\",\"className\":\"Document\",\"textKey\":\"content\"}"
},
"disabled": false,
"autoApprove": []
}
}
}注意:如果您正在使用 Weaviate,则必须事先启动 Weaviate 服务器。您可以使用以下命令启动它:
./start-weaviate.sh发展
启动开发服务器
npm run dev建造
npm run build生产运行
npm start可用工具
rag_search
在知识库中搜索信息。
搜索请求
interface SearchRequest {
// 検索クエリ(必須)
query: string;
// 返す結果の最大数(デフォルト: 5)
limit?: number;
// 検索のコンテキスト(オプション)
context?: string;
// フィルタリングオプション(オプション)
filter?: {
// ドキュメントの種類でフィルタリング(例: ["markdown", "code"])
documentTypes?: string[];
// ソースパスのパターンでフィルタリング(例: "*.md")
sourcePattern?: string;
};
// 結果に含める情報(オプション)
include?: {
metadata?: boolean; // メタデータを含める
summary?: boolean; // 要約を生成
keywords?: boolean; // キーワードを抽出
relevance?: boolean; // 関連性の説明を生成
};
}使用示例
基本搜索:
const result = await callTool("rag_search", {
query: "コミットメッセージのフォーマット",
limit: 3
});高级搜索:
const result = await callTool("rag_search", {
query: "コミットメッセージのフォーマット",
context: "Gitの使い方について調査中",
filter: {
documentTypes: ["markdown"],
sourcePattern: "git-*.md"
},
include: {
summary: true,
keywords: true,
relevance: true
}
});搜索结果
interface SearchResult {
// 検索クエリに関連する文書の内容
content: string;
// 類似度スコア(0-1)
score: number;
// ソースファイルのパス
source: string;
// 位置情報
startLine?: number; // 開始行
endLine?: number; // 終了行
startColumn?: number; // 開始桁
endColumn?: number; // 終了桁
// ドキュメントの種類(例: "markdown", "code", "text")
documentType?: string;
// 追加情報(include オプションで指定した場合のみ)
summary?: string; // コンテンツの要約
keywords?: string[]; // 関連キーワード
relevance?: string; // 関連性の説明
metadata?: Record<string, unknown>; // メタデータ
}响应示例
{
"results": [
{
"content": "# コミットメッセージのフォーマット\n\n以下の形式でコミットメッセージを記述してください:\n\n```\n<type>(<scope>): <subject>\n\n<body>\n\n<footer>\n```\n\n...",
"score": 0.92,
"source": "/path/to/rules/git-conventions.md",
"startLine": 1,
"endLine": 10,
"startColumn": 1,
"endColumn": 35,
"documentType": "markdown",
"summary": "コミットメッセージのフォーマットについての説明文書",
"keywords": ["commit", "message", "format", "type", "scope"],
"relevance": "このドキュメントは検索クエリ \"コミットメッセージのフォーマット\" に関連する情報を含んでいます。類似度スコア: 0.92"
}
]
}这些增强的搜索功能将使 LLM 能够更准确、更高效地处理信息。位置、文档类型、摘要和关键词等附加信息有助于 LLM 更好地理解和适当地利用搜索结果。
结构
启动时,它会读取指定目录中的Markdown文件(.md,.mdx)和文本文件(.txt)。
将文档拆分成块并使用 OpenAI API 进行矢量化
使用选定的向量存储创建向量索引(默认值:HNSWLib)
返回与搜索查询高度相似的文档
支持的向量存储
HNSWLib :存储在本地文件系统上的快速向量存储(默认)
Chroma :一个开源矢量数据库
Pinecone :托管矢量数据库服务(需要 API 密钥)
Milvus :大型向量搜索引擎
Weaviate :模式优先的矢量数据库(需要 Docker)
每个向量存储都通过抽象接口公开,从而可以根据需要在它们之间轻松切换。
如何导航 Vector Store 环境
HNSWLib(默认)
HNSWLib 将向量存储保存在本地文件系统上,因此不需要特殊配置。
矢量存储重建:
./rebuild-vector-store-hnsw.sh威维特
要使用 Weaviate,您需要 Docker。
启动 Weaviate 环境:
./start-weaviate.sh矢量存储重建:
./rebuild-vector-store-weaviate.sh检查 Weaviate 的状态:
curl http://localhost:8080/v1/.well-known/ready停止 Weaviate 环境:
docker-compose down彻底删除您的 Weaviate 数据(仅在必要时):
docker-compose down -vWeaviate 配置在docker-compose.yml文件中进行管理。默认情况下,应用以下设置:
端口:8080
身份验证:启用匿名访问
矢量化模块:无(使用外部填充)
数据存储:Docker 卷(
weaviate_data)
配置选项
环境变量 | 解释 | 默认值 |
知识库路径 | 知识库路径(必填) | - |
OPENAI_API_密钥 | OpenAI API 密钥(必需) | - |
相似度阈值 | 搜索的相似度分数阈值(0-1) | 0.7 |
块大小 | 分割文本的块大小 | 1000 |
块重叠 | 块重叠大小 | 200 |
向量存储类型 | 要使用的矢量存储类型(“hnswlib”、“chroma”、“pinecone”、“milvus”)。 | “hnswlib” |
VECTOR_STORE_CONFIG | 向量存储配置(JSON字符串) | {} |
执照
国际学习中心
贡献
叉
创建功能分支(
git checkout -b feature/amazing-feature)提交更改(
git commit -m 'Add some amazing feature')推送到分支(
git push origin feature/amazing-feature)创建拉取请求
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceServer that enhances the capabilities of the Cline coding agent. It provides intelligent code suggestions, reduces hallucinations, and documents the knowledge base by leveraging your project's documentation and detecting the technologies used in your codebase.15
- AlicenseNot gradedqualityDmaintenanceA server that integrates Confluence with Claude Desktop and other AI assistants, enabling natural language interactions with your Confluence documentation.3794MIT
- FlicenseAqualityNot gradedmaintenanceA local-first knowledge base server that enables AI clients to store, retrieve, and manage documents using semantic search. Provides privacy-focused, offline-capable memory for AI assistants with tools for ingesting, querying, updating, and deleting knowledge.716
- FlicenseNot gradedqualityDmaintenanceA local document intelligence and knowledge management server for Claude Desktop that provides RAG-powered Q\&A, media transcription, and URL crawling. It features 11 tools for processing various file types and managing a persistent local vector store with zero infrastructure costs.1
Related MCP Connectors
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
Connect your team's living knowledge base — docs, data, issues, CRM — to Claude and ChatGPT.
A personal RAG database you build from chat, so AI creates work that sounds like you.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/j5ik2o/shared-knowledge-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server