Skip to main content
Glama
Docker Forge MCP

Docker Forge MCP

Docker Forge MCP

Generate, audit, and tune Docker Compose stacks inside Claude Code — before you copy-paste anything.

Most DevOps work in AI assistants means prompting for a compose file, getting something almost-right, then spending 30 minutes fixing healthchecks, resource limits, and Traefik labels by hand. Docker Forge does all that before the compose file lands in your project.

Pure logic, no API keys, $0 to run.

4 tools

Tool

What it does

Tier

generate_stack

Generate a production-ready Docker Compose from a description

Free

audit_compose

Audit your compose for security & best-practice issues (scored 0-100)

Free

add_traefik

Generate Traefik v3 labels with middlewares

Free

list_stacks

List all available stack templates

Free

generate_dockerfile

Multi-stage, hardened Dockerfile for Node/Python/Go

Pro

generate_env

Extract all ${VARS} from a compose and generate .env template

Pro

Related MCP server: Docker MCP

Quick start

npx -y docker-forge-mcp

Or add to your Claude Code MCP config:

{
  "mcpServers": {
    "docker-forge": {
      "command": "npx",
      "args": ["-y", "docker-forge-mcp"]
    }
  }
}

Usage examples

Generate a stack:

"Generate a Docker Compose for a Node.js API with PostgreSQL and Redis, domain api.myapp.com"

Audit an existing compose:

"Audit this docker-compose.yml for security issues" → paste your file

Add Traefik:

"Add Traefik v3 labels for my 'backend' service on port 3000 at api.example.com with rate limiting"

Supported stacks

Stack type

Services

node-postgres-redis

Node.js + PostgreSQL + Redis

node-postgres

Node.js + PostgreSQL

node-redis

Node.js + Redis

python-postgres-redis-celery

FastAPI + PostgreSQL + Redis + Celery

python-postgres

FastAPI/Django + PostgreSQL

wordpress

WordPress + MySQL

nextjs-postgres

Next.js standalone + PostgreSQL

monitoring

Prometheus + Grafana + node-exporter

nginx

Nginx static server

What's in every generated stack

  • restart: unless-stopped on all services

  • deploy.resources.limits (CPU + memory) on every container

  • healthcheck on every service

  • depends_on with condition: service_healthy

  • Named volumes (not anonymous)

  • PostgreSQL pinned to 16-alpine, Redis to 7-alpine

  • Optional Traefik v3 labels + HTTP→HTTPS redirect

Audit checks

Critical (score -20 each): privileged mode, root user, docker socket mounted, plaintext secrets in env, database ports exposed to internet

Warning (score -5 each): missing restart policy, no resource limits, :latest image tag, no healthcheck, bare depends_on without service_healthy

Info (score -1): no network isolation, simple depends_on

Traefik middleware presets

rate-limit, security-headers (HSTS + XSS + nosniff), auth-basic, compress, redirect-https

License

MIT — frederic.suretat.com/lab

Available Tools

6 tools
add_traefikA

Generate Traefik v3 labels for a Docker service. Produces ready-to-paste labels for docker-compose.yml and a networks section. Supports TLS (Let's Encrypt), HTTP→HTTPS redirect, and optional middleware presets: rate-limit, security-headers, auth-basic, compress.

Inputs: port (required), domain (required), service_name (required), tls, +4 more.

audit_composeA

Audit a Docker Compose YAML string for security vulnerabilities and best-practice violations. Checks: privileged mode, root user, docker socket mounts, plaintext secrets, exposed database ports, missing restart policies, missing resource limits, unpinned image tags, missing healthchecks, and depends_on readiness issues. Returns a score (0-100) and categorized issues (critical/warning/info).

Inputs: compose_yaml (required).

generate_dockerfileA

[PRO] Generate an optimized, security-hardened multi-stage Dockerfile. Supports Node.js (including Next.js standalone), Python (FastAPI/Django), and Go. Features: multi-stage builds, non-root user, minimal final image, HEALTHCHECK.

Inputs: runtime (required), port, version, app_type, +1 more.

generate_envA

[PRO] Extract all environment variable placeholders (${VAR}) from a Docker Compose YAML and generate a .env template file with categorized comments (database, auth/secrets, app). Includes generation hints for secrets.

Inputs: compose_yaml (required).

generate_stackA

Generate a production-ready Docker Compose stack from a natural language description or stack type. Includes security best practices: resource limits, healthchecks, restart policies, non-root users, named volumes. Optionally adds Traefik v3 labels for reverse proxy + HTTPS.

Inputs: domain, db_name, app_name, stack_type, +4 more.

list_stacksA

List all available Docker Compose stack templates with descriptions and tags.

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.1/5.0

    Scored across 6 tools

    Disambiguation5/5

    Each tool has a unique, clearly defined purpose: Traefik labels, compose auditing, Dockerfile generation, env template extraction, stack generation, and listing templates. No functional overlap exists.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern in snake_case (e.g., add_traefik, audit_compose, list_stacks). No mixing of conventions or vague verbs.

    Tool Count5/5

    With 6 tools, the server is tightly scoped to Docker/Compose utilities. Every tool addresses a distinct need; no excess and no trivial tools.

    Completeness4/5

    The set covers generation, auditing, and listing for common Docker workflows. Missing a tool for deploying or modifying stacks, but the existing tools handle core creation and validation tasks.

    Related MCP Connectors

    Related MCP Servers