知识库搜索服务

一个MCP服务器,用于将Open WebUI知识库作为工具和资源暴露,使AI助手如Cursor和Claude Desktop能够搜索和访问知识库。

  • by RonasIT
  • TypeScript
  • 本地部署
  • 12 星标
  • 更新于
在 GitHub 查看 RonasIT/open-webui-mcp-server

使用说明

打开WebUI知识库MCP服务器

开放式WebUI知识库的MCP服务器 –从Cursor、Claude Desktop和其他MCP客户端搜索和访问您的知识库

特性 • 快速开始 • 用法 • 可用工具 • 指导AI • 贡献

一个MCP(模型上下文协议)服务器,它公开 开放网络用户界面 知识库作为工具和资源,使Cursor和Claude Desktop等人工智能助手能够搜索和访问知识库。

特性

  • 🔍 语义搜索 –使用语义搜索搜索知识库
  • 📚 知识库管理 –列出并获取有关知识库的信息
  • 👥 多用户支持 –每个连接都使用自己的API令牌进行隔离
  • 🌐 双重运输 –stdio(本地)和HTTP(远程)
  • 🔒 安全 –每个连接认证、输入验证、速率限制、CORS保护

快速开始

先决条件

  • Node.js 22+或Docker
  • 使用API访问权限打开WebUI实例
  • 来自Open WebUI的API令牌(设置→ 账户→ API密钥)

使用NPX运行

export OPEN_WEBUI_API_URL="https://your-open-webui-instance.com/api/v1"
export OPEN_WEBUI_API_TOKEN="sk-your-token-here"
npx open-webui-knowledge-mcp-server

或者从回购(之后 npm install 和 npm run build):

npx .

用法

stdio模式(本地)

export OPEN_WEBUI_API_URL="https://your-open-webui-instance.com/api/v1"
export OPEN_WEBUI_API_TOKEN="sk-your-token-here"
npx open-webui-knowledge-mcp-server

HTTP模式(生产)

export OPEN_WEBUI_API_URL="https://your-open-webui-instance.com/api/v1"
export MCP_TRANSPORT=http
export MCP_HTTP_PORT=8001
npx open-webui-knowledge-mcp-server

服务器终结点:

  • 主控程序: http://localhost:8001/mcp
  • 健康: http://localhost:8001/health

码头工人

docker build -t open-webui-mcp-server .
docker run -e OPEN_WEBUI_API_URL=https://your-instance.com/api/v1 -e OPEN_WEBUI_API_TOKEN=sk-xxx -p 8001:8001 open-webui-mcp-server

配置Cursor以使用MCP服务器

光标:stdio模式

编辑 ~/.cursor/mcp.json:

{
  "mcpServers": {
    "open-webui-knowledge": {
      "command": "npx",
      "args": ["open-webui-knowledge-mcp-server"],
      "env": {
        "OPEN_WEBUI_API_URL": "https://your-open-webui-instance.com/api/v1",
        "OPEN_WEBUI_API_TOKEN": "sk-your-token-here"
      }
    }
  }
}

游标:HTTP模式

{
  "mcpServers": {
    "open-webui-knowledge": {
      "url": "https://your-remote-server-url/mcp",
      "headers": {
        "Authorization": "Bearer sk-your-token-here"
      }
    }
  }
}

配置Claude Code以使用您的MCP服务器

安装

claude mcp add open-webui-knowledge --scope user \
  -e OPEN_WEBUI_API_URL=https://your-open-webui-instance.com/api/v1 \
  -e OPEN_WEBUI_API_TOKEN=sk-your-token-here \
  -- npx -y open-webui-knowledge-mcp-server

验证连接

启动Claude Code并检查MCP服务器是否正在运行:

/mcp

你应该看看 open-webui-knowledge 以绿色状态指示器列出。

卸载

要从Claude Code中删除MCP服务器:

claude mcp remove open-webui-knowledge

可用工具

  • list_knowledge_bases –列出所有可访问的知识库

  • search_knowledge_base –使用语义搜索搜索知识库

    • knowledge_base_id (必填):知识库的ID
    • query (必填):您的搜索查询
    • k (可选):结果数量(默认值:5)
  • get_knowledge_base_info –获取有关知识库的详细信息

    • knowledge_base_id (必填):知识库的ID

指导人工智能使用知识库

在Cursor或Claude Desktop中配置MCP服务器后,助手可以调用工具,但可能不知道 当 使用它们或 哪个 知识库查询。你可以给它明确的指示,这样它就更喜欢你的内部文档、标准和架构的知识库。

  1. 使用提供的模板 复制 AGENTS-template.md 进入一个你的AI读取的地方:

    • 光标: 复制到 AGENTS.md 在项目根目录中,或将其内容添加到 .cursor/rules 或游标设置中的项目规则。
    • Claude Desktop/其他客户: 将指令粘贴到自定义指令或系统提示中。
  2. 自定义模板

    • 调整“何时查询”部分以匹配您的域(例如,前端、后端、销售使用哪个库)。
    • 描述其他关键字/条件,以指示AI通过MCP调用您的知识库。
  3. 保持更新 模板告诉人工智能调用 list_知识库 当不确定时,可以更新表,当基数发生变化时,可以保持引用的准确性。

环境变量

变量 描述 默认值
OPEN_WEBUI_API_URL 打开WebUI API基础URL 必需
OPEN_WEBUI_API_TOKEN 默认API令牌(在HTTP中为可选) 无
MCP_TRANSPORT 运输方式: stdio 或 http stdio
MCP_HTTP_HOST HTTP服务器主机 0.0.0.0
MCP_HTTP_PORT HTTP服务器端口 8001
MCP_CORS_ORIGINS 逗号分隔的CORS源(空=无CORS) 空
MCP_RATE_LIMIT_PER_IP 每个IP的速率限制(例如“1000/分钟”) 1000/minute
MCP_RATE_LIMIT_PER_TOKEN 每个令牌的速率限制 1000/minute
MCP_RATE_LIMIT_HEALTH 健康终点的速率限制 10/minute

安全

  • 输入验证与净化
  • 速率限制(每个IP和每个令牌)
  • CORS保护(默认禁用)
  • 请求大小限制(最大10MB)
  • 错误消息清理
  • 令牌验证

贡献

看 贡献.md 用于开发设置和指南。

许可证

该项目根据 MIT许可证.


建于❤️ 通过 罗纳斯 IT

专业发展服务•开源贡献者

网站 • GitHub • 电子邮件