Dockerizer MCP 服务器
使用说明
-
项目简介 Dockerizer MCP 服务器是一套基于 MCP 的后端服务器,实现与 MCP 客户端的标准对接,核心功能包括注册并暴露工具(Tools)、提供初始化能力、列出可用工具,以及通过工具调用实现对仓库检测、Docker 配置生成等操作。服务器通过 JSON-RPC 与客户端通信,当前实现以 stdio 为传输管道,方便在任务流、IDE 集成或辅助 AI 工具中使用。
-
主要功能点
- MCP 核心能力:处理 initialize、tools/list、tools/call、shutdown 等 MCP 请求,返回标准化的 JSON-RPC 响应。
- 工具管理:提供 dockerizer_analyze、dockerizer_generate、docker_build、docker_run、docker_logs 等工具,支持对仓库检测、生成 Docker 配置、以及对生成输出的简易控制。
- 会话与工作流:内部集成检测、生成、以及输出模板选择,便于将分析结果直接用于后续的容器化生成流程。
- 运行方式:通过命令 dockerizer serve 启动 MCP 服务器,以 stdio 模式与 MCP 客户端通信。可与 Claude Code、Goose 等工具无缝对接。
-
安装与运行
- 构建 dockerizer 可执行文件(参考仓库提供的构建/安装方法)。
- 运行 MCP 服务器
- 命令:dockerizer serve
- 传输模式:标准输入输出(stdio),与 MCP 客户端在同一进程间通信。
- 配置 MCP 客户端(示例,需客户端遵循 MCP 配置格式即可): 为使 MCP 客户端能够连接并使用 Dockerizer 服务器,需在客户端配置中指明服务器启动命令及参数,例如: { "server": { "name": "dockerizer", "command": "dockerizer", "args": ["serve"] } } 注:该配置仅用于 MCP 客户端了解如何启动与接入此服务器,不需要将配置写入服务器端。
-
基本使用方法
- 启动服务器:执行 dockerizer serve,服务器开始监听并通过 STDIN/STDOUT 与 MCP 客户端通信。
- 客户端初始化:客户端向服务器发送 initialize 请求,获取协议版本、能力及服务器信息。
- 列出工具:客户端可发送 tools/list 获取可用工具及其输入定义。
- 调用工具:如需分析仓库、生成 Docker 配置等,客户端发送 tools/call 请求,传入要执行的工具名称及参数。
- 关闭连接:若需要,发送 shutdown 请求结束会话。
-
其他注意
- 当前实现聚焦在核心 MCP 服务器功能和工具驱动的调用能力,若未来需要扩展 Prompts、Resources 等能力,可在现有框架基础上扩展对应的接口与数据结构。