Skip to main content
Glama
xuenyuxey

enterprise-knowledge-mcp

by xuenyuxey

Enterprise Knowledge MCP

An enterprise knowledge management service based on Model Context Protocol (MCP).

Provides three core capabilities for large language models:

Tool

Description

search_knowledge

Semantic search of the enterprise knowledge base

get_document

Retrieve the full document by document ID

search_cases

Search enterprise project cases

Project Structure

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
└── LICENSE

Related MCP server: docrag

Architecture Design

┌─────────────────────────────────────────┐
│  server.py  (协议层)                     │
│  - 注册 MCP Tool                        │
│  - 参数校验 & 输出格式化                  │
└──────────────┬──────────────────────────┘
               │ 调用
┌──────────────▼──────────────────────────┐
│  retriever.py  (业务层)                  │
│  - KnowledgeRetriever  知识库检索        │
│  - DocumentRetriever   文档检索          │
│  - CaseRetriever       案例检索          │
└──────────────┬──────────────────────────┘
               │ 替换实现
┌──────────────▼──────────────────────────┐
│  数据层(可插拔)                         │
│  - MockRetriever     开发/测试用          │
│  - ChromaRetriever   ChromaDB 向量检索   │
│  - 自定义 Retriever   ES / 数据库 / ...   │
└─────────────────────────────────────────┘

The retriever adopts a pluggable design of base class + implementation. In server.py, you only need to replace the instantiated object to switch backends; the tool registration code requires no changes.

Quick Start

Installation

# 克隆仓库
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]"

Initialize ChromaDB Data

# 导入示例企业知识数据(知识库 5 条、文档 3 篇、案例 4 个)
python scripts/seed_data.py

Run the Service

# Mock 模式(无需 ChromaDB 数据)
python -m enterprise_knowledge_mcp.server

# ChromaDB 模式(需先执行 seed_data.py)
RETRIEVER_BACKEND=chroma python -m enterprise_knowledge_mcp.server

Run Tests

pytest tests/ -v

Connecting to MCP Clients

Claude Desktop

Add the following to 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)

Custom Retriever

Inherit the base class and implement the retrieve / get_document / search_cases methods:

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)]

Then replace it in server.py:

from .retriever import MyRetriever

knowledge_retriever = MyRetriever()

License

MIT

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

View all related MCP servers

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.

View all MCP Connectors

Latest Blog Posts

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