返回市场
MCP-服务器-异步

MCP-服务器-异步

作者:DeamonDev8883 星标更新:2025-07-08

项目介绍

<div align="center"> <h1><font color="#2ECC71">MCP-服务器</font></h1> <p><strong>一个模块化且可扩展的服务器,用于同步和异步操作。</strong></p> <p>由Docker、BullMQ、Redis和FastMCP驱动。</p> <p> <img src="https://img.shields.io/badge/Docker-2496ED?style=for-the-badge&logo=docker&logoColor=white" alt="[Docker Logo Image]"> <img src="https://img.shields.io/badge/Node.js-339933?style=for-the-badge&logo=nodedotjs&logoColor=white" alt="[Node.js Logo Image]"> <img src="https://img.shields.io/badge/TypeScript-3178C6?style=for-the-badge&logo=typescript&logoColor=white" alt="[TypeScript Logo Image]"> <img src="https://img.shields.io/badge/Redis-DC382D?style=for-the-badge&logo=redis&logoColor=white" alt="[Redis Logo Image]"> <img src="https://img.shields.io/badge/pnpm-F69220?style=for-the-badge&logo=pnpm&logoColor=white" alt="[pnpm Logo Image]"> </p> </div>

📜 <font color="#3498DB">目录</font>


🌟 <font color="#3498DB">简介</font>

MCP-服务器 是一个强大的服务器,旨在性能和模块化设计。它优雅地处理复杂的任务,无论是即时(同步)还是长时间(异步),通过以下解耦架构实现:

  • FastMCP:用于高效请求处理和会话管理。
  • Docker & Docker Compose:用于可靠的容器化和简化部署。
  • BullMQ & Redis:用于健壮且高效的异步任务队列。
  • TypeScript:用于类型化的、可维护且可扩展的代码。

本档将指导您完成服务器的安装、运行及扩展。


📋 <font color="#3498DB">预备条件</font>

在开始之前,请确保您的系统已安装并配置了以下内容:

  • <img src="https://img.shields.io/badge/Docker_Engine-必需-blue?logo=docker" alt="[Docker Engine Badge]"> :用于容器执行。管理脚本会检查其存在。
  • <img src="https://img.shields.io/badge/Docker_Compose_(v2+)-必需-blue?logo=docker" alt="[Docker Compose Badge]"> :用于服务编排。run.sh 脚本会检查其存在。
  • <img src="https://img.shields.io/badge/pnpm-推荐-orange?logo=pnpm" alt="[pnpm Badge]"> :(可选,但推荐用于本地开发)用于Node.js依赖管理和脚本执行。

🚀 <font color="#3498DB">安装与初始配置</font>

按照以下步骤设置您的环境:

  1. 克隆仓库

    git clone [https://github.com/Jboner-Corvus/MCP-Server-Asynchrone.git](https://github.com/Jboner-Corvus/MCP-Server-Asynchrone.git)
    cd MCP-Server-Asynchrone
    
  2. 通过 run.sh 进行初始配置run.sh 脚本是您的交互式Docker环境管理控制台。

    • 将脚本设为可执行:
      chmod +x run.sh
      
    • 执行脚本:
      ./run.sh
      
    • 环境文件(.env
      • 如果缺少 .env 文件,请复制模板 .env.example 创建。
      • ⚠️ 需要操作:手动编辑 .env 文件,为 AUTH_TOKENREDIS_PASSWORDWEBHOOK_SECRET 和任何其他敏感或特定于您部署的变量设置强而唯一的值
      # 在 .env 中自定义变量
      PORT=8081
      NODE_ENV=production
      LOG_LEVEL=info
      AUTH_TOKEN="您的超强大密钥"
      REDIS_HOST=redis
      REDIS_PORT=6379
      REDIS_PASSWORD="您的复杂Redis密码"
      WEBHOOK_SECRET="您的长而唯一的Webhook密钥"
      

⚙️ <font color="#3498DB">服务器运行与管理</font>

使用 run.sh 脚本进行服务生命周期的所有管理操作。

  • 启动 / 更新:选项 1。此命令构建必要的镜像并启动所有服务。
  • 完全重启:选项 2。停止、重建然后重新启动所有服务。
  • 停止所有服务:选项 [3]。停止并删除容器。
  • 重建镜像(无缓存):选项 4。强制完全重建所有Docker镜像而不使用缓存。

🔍 <font color="#3498DB">使用检查器(客户端UI)</font>

MCP检查器提供了一个Web UI来与您的服务器交互。

  1. 启动: 要启动检查器,请执行以下命令:

    npx @modelcontextprotocol/inspector
    

    此命令启动代理服务器并在浏览器中自动打开客户端界面,通常位于 http://localhost:6274

  2. 连接配置: 在界面侧边栏中,您需要配置连接到您的MCP服务器的方式。

    • 连接到服务器:选择 Streamable HTTPSSE 并输入完整的服务器URL(例如 http://您的IP:8081/mcp)。
    • 认证:如果您的服务器需要身份验证令牌,在“认证”部分展开并输入您的 Bearer Token
  3. 连接: 配置完成后,点击 "连接" 按钮。检查器将尝试与您的MCP服务器建立连接。

  4. 交互: 连接后,您可以使用不同的标签与服务器交互:

    • 资源:列出并读取可用资源。
    • 提示:列出并执行提示。
    • 工具:列出并调用具有特定参数的工具。

🤝 <font color="#3498DB">贡献</font>

欢迎贡献!打开一个 issue 来讨论您想要做出的更改。