
Ai Customer Support Bot Mcp Server
一个模型上下文协议(MCP)服务器,使用Cursor AI和Glama.ai集成提供由AI驱动的客户服务。
概述
AI 客户支持机器人 - MCP 服务器
一个使用 Cursor AI 和 Glama.ai 集成提供 AI 支持的客户支持的 Model Context Protocol (MCP) 服务器。
功能
- 实时从 Glama.ai 获取上下文
- 使用 Cursor AI 生成 AI 响应
- 批量处理支持
- 优先级队列
- 速率限制
- 用户交互跟踪
- 健康监控
- 符合 MCP 协议
先决条件
- Python 3.8+
- PostgreSQL 数据库
- Glama.ai API 密钥
- Cursor AI API 密钥
安装
- 克隆仓库:
bash
git clone <repository-url>
cd <repository-name>
- 创建并激活虚拟环境:
bash
python -m venv venv
source venv/bin/activate # 在 Windows 上: venv\Scripts\activate
- 安装依赖项:
bash
pip install -r requirements.txt
- 基于
.env.example
创建.env
文件:
bash
cp .env.example .env
- 在
.env
文件中配置您的凭据:
env
# API 密钥
GLAMA_API_KEY=your_glama_api_key_here
CURSOR_API_KEY=your_cursor_api_key_here
# 数据库
DATABASE_URL=postgresql://user:password@localhost/customer_support_bot
# API URL
GLAMA_API_URL=https://api.glama.ai/v1
# 安全
SECRET_KEY=your_secret_key_here
# MCP 服务器配置
SERVER_NAME="AI Customer Support Bot"
SERVER_VERSION="1.0.0"
API_PREFIX="/mcp"
MAX_CONTEXT_RESULTS=5
# 速率限制
RATE_LIMIT_REQUESTS=100
RATE_LIMIT_PERIOD=60
# 日志
LOG_LEVEL=INFO
- 设置数据库:
bash
# 创建数据库
createdb customer_support_bot
# 运行迁移(如果使用 Alembic)
alembic upgrade head
运行服务器
启动服务器:
bash
python app.py
服务器将在 http://localhost:8000
可用。
API 端点
1. 根端点
bash
GET /
返回基本的服务器信息。
2. MCP 版本
bash
GET /mcp/version
返回支持的 MCP 协议版本。
3. 功能
bash
GET /mcp/capabilities
返回服务器功能和支持的特性。
4. 处理请求
bash
POST /mcp/process
处理带有上下文的单个查询。
示例请求:
bash
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. 批量处理
bash
POST /mcp/batch
在单个请求中处理多个查询。
示例请求:
bash
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. 健康检查
bash
GET /mcp/health
检查服务器健康状况和服务状态。
速率限制
服务器实现以下默认的速率限制:
- 每 60 秒 100 个请求
- 健康检查端点包括速率限制信息
- 超出速率限制的响应包括重置时间
错误处理
服务器返回结构化的错误响应,格式如下:
json
{
"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 # 主应用程序文件
├── database.py # 数据库配置
├── middleware.py # 中间件(速率限制、验证)
├── models.py # 数据库模型
├── mcp_config.py # MCP 特定配置
├── requirements.txt # Python 依赖项
└── .env # 环境变量
添加新功能
- 在
mcp_config.py
中添加新的配置选项 - 如果需要,在
models.py
中添加新的模型 - 在
app.py
中创建新的端点 - 更新功能端点以反映新功能
安全
- 所有 MCP 端点都需要通过
X-MCP-Auth
头进行身份验证 - 实现了速率限制以防止滥用
- 数据库凭据应保持安全
- API 密钥不应提交到版本控制
监控
服务器提供健康检查端点用于监控:
- 服务状态
- 速率限制使用情况
- 连接的服务
- 处理时间
贡献
- 分叉仓库
- 创建功能分支
- 提交更改
- 推送到分支
- 创建 Pull Request
许可证
该项目根据 MIT 许可证许可 - 请参阅 LICENSE 文件获取详细信息。
支持
如需支持,请在仓库中创建问题或联系开发团队。

1panel
mcp-1panel 是为 1Panel 实现的 Model Context Protocol (MCP) 服务器。
Aact mcp
与AACT临床试验数据库集成,支持查询和分析大规模试验数据,适用于研究和医疗应用。
Abap Adt
一个服务器,它将模型上下文协议(MCP)与SAP ABAP系统连接起来,使像Cline这样的工具能够检索ABAP源代码、表结构和其他开发工件。
Adwords Mcp
一个令人尴尬的MCP服务器,向Cursor、Claude和其他客户端的开发者提供广告