这是一个实现了Model Context Protocol (MCP) 的服务器,专门用于为AI客户支持机器人提供后端服务。它能够集成外部知识源(如Glama.ai)获取上下文,并调用AI模型(如Cursor AI)生成回复。
主要功能点
- 上下文获取: 能够从配置的知识源实时检索与用户查询相关的背景信息。
- AI智能回复: 利用AI模型处理用户查询和获取到的上下文,生成人性化的回复。
- 批量处理: 支持一次性提交多个用户查询,提高处理效率。
- 用户交互记录: 可选地记录用户查询、AI回复和使用的上下文,便于后续分析和改进。
- 速率限制: 内置速率限制机制,保护服务器免受滥用。
- 健康监控: 提供健康检查端点,监控服务器及其依赖服务的状态。
- MCP协议支持: 实现MCP规范定义的版本和能力声明,并以MCP风格处理请求和响应。
安装步骤
- 克隆仓库:
git clone <repository-url> cd <repository-name> - 创建并激活Python虚拟环境:
python -m venv venv source venv/bin/activate # Windows下使用: venv\Scripts\activate - 安装依赖:
pip install -r requirements.txt - 配置环境变量: 复制 '.env.example' 文件为 '.env',并根据您的实际情况编辑 '.env' 文件,填入Glama.ai和Cursor AI的API Key、数据库连接信息等。
- 设置数据库:
- 创建数据库(如果不存在):'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与计算