A

AI客服机器人MCP服务

@ChiragPatankar/AI-Customer-Support-Bot---MCP-Server
1 Stars 143 次浏览 ChiragPatankar 更新于 2026-08-23

一个使用Cursor AI和Glama.ai集成的模型上下文协议(MCP)服务器,提供由AI驱动的客户支持。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

AI 客户支持机器人 - MCP 服务器

一个使用 Cursor AI 和 Glama.ai 集成提供基于 AI 的客户支持的模型上下文协议 (MCP) 服务器。

功能

  • 从 Glama.ai 实时获取上下文
  • 使用 Cursor AI 生成基于 AI 的响应
  • 批处理支持
  • 优先级队列
  • 速率限制
  • 用户交互跟踪
  • 健康监控
  • 符合 MCP 协议

先决条件

  • Python 3.8+
  • PostgreSQL 数据库
  • Glama.ai API 密钥
  • Cursor AI API 密钥

安装

  1. 克隆仓库:
git clone <repository-url>
cd <repository-name>
  1. 创建并激活虚拟环境:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. 安装依赖项:
pip install -r requirements.txt
  1. 根据 .env.example 创建一个 .env 文件:
cp .env.example .env
  1. 使用您的凭据配置 .env 文件:
# API Keys
GLAMA_API_KEY=your_glama_api_key_here
CURSOR_API_KEY=your_cursor_api_key_here

# Database
DATABASE_URL=postgresql://user:password@localhost/customer_support_bot

# API URLs
GLAMA_API_URL=https://api.glama.ai/v1

# Security
SECRET_KEY=your_secret_key_here

# MCP Server Configuration
SERVER_NAME="AI Customer Support Bot"
SERVER_VERSION="1.0.0"
API_PREFIX="/mcp"
MAX_CONTEXT_RESULTS=5

# Rate Limiting
RATE_LIMIT_REQUESTS=100
RATE_LIMIT_PERIOD=60

# Logging
LOG_LEVEL=INFO
  1. 设置数据库:
# Create the database
createdb customer_support_bot

# Run migrations (if using Alembic)
alembic upgrade head

运行服务器

启动服务器:

python app.py

服务器将在 http://localhost:8000 上可用

API 端点

1. 根端点

GET /

返回基本的服务器信息。

2. MCP 版本

GET /mcp/version

返回支持的 MCP 协议版本。

3. 功能

GET /mcp/capabilities

返回服务器功能和支持的功能。

4. 处理请求

POST /mcp/process

处理带有上下文的单个查询。

示例请求:

curl -X POST http://localhost:8000/mcp/process \
  -H "Content-Type: application/json" \
  -H "X-MCP-Auth: your-auth-token" \
  -H "X-MCP-Version: 1.0" \
  -d '{
    "query": "How do I reset my password?",
    "priority": "high",
    "mcp_version": "1.0"
  }'

5. 批处理

POST /mcp/batch

在单个请求中处理多个查询。

示例请求:

curl -X POST http://localhost:8000/mcp/batch \
  -H "Content-Type: application/json" \
  -H "X-MCP-Auth: your-auth-token" \
  -H "X-MCP-Version: 1.0" \
  -d '{
    "queries": [
      "How do I reset my password?",
      "What are your business hours?",
      "How do I contact support?"
    ],
    "mcp_version": "1.0"
  }'

6. 健康检查

GET /mcp/health

检查服务器健康和服务状态。

速率限制

服务器实现速率限制,具有以下默认设置:

  • 每 60 秒 100 个请求
  • 速率限制信息包含在健康检查端点中
  • 超出速率限制的响应包括重置时间

错误处理

服务器以以下格式返回结构化的错误响应:

{
  "code": "ERROR_CODE",
  "message": "Error description",
  "details": {
    "timestamp": "2024-02-14T12:00:00Z",
    "additional_info": "value"
  }
}

常见错误代码:

  • RATE_LIMIT_EXCEEDED: 超出速率限制
  • UNSUPPORTED_MCP_VERSION: 不支持的 MCP 版本
  • PROCESSING_ERROR: 请求处理错误
  • CONTEXT_FETCH_ERROR: 从 Glama.ai 获取上下文时出错
  • BATCH_PROCESSING_ERROR: 批处理请求时出错

开发

项目结构

.
├── app.py              # Main application file
├── database.py         # Database configuration
├── middleware.py       # Middleware (rate limiting, validation)
├── models.py          # Database models
├── mcp_config.py      # MCP-specific configuration
├── requirements.txt   # Python dependencies
└── .env              # Environment variables

添加新功能

  1. 更新 mcp_config.py 以添加新的配置选项
  2. 如果需要,在 models.py 中添加新模型
  3. app.py 中创建新端点
  4. 更新功能端点以反映新功能

安全性

  • 所有 MCP 端点都需要通过 X-MCP-Auth 头进行身份验证
  • 实现了速率限制以防止滥用
  • 应保护数据库凭据的安全
  • API 密钥不应提交到版本控制系统

监控

服务器提供了用于监控的健康检查端点:

  • 服务状态
  • 速率限制使用情况
  • 已连接的服务
  • 处理时间

贡献

  1. 叉分仓库
  2. 创建特性分支
  3. 提交更改
  4. 推送到分支
  5. 创建拉取请求

许可证

[此处插入许可证]

支持

如需支持,请联系 [此处插入联系方式]