Dokloy MCP服务器
⚠️ 项目终止 该项目已转移到官方Dokploy组织,将不再在此存储库中维护。 📍 新的官方存储库: https://github.com/Dokploy/mcp 请迁移到官方存储库以接收最新更新和持续支持。
______________________________________________________________________
](https://www.npmjs.com/package/@ahdev/dokploy-mcp)
Dokploy MCP服务器通过模型上下文协议(MCP)将Dokploy功能作为可消费的工具公开。它允许MCP兼容的客户端(例如AI模型、其他应用程序)以编程方式与您的Dokloy服务器进行交互。
🚨 此项目不再维护。请立即迁移到官方存储库。
此服务器专门用于 工具 用于直接Dokploy API操作,为项目和应用程序管理提供干净高效的接口。
🛠️ 入门指南
需求
- Node.js>=v18.0.0(或Docker)
- 光标、VS代码、Claude桌面或其他MCP客户端
- 正在运行的Dokloy服务器实例
在游标中安装
首选 Settings -> Cursor Settings -> MCP -> Add new global MCP server
将此添加到光标 ~/.cursor/mcp.json 文件。您还可以通过创建以下内容在特定项目中安装 .cursor/mcp.json 在您的项目文件夹中。看 光标MCP文档 了解更多信息。
{
"mcpServers": {
"dokploy-mcp": {
"command": "npx",
"args": ["-y", "@ahdev/dokploy-mcp"],
"env": {
"DOKPLOY_URL": "https://your-dokploy-server.com/api",
"DOKPLOY_API_KEY": "your-dokploy-api-token"
}
}
}
}Alternative: Use Bun
{
"mcpServers": {
"dokploy-mcp": {
"command": "bunx",
"args": ["-y", "@ahdev/dokploy-mcp"],
"env": {
"DOKPLOY_URL": "https://your-dokploy-server.com/api",
"DOKPLOY_API_KEY": "your-dokploy-api-token"
}
}
}
}Alternative: Use Deno
{
"mcpServers": {
"dokploy-mcp": {
"command": "deno",
"args": ["run", "--allow-env", "--allow-net", "npm:@ahdev/dokploy-mcp"],
"env": {
"DOKPLOY_URL": "https://your-dokploy-server.com/api",
"DOKPLOY_API_KEY": "your-dokploy-api-token"
}
}
}
}安装在Windsurf中
将此添加到您的Windsurf MCP配置文件中。看 Windsurf MCP文件 了解更多信息。
{
"mcpServers": {
"dokploy-mcp": {
"command": "npx",
"args": ["-y", "@ahdev/dokploy-mcp"],
"env": {
"DOKPLOY_URL": "https://your-dokploy-server.com/api",
"DOKPLOY_API_KEY": "your-dokploy-api-token"
}
}
}
}在VS代码中安装
将此添加到您的VS Code MCP配置文件中。看 VS代码MCP文档 了解更多信息。
{
"servers": {
"dokploy-mcp": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@ahdev/dokploy-mcp"],
"env": {
"DOKPLOY_URL": "https://your-dokploy-server.com/api",
"DOKPLOY_API_KEY": "your-dokploy-api-token"
}
}
}
}在Zed中安装
将此添加到您的Zed settings.json。参见 Zed上下文服务器文档 了解更多信息。
{
"context_servers": {
"dokploy-mcp": {
"command": {
"path": "npx",
"args": ["-y", "@ahdev/dokploy-mcp"]
},
"settings": {
"DOKPLOY_URL": "https://your-dokploy-server.com/api",
"DOKPLOY_API_KEY": "your-dokploy-api-token"
}
}
}
}在Claude桌面中安装
将此添加到您的Claude桌面 claude_desktop_config.json 文件。看 克劳德桌面MCP文档 了解更多信息。
{
"mcpServers": {
"dokploy-mcp": {
"command": "npx",
"args": ["-y", "@ahdev/dokploy-mcp"],
"env": {
"DOKPLOY_URL": "https://your-dokploy-server.com/api",
"DOKPLOY_API_KEY": "your-dokploy-api-token"
}
}
}
}安装在BoltAI中
打开应用程序的“设置”页面,导航到“插件”,然后输入以下JSON:
{
"mcpServers": {
"dokploy-mcp": {
"command": "npx",
"args": ["-y", "@ahdev/dokploy-mcp"],
"env": {
"DOKPLOY_URL": "https://your-dokploy-server.com/api",
"DOKPLOY_API_KEY": "your-dokploy-api-token"
}
}
}
}使用Docker
Docker容器支持两者 标准 和 超文本传输协议 运输模式,使其能够灵活地适应不同的部署场景。
- 构建Docker镜像:
git clone https://github.com/andradehenrique/dokploy-mcp.git
cd dokploy-mcp
docker build -t dokploy-mcp .- 手动Docker命令:
标准模式(适用于MCP客户端):
docker run -it --rm \
-e DOKPLOY_URL=https://your-dokploy-server.com/api \
-e DOKPLOY_API_KEY=your_token_here \
dokploy-mcpHTTP模式(适用于web应用程序):
docker run -it --rm \
-p 3000:3000 \
-e MCP_TRANSPORT=http \
-e DOKPLOY_URL=https://your-dokploy-server.com/api \
-e DOKPLOY_API_KEY=your_token_here \
dokploy-mcp- Docker编写:
使用提供的 docker-compose.yml 对于生产部署:
# Start HTTP service
docker-compose up -d dokploy-mcp-http
# View logs
docker-compose logs -f dokploy-mcp-http- MCP客户端配置:
对于stdio模式(克劳德桌面、VS代码等):
{
"mcpServers": {
"dokploy-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"DOKPLOY_URL=https://your-dokploy-server.com/api",
"-e",
"DOKPLOY_API_KEY=your_token_here",
"dokploy-mcp"
]
}
}
}对于HTTP模式(web应用程序):
首先启动HTTP服务器,然后配置客户端以连接到 http://localhost:3000/mcp.
在Windows中安装
Windows上的配置与Linux或macOS略有不同。使用 cmd 作为命令包装器:
{
"mcpServers": {
"dokploy-mcp": {
"command": "cmd",
"args": ["/c", "npx", "-y", "@ahdev/dokploy-mcp"],
"env": {
"DOKPLOY_URL": "https://your-dokploy-server.com/api",
"DOKPLOY_API_KEY": "your-dokploy-api-token"
}
}
}
}环境变量
DOKPLOY_URL:您的Dokploy服务器API URL(必需)DOKPLOY_API_KEY:您的Dokploy API身份验证令牌(必需)
🚀 运输方式
此MCP服务器支持多种传输模式,以适应不同的用例:
标准模式(默认)
默认模式使用stdio进行直接进程通信,非常适合桌面应用程序和命令行使用。
# Run with stdio (default)
npx -y @ahdev/dokploy-mcp
# or
npm run start:stdioHTTP模式(流式HTTP+传统SSE)
现代HTTP模式通过HTTP/HTTPS支持暴露服务器 现代和传统协议 为了获得最大的兼容性:
- 可流式HTTP(MCP 2025-03-26) -具有会话管理的现代协议
- 传统苏格兰和南方能源公司(MCP 2024-11-05) -向后兼容旧客户端
# Run with HTTP mode
npm run start:http
# or
npx -y @ahdev/dokploy-mcp --http
# or via environment variable
MCP_TRANSPORT=http npx -y @ahdev/dokploy-mcp现代流式HTTP端点:
- POST/mcp -客户端到服务器的请求
- GET/mcp -服务器到客户端通知
- 删除/mcp -会话终止
- GET/健康 -健康检查端点
传统SSE端点(向后兼容性):
- GET/sse -SSE流初始化
- POST/消息 -客户端消息发布
配置:
- 默认端口:
3000(用覆盖PORT=8080) - 支持现代流式HTTP(MCP 2025-03-26)和传统SSE(MCP 2024-11-05)
- 会话管理,自动清理两种传输类型
客户端兼容性:
现代客户端自动使用Streamable HTTP端点,而传统客户端可以使用SSE端点进行连接。服务器同时处理这两种协议,确保与以下协议的兼容性:
- 现代MCP客户端 (克劳德桌面、克莱恩等)→ Use
/mcp端点 - 传统MCP客户端 → Use
/sse和/messages端点 - 自定义集成 → 根据您的需求选择合适的协议
有关详细的传输模式文档和客户端示例,请参阅上面的配置示例。
📚 可用工具
此MCP服务器通过以下方式为Dokloy项目、应用程序和数据库管理提供了全面的工具 43工具 分为三大类:
🗂️ 项目管理(6个工具)
完整的项目生命周期管理,包括创建、更新、复制和删除:
project-all-列出所有项目project-one-获取项目详细信息project-create-创建新项目project-update-更新项目配置project-duplicate-通过选择性服务复制来复制项目project-remove-删除项目
🚀 应用程序管理(24个工具)
全面的应用程序生命周期和配置管理:
核心业务
- CRUD操作:创建、读取、更新、删除应用程序
- 生命周期管理:部署、重新部署、启动、停止、重新加载应用程序
- 公用事业运营:在项目之间移动、清理队列、刷新令牌
Git提供程序集成
支持具有特定配置的多个Git提供程序:
- GitHub提供商 -GitHub与webhooks完全集成
- GitLab提供商 -完成GitLab项目集成
- 比特桶提供商 -Bitbucket存储库管理
- Gitea提供商 -自托管Gitea集成
- Git提供程序 -自定义Git存储库支持
- Docker提供商 -直接部署Docker镜像
配置管理
- 生成设置 -配置构建类型(Dockerfile、Heroku、Nixpacks等)
- 环境管理 -环境变量和构建参数
- 监控集成 -应用程序监控和指标
- Traefik配置 -负载平衡器和反向代理设置
🐘 PostgreSQL数据库管理(13个工具)
完整的PostgreSQL数据库生命周期管理:
核心数据库操作
- CRUD操作:创建、读取、更新、删除PostgreSQL数据库
- 生命周期管理:部署、启动、停止、重新加载、重建数据库
- 配置管理:外部端口、环境变量、状态更改
- 项目管理:在项目之间移动数据库
可用的PostgreSQL工具
postgres-create-创建新的PostgreSQL数据库postgres-one-获取数据库详细信息postgres-update-更新数据库配置postgres-remove-删除数据库postgres-deploy-部署数据库postgres-start-启动数据库实例postgres-stop-停止数据库实例postgres-reload-重新加载数据库配置postgres-rebuild-重建数据库实例postgres-move-在项目之间移动数据库postgres-changeStatus-更改数据库状态postgres-saveExternalPort-配置外部数据库端口postgres-saveEnvironment-管理数据库环境变量
有关每个工具的详细信息,包括输入模式、必填字段和使用示例,请参阅 TOOLS.md.
工具注释
所有工具都包含语义注释,以帮助MCP客户端了解其行为:
- 只读工具 (
readOnlyHint: true):仅检索数据的安全操作 - 破坏性工具 (
destructiveHint: true):修改或删除资源的操作 - 创建工具 (
destructiveHint: false):创建新资源的操作 - 识别工具 (
idempotentHint: true):重复操作安全 - 外部API工具 (
openWorldHint: true):所有工具与Dokploy API交互
🏗️ 建筑
Dokploy MCP服务器使用以下组件构建:
@modelcontextprotocol/sdk:用于创建MCP服务器和定义工具- Node.js和TypeScript:作为底层运行时和语言
- 标准运输:通过标准输入/输出(stdio)与MCP客户端通信
- Dokploy API集成:与Dokploy服务器的REST API直接交互
- 全面的工具覆盖:完成所有Dokloy应用程序和项目端点的实施
- 稳健的错误处理:具有重试逻辑和结构化错误响应的集中式HTTP客户端
- 架构验证:完全基于Zod的输入验证,符合OpenAPI规范
- 工具注释:语义注释(readOnlyHint、destructiveHint等),以增强对MCP客户端的理解
服务器架构支持:
- 43工具 涵盖所有项目、应用程序和数据库管理操作
- 多个Git提供程序 (GitHub、GitLab、Bitbucket、Gitea、自定义Git)
- 灵活的配置 用于构建、部署和监控
- 安全操作类型 全面支持TypeScript
每个工具都包括输入验证、API集成和结构化响应格式,以实现一致的MCP客户端交互。
🔧 发展
克隆项目并安装依赖项:
git clone https://github.com/andradehenrique/dokploy-mcp.git
cd dokploy-mcp
npm install构建:
npm run build本地配置示例
{
"mcpServers": {
"dokploy-mcp": {
"command": "npx",
"args": ["tsx", "/path/to/dokploy-mcp/src/index.ts"],
"env": {
"DOKPLOY_URL": "https://your-dokploy-server.com/api",
"DOKPLOY_API_KEY": "your-dokploy-api-token"
}
}
}
}MCP检验员测试
npx -y @modelcontextprotocol/inspector npx @ahdev/dokploy-mcp文档
🔧 故障排除
MCP客户端错误
- 尝试添加
@latest到包名称。
- 确保您使用的是Node v18或更高版本,以获得本机fetch支持
npx.
- 验证您的
DOKPLOY_URL和DOKPLOY_API_KEY环境变量设置正确。
🤝 贡献
我们欢迎捐款!如果您想为Dokloy MCP服务器做出贡献,请查看我们的 贡献指南.
🆘 支持
如果您遇到任何问题、有疑问或想建议一个功能,请 打开一个问题 在我们的GitHub仓库中。
📄 许可证
该项目根据 MIT许可证.

