enterprise-knowledge-mcp
Enterprise Knowledge MCP
基于 Model Context Protocol (MCP) 的企业知识管理服务。
为大语言模型提供三个核心能力:
工具 | 功能 |
| 语义搜索企业知识库 |
| 根据文档 ID 获取完整文档 |
| 搜索企业项目案例 |
项目结构
enterprise-knowledge-mcp/
├── src/
│ └── enterprise_knowledge_mcp/
│ ├── __init__.py # 包入口
│ ├── server.py # MCP 工具注册(协议层)
│ └── retriever.py # 检索逻辑(业务层)
├── tests/
│ ├── test_server.py # 单元测试
│ └── test_e2e.py # MCP Client 端到端测试
├── scripts/
│ ├── seed_data.py # 导入示例数据到 ChromaDB
│ └── download_model.py # 下载嵌入模型(离线环境用)
├── pyproject.toml
├── server.json # MCP 服务描述清单
├── README.md
└── LICENSERelated MCP server: docrag
架构设计
┌─────────────────────────────────────────┐
│ server.py (协议层) │
│ - 注册 MCP Tool │
│ - 参数校验 & 输出格式化 │
└──────────────┬──────────────────────────┘
│ 调用
┌──────────────▼──────────────────────────┐
│ retriever.py (业务层) │
│ - KnowledgeRetriever 知识库检索 │
│ - DocumentRetriever 文档检索 │
│ - CaseRetriever 案例检索 │
└──────────────┬──────────────────────────┘
│ 替换实现
┌──────────────▼──────────────────────────┐
│ 数据层(可插拔) │
│ - MockRetriever 开发/测试用 │
│ - ChromaRetriever ChromaDB 向量检索 │
│ - 自定义 Retriever ES / 数据库 / ... │
└─────────────────────────────────────────┘检索器采用基类 + 实现的可插拔设计。server.py 中只更换实例化对象即可切换后端,工具注册代码无需改动。
快速开始
安装
# 克隆仓库
git clone https://github.com/your-username/enterprise-knowledge-mcp.git
cd enterprise-knowledge-mcp
# 创建虚拟环境
python -m venv .venv
.venv\Scripts\activate # Windows
# source .venv/bin/activate # Linux/macOS
# 安装(开发模式)
pip install -e ".[dev]"初始化 ChromaDB 数据
# 导入示例企业知识数据(知识库 5 条、文档 3 篇、案例 4 个)
python scripts/seed_data.py运行服务
# Mock 模式(无需 ChromaDB 数据)
python -m enterprise_knowledge_mcp.server
# ChromaDB 模式(需先执行 seed_data.py)
RETRIEVER_BACKEND=chroma python -m enterprise_knowledge_mcp.server运行测试
pytest tests/ -v接入 MCP 客户端
Claude Desktop
在 claude_desktop_config.json 中添加:
{
"mcpServers": {
"enterprise-knowledge": {
"command": "python",
"args": ["-m", "enterprise_knowledge_mcp.server"],
"cwd": "C:/path/to/enterprise-knowledge-mcp"
}
}
}Python SDK
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
server_params = StdioServerParameters(
command="python",
args=["-m", "enterprise_knowledge_mcp.server"],
)
async with stdio_client(server_params) as (read, write):
async with ClientSession(read, write) as session:
await session.initialize()
result = await session.call_tool(
"search_knowledge", {"query": "人工智能"}
)
print(result.content[0].text)自定义检索器
继承基类并实现 retrieve / get_document / search_cases 方法:
from enterprise_knowledge_mcp.retriever import (
KnowledgeRetriever,
SearchResult,
)
class MyRetriever(KnowledgeRetriever):
def retrieve(self, query: str, top_k: int = 5) -> list[SearchResult]:
# 你的检索逻辑
return [SearchResult(text="...", source="...", score=0.9)]然后在 server.py 中替换:
from .retriever import MyRetriever
knowledge_retriever = MyRetriever()许可证
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 gradedqualityDmaintenanceTransforms PDF collections into a searchable knowledge base using TF-IDF indexing and proximity matching. It enables users to search documents, retrieve specific page content, and manage document libraries through natural language via MCP clients.5
- AlicenseNot gradedqualityDmaintenanceProvides RAG (Retrieval Augmented Generation) access to technical documentation through MCP, enabling LLMs to search and retrieve relevant documentation on-demand.4MIT
- AlicenseNot gradedqualityDmaintenanceEnables interaction with the Innovaas Knowledge Management System through MCP, providing multi-modal search, RAG-powered chat with intelligent token management, and document access.MIT
- FlicenseCqualityCmaintenanceEnables semantic search over knowledge-base articles and listing of sample support tickets using MCP tools.4
Related MCP Connectors
Knowledge coverage map and health score. Ingest docs into a governed knowledge graph via MCP.
Your memory, everywhere AI goes. Build knowledge once, access it via MCP anywhere.
Cross-vendor AI memory over MCP. One semantic store, readable and writeable from every MCP client.
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/xuenyuxey/enterprise-knowledge-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server