MCP-Serveur
Un serveur modulaire et extensible pour opérations synchrones et asynchrones.
Propulsé par Docker, BullMQ, Redis et FastMCP.
______________________________________________________________________
📜 目录
______________________________________________________________________
🌟 引言
MCP-服务器 是一个健壮的服务器,专为性能和模块化而设计。它允许优雅地管理复杂任务,无论是即时(同步)还是长期(异步),这得益于基于以下的解耦架构:
- FastMCP :用于有效的请求处理和会话管理。
- Docker&Docker编写 :用于可靠的容器化和简化部署。
- BullMQ和Redis :用于健壮高效的异步任务队列。
- TypeScript :用于类型化、可维护和可扩展的代码。
本文档将指导您安装、运行和扩展服务器。
______________________________________________________________________
📋 先决条件
开始之前,请确保在系统上安装并配置了以下内容:
- :用于执行容器。管理脚本将检查其存在。
- :用于服务的编排。脚本
run.sh将检查他的存在。 - :(可选,但建议用于本地开发)用于Node.js依赖项管理和脚本执行。
______________________________________________________________________
🚀 安装和配置初始化
按照以下步骤设置您的环境:
- 克隆存储库 :
git clone
cd MCP-Server-Asynchrone- 初始配置通过
run.sh:
乐脚本 run.sh 是Docker环境的交互式管理控制台。
- 使脚本可执行:
chmod +x run.sh- 启动脚本:
./run.sh- 环境文件(.env) : - 如果文件 .env 缺少,通过复制模板创建 .env.example. - ⚠️ 行动请求 :手动编辑文件 .env 定义值 强大而独特 倒 AUTH_TOKEN, REDIS_PASSWORD, WEBHOOK_SECRET以及对您的部署敏感或特定的任何其他变量。
# variables à personnaliser dans .env
PORT=8081
NODE_ENV=production
LOG_LEVEL=info
AUTH_TOKEN="VOTRE_TOKEN_SECRET_ULTRA_ROBUSTE"
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_PASSWORD="VOTRE_MOT_DE_PASSE_REDIS_COMPLEXE"
WEBHOOK_SECRET="VOTRE_SECRET_WEBHOOK_LONG_ET_UNIQUE"______________________________________________________________________
⚙️ 服务器执行和管理
使用脚本 run.sh 适用于所有服务生命周期管理操作。
- 开始/更新 :选项
1此命令根据需要构建图像,并在后台启动所有服务。 - 完全重新启动 :选项
2.停止、重建并重新启动所有服务。 - 停止所有服务 :选项
3.停止并移除容器。 - 重建图像(无缓存) :选项
4强制在不使用缓存的情况下完全重建所有Docker映像。
______________________________________________________________________
🔍 使用检查器(UI客户端)
MCP检查器提供了一个web用户界面,用于与服务器交互。
- 发射 :
要启动检查器,请运行以下命令:
npx @modelcontextprotocol/inspector此命令启动代理服务器并自动打开浏览器中的客户端界面,通常位于 http://localhost:6274.
- 连接配置 :
在界面侧栏中,您需要配置与MCP服务器的连接模式。
- 连接到服务器 :选择 Streamable HTTP 欧点 SSE 并输入服务器的完整URL(例如 http://VOTRE_IP:8081/mcp). - 认证 :如果您的服务器需要身份验证令牌,请展开“身份验证”部分并输入 Bearer Token.
- 连接 :
配置完成后,单击按钮 “连接”检查器将尝试与MCP服务器建立连接。
- 交互 :
连接后,您可以使用不同的选项卡与服务器交互:
- 资源 :列出并阅读可用资源。 - 提示 :列出并执行提示。 - 工具 :列出并调用具有特定参数的工具。
______________________________________________________________________
🤝 贡献
欢迎捐款!打开一个 _问题_ 讨论您希望进行的更改。
