mcpbeat

Docker Hub Automation

composiohq/docker hub automation

Automate Docker Hub operations -- manage organizations, repositories, teams, members, and webhooks via the Composio MCP integration.

This is a copy. The original lives at christophacham/docker hub automation.

1k tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
71684
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/ComposioHQ/awesome-claude-skills --skill Docker Hub Automation

MCP servers it needs

declared by the author in the skill header

Not in the registry: rube

The skill names a server we cannot find in the official MCP registry. It may be private, renamed, or never published — either way, the skill will not work until you have it.

The instruction itself

11 sections, as written by the author

Docker Hub Automation

Automate your Docker Hub workflows -- create and manage organizations, repositories, teams, add members, set up image push webhooks, and list container images.

Toolkit docs: composio.dev/toolkits/docker_hub


Setup

  • Add the Composio MCP server to your client: https://rube.app/mcp
  • Connect your Docker Hub account when prompted (JWT/token authentication)
  • Start using the workflows below

Core Workflows

1. List Organizations

Use DOCKER_HUB_LIST_ORGANIZATIONS to discover which organizations the authenticated user belongs to.

Tool: DOCKER_HUB_LIST_ORGANIZATIONS
Inputs:
  - page: integer (1-indexed, default 1)
  - page_size: integer (1-100, default 25)

2. Create an Organization

Use DOCKER_HUB_CREATE_ORGANIZATION to programmatically create a new Docker Hub organization.

Tool: DOCKER_HUB_CREATE_ORGANIZATION
Inputs:
  - orgname: string (required) -- lowercase, letters/numbers/._- only, min 2 chars
  - company: string (optional) -- company name associated with the org

Note: Requires JWT authentication obtained via /v2/users/login and may have restricted access.

3. Get Organization Details and Repositories

Use DOCKER_HUB_GET_ORGANIZATION to retrieve namespace info and its repositories. Works with any public namespace.

Tool: DOCKER_HUB_GET_ORGANIZATION
Inputs:
  - organization: string (required) -- e.g., "docker", "bitnami", "library"

4. Create a Repository

Use DOCKER_HUB_CREATE_REPOSITORY to create public or private repositories under a namespace.

Tool: DOCKER_HUB_CREATE_REPOSITORY
Inputs:
  - namespace: string (required) -- Docker Hub username or org name
  - name: string (required) -- lowercase; letters, numbers, ._- allowed
  - description: string (optional) -- max 100 characters
  - full_description: string (optional) -- Markdown README content
  - is_private: boolean (default false) -- private repos require paid plan

5. List Repositories with Filtering

Use DOCKER_HUB_LIST_REPOSITORIES to enumerate repos within a namespace with sorting and content-type filtering.

Tool: DOCKER_HUB_LIST_REPOSITORIES
Inputs:
  - namespace: string (required) -- e.g., "library", "myorg"
  - ordering: "name" | "last_updated" | "pull_count" (prefix with - for descending)
  - page: integer (default 1)
  - page_size: integer (1-100, default 25)
  - content_types: string (comma-separated, e.g., "image,artifact")

6. Manage Teams, Members, and Webhooks

Use DOCKER_HUB_LIST_TEAMS to list teams within an org, DOCKER_HUB_ADD_ORG_MEMBER to invite users, and DOCKER_HUB_CREATE_WEBHOOK for push notifications.

Tool: DOCKER_HUB_LIST_TEAMS
  - Lists all teams/groups within a Docker Hub organization

Tool: DOCKER_HUB_ADD_ORG_MEMBER
  - Invite a user to join an organization by Docker ID or email
  - Requires owner or admin permissions

Tool: DOCKER_HUB_CREATE_WEBHOOK
  - Create a webhook on a repository for image push notifications
  - Two-step process: create webhook, then add hook URL
  - Requires admin permissions on the repository

Known Pitfalls

| Pitfall | Detail |

|---------|--------|

| JWT authentication | DOCKER_HUB_CREATE_ORGANIZATION requires JWT auth from /v2/users/login -- standard API tokens may not suffice. |

| Private repo limits | Creating private repos (is_private: true) requires a paid Docker Hub plan. |

| Org name constraints | Organization names must be lowercase, at least 2 characters, containing only letters, numbers, ., _, or -. |

| Webhook two-step | DOCKER_HUB_CREATE_WEBHOOK is a two-step process: first create the webhook with a name, then add a hook URL to it. |

| Pagination | All list endpoints use page-based pagination -- iterate pages until results are exhausted. |


Quick Reference

| Tool Slug | Description |

|-----------|-------------|

| DOCKER_HUB_LIST_ORGANIZATIONS | List orgs the user belongs to |

| DOCKER_HUB_CREATE_ORGANIZATION | Create a new Docker Hub organization |

| DOCKER_HUB_GET_ORGANIZATION | Get org details and repository list |

| DOCKER_HUB_CREATE_REPOSITORY | Create a repository under a namespace |

| DOCKER_HUB_LIST_REPOSITORIES | List repos with filtering and sorting |

| DOCKER_HUB_LIST_TEAMS | List teams/groups within an org |

| DOCKER_HUB_ADD_ORG_MEMBER | Invite a user to an organization |

| DOCKER_HUB_CREATE_WEBHOOK | Create push-notification webhook on a repo |


*Powered by Composio*

How to use it

Copy the folder

Take composiohq/docker hub automation from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.