M

MCP 方舟知识库管理工具

@dragonjump/mcp-arcknowledge
0 Stars 487 次浏览 dragonjump 更新于 2026-08-23

通过此功能,您可以轻松管理和查询您的知识库列表(Webhook端点)。您可以通过注册URL添加新的文档来源,并可选地提供描述和API密钥。 您还可以列出所有已注册的文档来源并查看其详细信息。 当您

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "mcp-arcknowledge": {
      "args": [
        "--directory",
        "C:/Users/Acer/OneDrive/GitHub/YourDrive",
        "run",
        "main.py"
      ],
      "command": "cmd /c uv",
      "env": {
        "DOCUMENT_SOURCES_PATH": "C:/Users/Acer/OneDrive/GitHub/YourDrive/testcustomother.json"
      }
    }
  }
}

该服务需要配置环境变量:DOCUMENT_SOURCES_PATH

服务介绍

MCP ArcKnowledge

arc knowledge MCP

它是如何工作的?

arc knowledge diagram

这是一个用于自定义 webhook 端点(知识库)的模型上下文协议 (MCP) 服务器。

通过它,您可以轻松管理和查询您的知识库(webhook 端点)列表。您可以通过注册其 URL 来添加新的文档源,并可选择提供描述和 API 密钥。

您还可以列出所有已注册的文档源并查看它们的详细信息。

当您准备好提问/搜索时,可以使用文本问题查询知识库,指定要搜索的来源或留空以搜索所有来源。

该工具将汇总来自查询来源的结果并提供给您。

前提条件

  • Go
  • Python 3.6+
  • Anthropic Claude Desktop 应用程序(或 Cursor 或 Cline)
  • UV(Python 包管理器),使用 curl -LsSf https://astral.sh/uv/install.sh | sh 安装

概念

想象一下能够通过一个统一的设置来连接所有的自定义知识库端点 webhook,在一个配置中消除对多个 MCP 服务器的需求。

演示

arcknowledge demo cursor
arcknowledge demo cursor
arcknowledge demo cline

观看 mcp cursor 视频

安装设置

  1. 克隆仓库

    #0
    
  2. 配置端点
    复制或修改 knowledge_document_sources.json
    查看 sample_endpoint 文件夹以获取当前支持的知识端点 API 模式的参考。您可以根据需要更改代码。

  3. 连接到 MCP 服务器

    使用适当的 {{PATH}} 值复制以下 JSON:

     {
         "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 配置目录中:

    #1
    

    对于 Cursor,将其保存为 mcp.json 在您的 Cursor 配置目录中:

    #2
    

    对于 cline,将其保存为 cline_mcp_settings.json 在您的配置目录中。

  4. 重启客户端:Claude Desktop / Cursor / Cline / Windsurf
    打开并重新启动您的 MCP 客户端 IDE,例如 Claude/Cursor/Cline 等。

Windows 兼容性

如果你在 Windows 上运行这个项目,请注意 go-sqlite3 需要启用 CGO 才能编译和正常工作。默认情况下,Windows 上禁用了 CGO,因此你需要显式地启用它并安装一个 C 编译器。

使其工作的步骤:

  1. 安装 C 编译器
    我们建议使用 MSYS2 来为 Windows 安装 C 编译器。安装 MSYS2 后,请确保将 ucrt64\bin 文件夹添加到你的 PATH 中。
    → 详细的分步指南可以在这里找到这里

架构概述

此应用程序由一个简单的主组件组成:

Python MCP 服务器 (main.py):实现模型上下文协议 (MCP) 的 Python 服务器,提供标准化工具供客户端与数据交互并调用 API。

数据存储

  • 所有存储都在运行时本地的主 Python 服务器中。

技术细节

  1. 客户端向 Python MCP 服务器发送请求
  2. MCP 服务器查找其运行时配置知识库。
  3. 然后根据您的查询,它会调用您的知识库端点 API。

故障排除

  • 如果在运行 uv 时遇到权限问题,您可能需要将其添加到 PATH 中或使用可执行文件的完整路径。
  • 确保 Go 应用程序和 Python 服务器都正在运行,以便集成能够正常工作。

启动服务器

  1. 配置
    以开发模式运行服务器:
fastmcp dev main.py

或者安装它以与 Claude 一起使用:

fastmcp install main.py

可用工具

1. 默认从 knowledge_document_sources.json 加载知识列表

默认从配置中加载知识来源

knowledge_document_sources.json
 

您可以从 mcp.json 环境配置中加载自定义知识


        "env": {
            "DOCUMENT_SOURCES_PATH": "C:/Users/Acer/OneDrive/Somewhere/YourDrive/your-custom.json"
        }

2. 列出所有当前注册的知识来源

显示并解释所有已注册的知识来源列表。

eg. Show me my arcknowledge list 
 

3. 添加新的知识文档来源

添加新的知识端点 URL 文档来源。
提供 URL、描述目的和 API 密钥(如果有)

eg. Add new arcknowledge data source. Endpoint is http://something.com/api/123.
Purpose is to handle questions on 123 topic. Api key is 'sk-2123123' 
 

4. 查询特定的知识文档来源

使用 query_knowledge_base 从这些来源构建的知识库进行查询。

eg. Query for me my  knowledge base for product. Question is : Which is most expensive product? 


eg. Query for me my  arcknowledge base for business. Question is :When is the business established? 

eg. Query for me all my  arcknowledge base  . Question is :When is the business established? Which is most expensive product?

工具函数

  1. add_new_knowledge_document_source(url: str, description:str = None, apikey:str = None) -> str

    • 注册一个新的文档源 URL,可选地带有描述和 API 密钥。
    • 返回:包含新源 ID 的确认消息。
  2. list_knowledge_document_sources() -> Dict[str, Dict[str, str]]

    • 列出所有已注册的文档源。
    • 返回:映射源 ID 到其详细信息(URL、描述、API 密钥)的字典。
  3. query_knowledge_base(query: str, source_ids: List[str] = [], image: str = '') -> str

    • 使用文本查询和可选的图像数据查询指定的文档源(如果没有指定则查询所有)。
    • 返回:来自查询源的汇总结果。

开发

关键文件项目结构

mcp-arcknowledge/
├── main.py          # Main server implementation
├── README.md           # Documentation
├── requirements.txt    # Project dependencies

Cursor AI MCP 配置

  1. 在你的项目根目录下创建一个 mcp.json 文件:
{
    "name": "mcp-webhook-ai-agent",
    "version": "1.0.0",
    "description": "Webhook AI agent with RAG capabilities",
    "main": "main.py",
    "tools": [
        {
            "name": "set_document_source",
            "description": "Register a new document source URL for RAG operations"
        },
        {
            "name": "list_document_sources",
            "description": "List all registered document sources"
        },
        {
            "name": "query_rag",
            "description": "Query the specified document sources using RAG"
        },
        {
            "name": "process_post_query",
            "description": "Process a POST request with a query payload"
        }
    ],
    "dependencies": {
        "fastmcp": ">=0.4.0",
        "requests": ">=2.31.0",
        "pydantic": ">=2.0.0"
    }
}
  1. 配置 Cursor AI:

    • 打开 Cursor AI 设置
    • 导航到 MCP 部分
    • 添加你的 mcp.json 文件路径
    • 重启 Cursor AI 以应用更改
  2. 验证配置:

# Check if MCP is properly configured
fastmcp check mcp.json

# List available tools
fastmcp list

添加新功能

  1. main.py 中定义新模型
  2. 使用 @mcp.tool() 装饰器添加新工具
  3. 根据需要更新文档

许可证

MIT

贡献

  1. 分叉仓库
  2. 创建你的功能分支
  3. 提交你的更改
  4. 推送到分支
  5. 创建一个新的 Pull Request

相关 MCP 服务