使用说明
MCP服务器集成
此存储库演示了MCP Server(模型上下文协议)与OpenAI,n8n和其他服务的集成,在Docker环境中运行,具有简洁的代码,真正的架构以及后端和安全最佳实践。
该项目被开发为一个真实的研究环境,模拟使用容器,环境变量,AI备份,超时,重试,基本可观察性和路由保护的生产场景。
项目目标
- 在 Node.js 上部署集中的 MCP Server
- 通过 REST 安全地暴露 MCP 工具
- 将 MCP 与 OpenAI、n8n 和 Evolution API 集成
- 使用 Docker 和 Docker Compose
- 应用身份验证和速率限制中间件
什么是MCP服务器
模型上下文协议允许人工智能代理以有组织、可重复使用和脱钩的方式使用外部工具。
MCP Server 充当中间层,负责集中集成、标准化响应以及应用备份、超时和安全规则。
一般 建筑
客户端或人工智能消耗MCP服务器,而MCP服务器则与OpenAI,n8n和外部API进行通信。对关键工具的访问受到 API 密钥验证的保护。
项目结构
使用 Docker
先决条件:
- 码头工人
- Docker Compose
提升环境:
docker组成-up-d
要跟踪日志:
docker编写日志-f mcp服务器
安全与中间件
该项目实施中间件以确保应用程序的稳定性和安全性。
身份验证中间件(Auth Middleware)
敏感路由受到保护,需要标头 x-api-key.
验证通过环境变量进行 MCP_API_KEYS.
速率限制
用于防止API滥用的中间件,通过限制特定时间范围内每个IP的请求数量。
可用工具和路线
公共路线
健康检查
得到/
返回 MCP 服务器的状态和当前版本。
拼
GET/工具/ping
简单的连接测试。
受保护的路由 (需要 x-api-key)
与N8N集成
POST/工具/n8n
允许从 MCP 服务器发射 n8n webhooks。
IA工具
POST/工具/ai
- 与OpenAI集成
- 自动回退
- 已配置超时和重试
AI 诊断
GET/工具/人工智能/信息
返回诊断信息而不消耗令牌。
Webhook进化
POST/webhook/进化
接收和处理 Evolution API 事件。
执行 Workflow
POST/工具/工作流/运行
在 n8n 上运行特定的工作流程。
在 n8n 中自动生成工作流
POST/工具/工作流程/生成
在 n8n 中自动创建工作流。
功能:
- 创建动态工作流
- 自动定义 webhook
- 直接发布到n8n
- 从 webhook 返回 URL
答案示例 :
{
“工具”:“工作流生成”,
“状态”:“正常”,
“工作流ID”:“jb6tL0eKiPLgehPR”,
“webhookUrl”:https://webhook.camiloruas.dev/webhook/auto-ping"
}
运行中的容器
该项目在通过 Portainer 管理的自托管服务器上运行。
图片 :
已使用的域名
- mcp.camiloruas.dev
- n8n.camiloruas.dev
- webhook.amiloraus.dev
- portainer.camiloruas.dev
外部曝光通过Cloudflare隧道进行。
应用良好实践
- 精简架构
- 版本化外的敏感变量
- 安全中间件(Auth, Rate Limit)
- 隔离容器
- IA的退路
作者
卡米洛·鲁阿斯
github: https://github.com/Camiloruas
领英: https://www.linkedin.com/in/camilo-ruas-3a2a6425/
不断发展的项目。