
这是一个用于自定义 webhook 端点(知识库)的模型上下文协议(MCP)服务器。
通过这个工具,你可以轻松管理和查询你的知识库列表(webhook 端点)。你可以通过注册它们的 URL 来添加新的文档来源,并可选地提供描述和 API 密钥。
你还可以列出所有已注册的文档来源并查看其详细信息。
当你准备提问或搜索时,可以通过文本问题查询知识库,指定要搜索的来源或留空以搜索所有来源。
该工具将聚合查询来源的结果并提供给你。
curl -LsSf https://astral.sh/uv/install.sh | sh 安装想象一下能够建立一个统一的设置,在这里你可以连接所有自定义的知识库端点 webhook 到一个配置中,从而消除对多个 MCP 服务器的需求。

要通过 Smithery 自动安装 ArcKnowledge for Claude Desktop:
npx -y @smithery/cli install @dragonjump/mcp-ARCknowledge --client claude
git clone https://github.com/dragonjump/mcp-arcknowledge
cd mcp-arcknowledge
配置端点
复制或修改 knowledge_document_sources.json。参考 sample_endpoint 文件夹中的当前知识端点 API 架构支持。你可以根据需要更改代码。
连接到 MCP 服务器
复制以下 JSON 并用适当的 {{PATH}} 值替换:
{
"mcpServers": {
"mcp-arcknowledge": {
"command": "cmd /c uv",
"args": [
"--directory",
"C:/Users/Acer/OneDrive/GitHub/YourDrive",
"run",
"main.py"
],
"env": {
"DOCUMENT_SOURCES_PATH": "C:/Users/Acer/OneDrive/GitHub/YourDrive/testcustomother.json"
}
}
}
}
对于 Claude,将其保存为 claude_desktop_config.json 在你的 Claude Desktop 配置目录中:
~/Library/Application Support/Claude/claude_desktop_config.json
对于 Cursor,将其保存为 mcp.json 在你的 Cursor 配置目录中:
~/.cursor/mcp.json
对于 cline,将其保存为 cline_mcp_settings.json 在你的配置中
如果你在 Windows 上运行此项目,请注意 go-sqlite3 需要启用 CGO 才能编译和正常工作。默认情况下,Windows 上 CGO 是禁用的,因此你需要显式启用它并安装 C 编译器。
ucrt64\bin 文件夹添加到你的 PATH 中。
→ 详细的步骤指南可以在这里找到:这里。此应用程序由简单的主组件组成:
Python MCP 服务器 (main.py):一个实现模型上下文协议(MCP)的 Python 服务器,提供标准化的客户端工具来与数据交互并调用 API 调用。
fastmcp dev main.py
或者安装用于与 Claude 使用:
fastmcp install main.py
knowledge_document_sources.json 的知识列表默认从配置加载知识源
knowledge_document_sources.json
你可以从 mcp.json 环境配置加载自定义知识
"env": {
"DOCUMENT_SOURCES_PATH": "C:/Users/Acer/OneDrive/Somewhere/YourDrive/your-custom.json"
}
显示并解释所有已注册的知识源列表。
例如:显示我的 arcknowledge 列表
添加新的 arcknowledge 端点 URL 文档来源。 提供 URL、描述目的和 API 密钥(如果有)
例如:添加新的 arcknowledge 数据源。端点是 http://something.com/api/123。
目的是处理关于 123 主题的问题。API 密钥是 'sk-2123123'
使用 query_knowledge_base 查询这些来源构建的 arcknowledge 基础。
例如:为我查询我的产品知识库。问题是:哪个是最贵的产品?
例如:为我查询我的业务 arcknowledge 基础。问题是:业务是什么时候成立的?
例如:为我查询所有我的 arcknowledge 基础。问题是:业务是什么时候成立的?哪个是最贵的产品?
add_new_knowledge_document_source(url: str, description: str = None, apikey: str = None) -> str
list_knowledge_document_sources() -> Dict[str, Dict[str, str]]
query_knowledge_base(query: str, source_ids: List[str] = [], image: str = '') -> str
mcp-arcknowledge/
├── main.py # 主服务器实现
├── README.md # 文档
├── requirements.txt # 项目依赖
mcp.json 文件:{
"name": "mcp-webhook-ai-agent",
"version": "1.0.0",
"description": "具有 RAG 功能的 webhook AI 代理",
"main": "main.py",
"tools": [
{
"name": "set_document_source",
"description": "为 RAG 操作注册新的文档来源 URL"
},
{
"name": "list_document_sources",
"description": "列出所有已注册的文档来源"
},
{
"name": "query_rag",
"description": "使用 RAG 查询指定的文档来源"
},
{
"name": "process_post_query",
"description": "处理带有查询负载的 POST 请求"
}
],
"dependencies": {
"fastmcp": ">=0.4.0",
"requests": ">=2.31.0",
"pydantic": ">=2.0.0"
}
}
配置 Cursor AI:
mcp.json 文件的路径验证配置:
# 检查 MCP 是否正确配置
fastmcp check mcp.json
# 列出可用工具
fastmcp list
main.py 中定义新的模型@mcp.tool() 装饰器添加新的工具MIT