MCP-ArcKnowledge

MCP-ArcKnowledge

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

Category
访问服务器

README

MCP ArcKnowledge

arc knowledge MCP

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

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

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

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

该工具将聚合来自查询源的结果,并将其提供给您。

前提条件

  • Go
  • Python 3.6+
  • Anthropic Claude 桌面应用程序(或 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. 克隆仓库
git clone https://github.com/dragonjump/mcp-arcknowledge
cd mcp-arcknowledge
  1. 配置端点 复制或更改 knowledge_document_sources.json。 有关当前支持的知识端点 API 模式的参考,请参见 sample_endpoint 文件夹。您可以根据需要更改代码以满足您的需求。

  2. 连接到 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 桌面配置目录中:

~/Library/Application Support/Claude/claude_desktop_config.json

对于 Cursor,将其另存为 mcp.json,并放置在 Cursor 配置目录中:

~/.cursor/mcp.json

对于 cline,将其另存为 cline_mcp_settings.json,并放置在您的配置中

  1. 重启客户端:Claude Desktop / Cursor / Cline / Windsurf 打开并重启您的客户端 IDE 以使用 MCP。例如 Claude/Cursor/Cline/etc

Windows 兼容性

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

使其工作的步骤:

  1. 安装 C 编译器 我们建议使用 MSYS2 为 Windows 安装 C 编译器。 安装 MSYS2 后,请确保将 ucrt64\bin 文件夹添加到您的 PATH。 → 逐步指南可在此处获得 here

  2. 启用 CGO 并运行应用程序

    cd whatsapp-bridge
    go env -w CGO_ENABLED=1
    go run main.go
    

如果没有此设置,您可能会遇到如下错误:

Binary was compiled with 'CGO_ENABLED=0', go-sqlite3 requires cgo to work.

架构概述

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

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. 列出所有当前注册的知识源

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

例如。 显示我的 arcknowledge 列表

3. 添加新的知识文档源

添加新的 arcknowledge 端点 URL 文档源。 提供 URL、描述用途和 API 密钥(如果有)。

例如。 添加新的 arcknowledge 数据源。 端点是 http://something.com/api/123。
目的是处理有关 123 主题的问题。 API 密钥是 'sk-2123123'

4. 查询特定知识文档源

使用 query_knowledge_base 查询从这些源构建的 arcknowledge 库。

例如。 为我查询我的产品知识库。 问题是:哪个产品最贵?

例如。 为我查询我的业务 arcknowledge 库。 问题是:业务何时成立?

例如。 为我查询我所有的 arcknowledge 库。 问题是:业务何时成立? 哪个产品最贵?

工具函数

  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          # 主要服务器实现
├── README.md           # 文档
├── requirements.txt    # 项目依赖项

Cursor AI MCP 配置

  1. 在您的项目根目录中创建一个 mcp.json 文件:
{
    "name": "mcp-webhook-ai-agent",
    "version": "1.0.0",
    "description": "具有 RAG 功能的 Webhook AI 代理",
    "main": "main.py",
    "tools": [
        {
            "name": "set_document_source",
            "description": "注册一个新的文档源 URL 以进行 RAG 操作"
        },
        {
            "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"
    }
}
  1. 配置 Cursor AI:

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

# 检查 MCP 是否已正确配置
fastmcp check mcp.json

# 列出可用工具
fastmcp list

添加新功能

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

许可证

MIT

贡献

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

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选