关于 Dockhold
Dockhold 将 AI 编码工具连接到 Dockhold 的部署与应用管理操作。它可部署本地文件夹或 GitHub 仓库、查看状态和日志,并调整应用及数据库资源。
主要功能
- 01部署本地文件夹和 GitHub 仓库
- 02查看应用状态与运行日志
- 03设置和移除应用变量
- 04调整应用与托管数据库规格
- 05管理持久化应用存储
适用场景
- 01在编辑器中发布项目
- 02检查部署状态和运行日志
- 03调整应用或数据库容量
- 04修改应用变量和持久化存储
MCP 相关
Dockhold 提供 MCP 服务,向 MCP 客户端开放部署、状态、日志、变量和资源管理工具。可通过 CLI 本地运行,也可经 Streamable HTTP 远程连接;远程访问需使用控制面板令牌。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://api.dockhold.eu/mcpclaude mcp add --transport http dockhold https://api.dockhold.eu/mcp{"mcpServers":{"dockhold":{"type":"http","url":"https://api.dockhold.eu/mcp"}}}在 Cursor 中打开{"servers":{"dockhold":{"type":"http","url":"https://api.dockhold.eu/mcp"}}}在 VS Code 中打开{"mcpServers":{"dockhold":{"type":"http","url":"https://api.dockhold.eu/mcp"}}}{"mcpServers":{"dockhold":{"serverUrl":"https://api.dockhold.eu/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://api.dockhold.eu/mcp需要授权工具
12此工具无需参数。
详细介绍
面向 AI 编码工具的 Dockhold
无需离开编辑器,即可将正在开发的项目部署到线上。只需安装一次,在浏览器中登录一次,然后说“把这个项目部署到线上”。你的 AI 工具会将当前文件夹(或 GitHub 仓库)部署到 Dockhold,并返回一个可访问的 HTTPS URL。它还可以读取状态和日志、设置变量,以及调整应用和托管数据库的大小。
无需复制令牌。登录通过浏览器完成,方式与 Dockhold CLI 相同,且下方所有客户端共用该登录状态。
- 文档: https://dockhold.eu/docs
- 注册表名称:
eu.dockhold/dockhold - 要求: Node.js 18 或更高版本(用于
npx)
安装
以下每种安装方式都会启动同一个本地 MCP 服务:npx -y dockhold mcp。它会使用 CLI 保存在你机器上的登录信息,将每个请求转发给 Dockhold。编辑器配置中不会包含任何敏感信息。
Claude Code
/plugin marketplace add dockhold/mcp
/plugin install dockhold@dockhold
这会安装 MCP 服务和一个 deploy 技能(可通过 /dockhold:deploy 调用;当你要求将项目部署到线上时,也会自动触发),它了解完整流程:预检、登录、部署,以及构建失败时的处理方法。
Cursor
该按钮会在 Cursor 中打开此链接:
cursor://anysphere.cursor-deeplink/mcp/install?name=dockhold&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsImRvY2tob2xkIiwibWNwIl0sImVudiI6eyJET0NLSE9MRF9SRUYiOiJjdXJzb3IifX0=
也可以手动将其添加到 ~/.cursor/mcp.json(所有项目)或 .cursor/mcp.json(单个项目):
{
"mcpServers": {
"dockhold": {
"command": "npx",
"args": ["-y", "dockhold", "mcp"],
"env": { "DOCKHOLD_REF": "cursor" }
}
}
}
此仓库也是一个 Agent Plugin(根目录下有 plugin.json 和 mcp.json),因此列入 Cursor 插件浏览器后,就可以从中安装:在侧边栏中打开 自定义,搜索 Dockhold,然后选择 安装。
VS Code
code --add-mcp '{"name":"dockhold","command":"npx","args":["-y","dockhold","mcp"],"env":{"DOCKHOLD_REF":"vscode"}}'
Gemini CLI
gemini extensions install https://github.com/dockhold/mcp
此仓库也是一个 Gemini CLI 扩展(根目录下有 gemini-extension.json),因此安装时会添加 MCP 服务和同一个 deploy 技能。
Cline
让 Cline“从 https://github.com/dockhold/mcp 安装 MCP 服务”。它会按照 llms-install.md 操作:添加一条设置项,无需令牌,然后在浏览器中登录。如需手动操作,请将下面的条目添加到 cline_mcp_settings.json,并设置 "env": { "DOCKHOLD_REF": "cline" }。
其他 MCP 客户端
在客户端的配置中使用相同的服务条目:
{
"mcpServers": {
"dockhold": {
"command": "npx",
"args": ["-y", "dockhold", "mcp"]
}
}
}
如果你的客户端只给服务几秒钟的启动时间,首次下载 npx -y dockhold 可能会超时。先使用 npm i -g dockhold 安装 CLI,之后相同的配置即可即时启动。
登录
工具首次需要访问你的账户时,会提示你在终端中运行 npx dockhold login。运行后会打开一个浏览器标签页,登录即告完成。登录有效期为 90 天,并由 CLI 和上述所有客户端共享。无需进行其他配置。
示例
你: 把这个项目部署到线上
AI: 已检查项目:它监听
PORT,并且有一个 Dockerfile。你尚未登录,因此我将运行npx dockhold login。浏览器标签页即将打开。(你完成登录,标签页显示已完成)
AI: 已登录。正在使用
npx dockhold deploy --name recipe-box进行部署。正在上传和构建……AI: 应用已上线:https://recipe-box-a1b2c3.dockhold.app
你: 给我看看日志
AI: (调用
get_app_logs) 最近 100 行日志:服务器已在端口 8080 启动,并处理了 3 个请求。没有错误。
本地文件夹通过 CLI 部署,无需 GitHub 账户。GitHub 仓库通过 deploy_app 工具部署。要在每次推送时自动部署,必须先将仓库连接到 Dockhold(list_github_repos 会提供需要传入的 github_installation_id);仅通过 URL 部署的仓库只会构建一次。
工具
| 工具 | 范围 | 功能 |
|---|---|---|
list_apps | 读取 | 列出你的应用及其 ID、状态和 URL |
get_app_status | 读取 | 获取一个应用的部署状态、URL、最近一次提交和错误消息 |
get_app_logs | 读取 | 获取一个应用的近期运行日志 |
get_resource_usage | 读取 | 获取账户资源池(计算资源、数据库 RAM、存储)和各应用的资源用量 |
list_github_repos | 读取 | 列出已连接的 GitHub 仓库,以及部署私有仓库所需的 ID |
deploy_app | 部署 | 将 GitHub 仓库部署为在线 Web 应用 |
deploy_group | 部署 | 一次性部署多个已连接的服务 |
redeploy_app | 部署 | 无停机重启应用 |
set_app_variable | 部署 | 设置非机密环境变量并将其发布 |
unset_app_variable | 部署 | 移除普通环境变量并将其发布 |
resize_app | 部署 | 更改应用的内存 |
resize_database | 部署 | 更改托管数据库的内存 |
resize_database_storage | 部署 | 扩展托管数据库的磁盘空间 |
set_app_storage | 部署 | 为应用提供重启和部署后仍保留的存储,或扩展存储空间 |
remove_app_storage | 部署 | 移除应用的存储并删除其中的文件 |
浏览器登录具有 read 和 deploy 范围,涵盖上述所有工具。
远程服务(无需 CLI)
对于无法运行本地命令的客户端,同样的工具也通过 Streamable HTTP 在 https://api.dockhold.eu/mcp 上提供。在 Dockhold 控制面板的 Settings → API tokens 下创建令牌(只读、读取+部署,或包含机密信息),并将其作为 bearer 令牌传入:
{
"type": "streamable-http",
"url": "https://api.dockhold.eu/mcp",
"headers": { "Authorization": "Bearer dh_mcp_..." }
}
Claude Code:claude mcp add --transport http dockhold https://api.dockhold.eu/mcp --header "Authorization: Bearer dh_mcp_..."。这是唯一一种会将令牌写入配置文件的设置方式,因此请勿将该文件纳入版本控制。
控制面板令牌也可以包含 secrets 范围,通过此连接解锁另外五个工具:set_app_secret、unset_app_secret、bind_app_secret、list_secrets、list_app_secrets。浏览器登录不具有该范围;使用插件时,可在控制面板的 Secrets 部分添加机密信息。
开始使用 Dockhold
Dockhold 是让应用上线的最简单方式:从 GitHub 推送或从文件夹部署,始终在线,默认安全。请在 app.dockhold.eu 登录。免费套餐无需绑定银行卡。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。