C

ChatGPT-MCP容器管理服务器

一种模型上下文协议服务器,通过自定义的GPT接口实现使用自然语言交互来管理Docker容器。

virtualizationother

365 查看 · 2026-07-07 更新

简介

一种模型上下文协议服务器,通过自定义的GPT接口实现使用自然语言交互来管理Docker容器。

简介

一种模型上下文协议服务器,通过自定义的GPT接口实现使用自然语言交互来管理Docker容器。

ChatGPT MCP 服务器

smithery 徽章

一个通过自定义 GPT 接口提供 Docker 管理功能的 Model Context Protocol (MCP) 服务器。

功能

  • 通过自然语言进行 Docker 容器管理
  • 基于 Model Context Protocol (MCP)
  • 使用 TypeScript 实现
  • 容器化部署
  • 强大的错误处理和优雅关闭
  • 资源管理和端口处理
  • 速率限制和 API 密钥认证

设置

通过 Smithery 安装

要通过 Smithery 自动为 Claude Desktop 安装 ChatGPT MCP 服务器:

npx -y @smithery/cli install @Toowiredd/chatgpt-mcp-server --client claude

手动安装

  1. 克隆仓库
git clone https://github.com/toowiredd/chatgpt-mcp-server.git cd chatgpt-mcp-server
  1. 安装依赖项
npm install
  1. 创建环境文件
cp env.example .env # Edit .env with your configuration
  1. 构建项目
npm run build

使用 Docker 运行

  1. 构建容器
npm run docker:build
  1. 运行容器
npm run docker:run

或者手动:

docker run -d \ -p 3001:3001 \ --env-file .env \ -v /var/run/docker.sock:/var/run/docker.sock \ chatgpt-mcp-server

开发

  • npm run build - 构建 TypeScript 代码
  • npm run watch - 监视更改并重新构建
  • npm run inspector - 运行 MCP 检查工具

环境变量

  • API_KEY - API 认证密钥
  • HTTP_PORT - 服务器端口(默认:3001)
  • RATE_LIMIT_REQUESTS - 每个窗口的最大请求数
  • RATE_LIMIT_WINDOW - 窗口大小(毫秒)

资源管理

服务器实现了强大的资源管理:

  • 在接收到进程信号(SIGINT, SIGTERM, SIGQUIT)时进行优雅关闭
  • 连接跟踪和管理
  • 请求超时处理
  • 端口冲突检测
  • 保持连接管理
  • 活跃请求跟踪及优雅完成

关闭过程

  1. 服务器在接收到进程信号后开始优雅关闭
  2. 拒绝新的连接
  3. 允许活跃请求完成(带超时)
  4. 关闭保持连接
  5. 正确释放服务器端口
  6. 正确释放资源

错误处理

  • 检测并报告端口冲突
  • 捕获未处理的拒绝和异常
  • 正确处理网络错误
  • 通过适当的处理防止资源泄漏
  • 超时确保服务器在关闭过程中不会挂起

许可证

MIT

来源