registry_tag_wait
Wait for a specific tag to appear in a Docker registry repository by polling at intervals until the tag is found or the timeout expires.
Instructions
Block until a specific tag appears in a repository (e.g. waiting for a CI push to land).
Never raises on timeout — the result always carries met and timed_out. Polls registry_tags
every poll_intervals and checks whether tag is in its result. Works against Docker Hub too
(registry_tags' own scope covers it), so there is no separate Hub variant. Unlike every other
wait tool, this has no host argument — registry tools talk HTTPS directly to the registry, not
a Docker daemon.
Caveat: registry_tags paginates up to 50 pages (or limit tags, whichever comes first); if
tag would only appear beyond that window it is never found, even once it exists. Raise limit
if you expect a very large tag list.
args:
repository - Image/repository ref, e.g. "alpine", "ghcr.io/org/repo"; any :tag/@digest is stripped
tag - The exact tag name to wait for
username - Optional registry username (overrides DOCKER_MCP_SERVER_REGISTRY_USERNAME)
password - Optional registry password/token (overrides DOCKER_MCP_SERVER_REGISTRY_PASSWORD)
limit - Max tags to scan per poll (default 1000, >= 1); forwarded to registry_tags
timeout_seconds - Max seconds to wait before returning with timed_out=true (default 600)
poll_interval - Seconds between re-checks (default 5, > 0); capped by the time left so a
large value can't push the total wait past the timeout
returns: dict - {"repository", "tag", "met", "timed_out", "waited_seconds"}
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tag | Yes | ||
| limit | No | ||
| password | No | ||
| username | No | ||
| repository | Yes | ||
| poll_interval | No | ||
| timeout_seconds | No |