
Dockhold MCP server
Which servers in the official MCP registry are Dockhold's own, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.
read 2026-10-26
- Registry nameeu.dockhold/dockholdverified in the MCP registry
The registry name sits under dockhold.eu. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.
- Stateanswerschecked 2026-10-26
- Tools21
- Server calls itselfdockhold
- Server version0.2.0
- Protocol version2025-06-18
On 2026-10-26 the server answered initialize and tools/list without a sign-in. First answer in 789 ms.
- Whether its tools do the product's job has not been judged yet.
- Checked on 1 of the 7 days it takes to judge reliability.
Once connected
- set_app_variable, set_app_storage, remove_app_storage, set_app_secret change data without a sign-in: anyone with the address can call them.
Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.
- INITE MCP scoreafter a weeka score needs 7 daily checks: 1 so far
- Use32 npm downloads a week
- Answeredmeasuring1 of the 7 daily checks it takes to print a share
- Median first answer745 ms
- Space in an agent's context≈ 4,464 tokensthe definitions of all its tools (21), which an agent carries on every turn
- Tool definitionsA · 100 of 100
- Typed results0 of 21 toolsdeclared outputSchema: results come typed, read once
- Every tool passes all six checks.
What an agent can do with it
- not sure · deploy a GitHub repo to a live URL on every push
- cannot · publish a local project folder with one command
- not sure · run always-on APIs, webhooks and bots
Each of the product's use cases, put to Jev against this server's tool list: can an agent do it with these tools?
Worth a look
- Tools that change data, on a server that answers without a sign-in: set_app_variable, set_app_storage, remove_app_storage, set_app_secret
A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (30%), doing the product's job (25%), definitions (20%), context (10%) and use (15%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →
list_appsList the apps in your Dockhold account, with each app's id, status, URL, and source repo. Call this first whenever the user asks about their apps, or when you need an app_id for any other tool.
get_app_statusGet detailed status for one app: deploy status, URL, last deployed commit, and any error message. Call this to check whether a deploy has finished, to get an app's live URL, or to see why an app is in error. Status DEPLOYING with ready_at…
get_app_logsGet the most recent runtime logs for one app. Call this when an app is crashing, returning errors, or a deploy succeeded but the app misbehaves: the logs usually name the cause.
deploy_appDeploy a GitHub repository as a live web app on Dockhold. Call this when the user wants to put an app online, get a shareable HTTPS URL, or host a demo. Returns the new app id. Two paths: a PUBLIC repo needs only repo_url; a PRIVATE repo…
redeploy_appRestart an existing app (rolling restart with zero downtime). Call this after changing configuration, or to recover an app that is stuck or misbehaving. It restarts the version already running. It does not build or pull new code: call…
set_app_variableSet a single environment variable on an app and roll it out. Call this when an app needs plain configuration such as LOG_LEVEL or a feature flag. For secrets (API keys, passwords, tokens) call set_app_secret instead: this tool rejects…
unset_app_variableRemove a single plain environment variable from an app and roll it out. The pair to set_app_variable; setting a variable to an empty string is not the same thing to most apps. Variables Dockhold sets itself (PORT, DATABASE_URL, DATA_DIR…
get_resource_usageShow your account's compute, database-RAM, and storage pools: how much you've bought, how much is used, and how much is free, plus every app's current size. Call this before any resize tool (the allowed sizes come from its steps fields)…
resize_appChange how much memory one app gets. Call this when an app is running out of memory (OOM) or the user asks to make an app bigger or smaller. memory_mb must be one of the sizes get_resource_usage reports under compute.steps_mb, and the new…
resize_databaseChange how much memory an app's managed database gets. Call this when the database is slow or out of memory. db_ram_mb must be one of the sizes get_resource_usage reports under db_ram.steps_mb and fit your database-RAM pool. WARNING: the…
resize_database_storageGrow the disk of an app's managed database. Call this when the database is running out of disk space. GROW-ONLY: you can increase storage but never shrink it. storage_gb must be one of the sizes get_resource_usage reports under…
set_app_storageGive an app storage that survives restarts and deploys, or grow the storage it already has. Call this when the app has to keep files: a SQLite database file, uploads, or anything the user expects to still be there tomorrow. The app reads…
remove_app_storageRemove an app's storage and erase every file on it. This destroys data permanently: there is no undo and no backup. Ask the user to confirm in their own words first, then pass confirm true. Call it when the user asks for the storage to…
set_app_secretStore a sensitive value (an API key, a token, a password, a connection string) for one app. Use this instead of set_app_variable whenever the value would be damaging if someone else read it. The value is encrypted at rest, is injected…
unset_app_secretStop injecting a stored secret into one app. The app restarts without it, so call this only when the app no longer needs that variable. The stored value stays in the account vault and any other app using it keeps working; deleting the…
bind_app_secretAttach a secret that is already stored in the account vault to one app, under the environment variable name the app reads, and restart the app. Call this when the user says the key already exists in Dockhold (call list_secrets to see the…
list_secretsList the names of every secret stored in the account vault and how many apps use each, so you can attach an existing one with bind_app_secret instead of asking the user for the value again. Returns names and counts only. Secret values…
list_app_secretsList the names of the secrets attached to one app, so you can tell which ones an app already has before setting another. Returns names only. Secret values cannot be read back through this connection at all.
list_github_reposList the GitHub repositories you have connected to Dockhold, across every installation. Call this before deploy_app when the target repo is private, or when the user asks which repos they can deploy. Each repo comes with its…
rebuild_appBuilds the app again from the latest commit of its repository (or its last upload) and deploys it when the build passes. Use after a failed build, or to ship new commits when auto-deploy is off. One build per app at a time; limits on…
deploy_groupDeploy several connected services in one go (e.g. a frontend + an API). Call this when the user's project is split across multiple repos that must talk to each other; for a single repo use deploy_app. Each service is a public GitHub repo…
How to connect
Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:
{
"mcpServers": {
"dockhold": {
"type": "http",
"url": "https://api.dockhold.eu/mcp"
}
}
}Add it
Claude Code, in a terminal
claude mcp add --transport http dockhold https://api.dockhold.eu/mcpclaude.ai, ChatGPT and other clients: add https://api.dockhold.eu/mcp as a custom connector in the settings.
Also shipped through: npm
Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.
Cookies
Before we count this visit
Analytics and ad measurement tell us which pages and which of our ads do their job: Google Analytics and Google Ads, the Meta pixel, Yandex Metrica, and one first-party id of our own. Nothing is stored until you answer, and declining changes nothing about the site.