Docker Deployer

Provides an MCP server to manage Docker images, containers, and Docker Compose deployments via MCP calls.
  • go

1

GitHub Stars

go

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "wahyurudiyan-go-mcp-docker": {
      "command": "/path/to/mcp-docker-deployer",
      "args": [],
      "env": {
        "APP_NAME": "mcp-docker-deployer",
        "LOG_FILE": "docker-deployer.log",
        "MCP_TOOL_NAME": "Docker Deployer Tool",
        "MCP_TOOL_VERSION": "1.2.0"
      }
    }
  }
}

You run an MCP server that lets AI assistants manage Docker images, containers, and compose deployments through a clean, protocol-driven interface. This MCP server provides a safe, structured way to perform Docker operations from an AI-driven workflow, with enterprise-grade organization, testing-friendly design, and clear observability.

How to use

You connect an MCP client to the Docker Deployer server and issue MCP calls that map to Docker operations. Typical workflows include listing images, inspecting containers, and deploying multi-container apps from a Docker Compose file. The server runs as an MCP endpoint and accepts either local stdio-based commands or an HTTP-based integration if you have a remote MCP gateway.

How to install

Prerequisites you need before installation are Docker, Go 1.24 or later, and Make for optional build automation.

# Prerequisites
- Docker installed and running
- Go 1.24+ installed
- Make (optional, for build automation)

# Option 1: Build from source
# Clone the project
git clone https://github.com/wahyurudiyan/go-mcp-docker.git
cd go-mcp-docker

# Build the application
make all

# Run the MCP server (stdio-based runtime)
./bin/mcp-docker-deployer

# Alternative: run with a custom log file
LOG_FILE=/var/log/mcp-docker.log ./bin/mcp-docker-deployer

# Alternative: run using a path placeholder for local deployment integration
MCP_TOOL_NAME="My Docker Tool" ./bin/mcp-docker-deployer

Additional sections

Configuration and runtime behavior are designed to be predictable and easy to test. The server reads environment-based configuration with sensible defaults, supports containerized deployment, and includes structured logging for easier debugging and auditing.

Below you’ll find concrete details you can apply directly in your environment.

# Example: environment-based configuration sketch (do not run as-is)
LOG_FILE: docker-deployer.log
DOCKER_HOST: 
MCP_TOOL_NAME: Docker Deployer Tool
MCP_TOOL_VERSION: 1.2.0
APP_NAME: mcp-docker-deployer

Configuration

The server can be configured via environment variables. Key options include the log file location, Docker daemon socket, the MCP tool identity, and the application name.

LOG_FILE        docker-deployer.log
DOCKER_HOST     
MCP_TOOL_NAME   Docker Deployer Tool
MCP_TOOL_VERSION1 1.2.0
APP_NAME        mcp-docker-deployer

Security and best practices

Operate with least privilege and explicit Docker socket access. Run with a non-root user and consider read-only filesystem layouts when possible. Avoid storing secrets in the environment and rely on controlled configuration management.

# Run with a non-root user and explicit socket access
docker run --user 1000:1000 -v /var/run/docker.sock:/var/run/docker.sock mcp-docker-deployer

# Optional: drop capabilities and use a read-only filesystem
docker run --read-only -v /var/run/docker.sock:/var/run/docker.sock -v /tmp:/tmp mcp-docker-deployer

Troubleshooting

If you encounter issues, start by checking the docker daemon status and reviewing logs. Ensure the MCP server process started correctly and that it can access the Docker daemon socket.

# Check Docker daemon status
sudo systemctl status docker

# View real-time logs from the deployer
tail -f docker-deployer.log

Notes and examples

You can integrate an external AI assistant by providing an MCP endpoint configured to run the local deployer tool or by pointing to a remote MCP gateway that accepts standard MCP calls. Example usage includes listing images, listing containers, and deploying services via Docker Compose.

{
  "mcpServers": {
    "docker_deployer": {
      "command": "/path/to/mcp-docker-deployer",
      "args": []
    }
  }
}

Available tools

list_images

Lists available Docker images with details such as IDs, sizes, and repositories.

list_containers

Lists containers with statuses, including running, stopped, and exited states.

compose_deploy

Deploys multi-container applications from a Docker Compose YAML, managing services and dependencies.

monitoring_stream

Streams real-time deployment progress and container status for observability.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
Docker Deployer MCP Server - wahyurudiyan/go-mcp-docker | VeilStrat