Onyx MCP Server

Onyx MCP Server

site icon
2025.03.24 2
TypeScript知识管理语义搜索聊天集成开发效率
Onyx MCP Server 是一个模型上下文协议(MCP)服务器,用于与 Onyx AI 知识库无缝集成。它作为 MCP 兼容客户端与 Onyx API 之间的桥梁,提供强大的语义搜索和聊天功能,使用户能够从文档中搜索和检索相关上下文。
View on GitHub

Overview

产品定位

Onyx MCP Server 是一个模型上下文协议(MCP)服务器,用于与 Onyx AI 知识库无缝集成。它作为 MCP 兼容客户端与 Onyx API 之间的桥梁,提供强大的语义搜索和聊天功能,使用户能够从文档中搜索和检索相关上下文。

核心功能

  • 增强搜索:通过 LLM 相关性过滤在 Onyx 文档集中进行语义搜索
  • 上下文窗口检索:检索匹配块上方和下方的块以获得更好的上下文
  • 完整文档检索:可选择检索整个文档而不仅仅是块
  • 聊天集成:使用 Onyx 强大的聊天 API 结合 LLM + RAG 获取全面答案
  • 可配置的文档集过滤:针对特定文档集以获得更相关的结果

适用场景

  • 知识管理:通过任何 MCP 兼容接口访问组织的知识库
  • 客户支持:帮助支持代理快速找到相关信息
  • 研究:在组织的文档中进行深入研究
  • 培训:提供对培训材料和文档的访问
  • 政策合规:确保团队能够访问最新的政策和程序

工具列表

  1. Search Tool (search_onyx): 提供对 Onyx 搜索功能的直接访问,具有增强的上下文检索能力。
  2. 参数包括查询、文档集、最大结果数、上下块数、是否检索完整文档等。
  3. Chat Tool (chat_with_onyx): 利用 Onyx 的聊天 API 结合 LLM + RAG 获取全面答案。
  4. 参数包括查询、角色 ID、文档集、聊天会话 ID 等。

常见问题解答

  • 如何选择搜索和聊天工具?
  • 使用搜索工具时:需要从文档中获取特定的、有针对性的信息,并希望控制检索多少上下文。
  • 使用聊天工具时:需要结合多个来源信息的全面答案,或希望 LLM 为你综合信息。

使用教程

使用依赖

  • Node.js (v16 或更高版本)
  • 具有 API 访问权限的 Onyx 实例
  • Onyx API 令牌

安装教程

  1. 克隆仓库: bash git clone https://github.com/lupuletic/onyx-mcp-server.git cd onyx-mcp-server
  2. 安装依赖: bash npm install
  3. 构建服务器: bash npm run build
  4. 配置 Onyx API 令牌: bash export ONYX_API_TOKEN="your-api-token-here" export ONYX_API_URL="http://localhost:8080/api" # 根据需要调整
  5. 启动服务器: bash npm start

调试方式

  • 运行开发模式: bash npm run dev
  • 运行测试套件: bash npm test
  • 运行带覆盖率的测试: bash npm run test:coverage
  • 运行 lint: bash npm run lint
  • 修复 lint 问题: bash npm run lint:fix

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。