这是一个实现了Model Context Protocol (MCP) 的服务器,专门用于为AI客户支持机器人提供后端服务。它能够集成外部知识源(如Glama.ai)获取上下文,并调用AI模型(如Cursor AI)生成回复。

主要功能点

  • 上下文获取: 能够从配置的知识源实时检索与用户查询相关的背景信息。
  • AI智能回复: 利用AI模型处理用户查询和获取到的上下文,生成人性化的回复。
  • 批量处理: 支持一次性提交多个用户查询,提高处理效率。
  • 用户交互记录: 可选地记录用户查询、AI回复和使用的上下文,便于后续分析和改进。
  • 速率限制: 内置速率限制机制,保护服务器免受滥用。
  • 健康监控: 提供健康检查端点,监控服务器及其依赖服务的状态。
  • MCP协议支持: 实现MCP规范定义的版本和能力声明,并以MCP风格处理请求和响应。

安装步骤

  1. 克隆仓库:
    git clone <repository-url>
    cd <repository-name>
  2. 创建并激活Python虚拟环境:
    python -m venv venv
    source venv/bin/activate  # Windows下使用: venv\Scripts\activate
  3. 安装依赖:
    pip install -r requirements.txt
  4. 配置环境变量: 复制 '.env.example' 文件为 '.env',并根据您的实际情况编辑 '.env' 文件,填入Glama.ai和Cursor AI的API Key、数据库连接信息等。
  5. 设置数据库:
    • 创建数据库(如果不存在):'createdb customer_support_bot'
    • 运行数据库迁移(如果项目使用了Alembic):'alembic upgrade head' (此步骤假定项目包含Alembic配置,请根据实际文件结构确认)

服务器配置 (供MCP客户端使用)

MCP客户端需要知道如何启动并连接到此服务器。以下是MCP客户端通常需要的配置信息:

  • 服务器名称 (server name): AI Customer Support Bot
  • 启动命令 (command): python
  • 启动参数 (args): ["app.py"]

服务器启动后,默认监听在 'http://localhost:8000'。MCP客户端需要将请求发送到 '/mcp/' 前缀下的各个端点(如 '/mcp/process' 或 '/mcp/batch')。客户端通常还需要在请求头中包含 'X-MCP-Auth' 进行身份验证,并包含 'X-MCP-Version: 1.0' 指定MCP协议版本。

基本使用方法

服务器启动后(运行 'python app.py'),MCP客户端可以通过发送HTTP POST请求到 '/mcp/process' 或 '/mcp/batch' 端点来与服务器交互。请求体需要是符合MCPRequest或MCPBatchRequest结构的JSON数据,并在请求头中包含认证信息。服务器会根据查询和上下文生成回复,并以MCPResponse或MCPBatchResponse结构返回。

例如,一个MCP客户端可能会构建一个JSON请求体,包含用户的问题,并发送到服务器的 '/mcp/process' 端点。服务器接收请求后,会去获取相关上下文,调用AI处理,然后将结果返回给客户端。

信息

分类

AI与计算