# Mcp Server Docker

> Docker's MCP Server

- **Type:** MCP server
- **Install:** `agentstack add mcp-nideil-mcp-server-docker`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [nideil](https://agentstack.voostack.com/s/nideil)
- **Installs:** 0
- **Category:** [Cloud & Infrastructure](https://agentstack.voostack.com/c/cloud-infrastructure)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [nideil](https://github.com/nideil)
- **Source:** https://github.com/nideil/mcp-server-docker

## Install

```sh
agentstack add mcp-nideil-mcp-server-docker
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Docker MCP Server

The Docker MCP Server is a [Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction)
server that provides seamless integration with Docker Desktop on Windows, enabling advanced
automation and interaction capabilities for developers and tools.

  
    
  

## Prerequisites

1. Install Docker Desktop for Windows from Docker's official [download page](https://docs.docker.com/desktop/setup/install/windows-install/).
2. In Docker Desktop, go to **Settings > General** and check the box for  
   **"Expose daemon on tcp://localhost:2375 without TLS"**.  
   This is required for the MCP server to communicate with Docker Desktop.

   > 💡 **Tip:** You can verify that the port is exposed successfully by opening  
   > `http://localhost:2375/version` in your browser. If the setup is correct,  
   > you should see a JSON response with Docker version information.
   > If you're having trouble, check this discussion for a possible solution:
   > [WSL and Docker for Windows: Cannot connect to the Docker daemon](https://forums.docker.com/t/wsl-and-docker-for-windows-cannot-connect-to-the-docker-daemon-at-tcp-localhost-2375-is-the-docker-daemon-running/63571/13)

## Installation

### Usage with Claude Desktop

```json
{
  "mcpServers": {
    "docker-mcp-stdio": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "freezeolo/docker-mcp-server"
      ]
    }
  }
}
```

## Tools
✅ **Completed**  🛠️ **In Progress**  ❌ **Plan**  

### Container Lifecycle Management ✅
  - **list_containers** - Get the list of containers ✅
  - **get_container_info** - Get details of a specific container ✅
    - `container_id`: Container ID (string, required)
  - **start_container** - Start a container ✅
    - `container_id`: Container ID (string, required)
  - **restart_container** - Restart a container ✅
    - `container_id`: Container ID (string, required)
  - **stop_container** - Stop a container ✅
    - `container_id`: Container ID (string, required)
  - **remove_container** - Remove a container ✅
    - `container_id`: Container ID (string, required)
  - **create_container** - Create a new container ✅
    - `imageName`: Image name (string, required)
    - `containerName`: Container name (string, required)
    - `command`: Command to run (string, optional)
    - `env`: Environment variables (string[], optional)
    - `ports`: Port bindings (string[], optional)
    - `volumes`: Volume bindings (string[], optional)
    - `network`: Network name (string, optional)
    - `restartPolicy`: Restart policy (string, optional)

### Network Management ✅
  - **list_networks** - List all networks ✅
  - **get_network_info** - Get network information ✅
    - `networkId`: Network ID (string, required)
  - **create_network** - Create a new network ✅
    - `networkName`: Network name (string, required)
    - `driver`: Network driver (string, required)
    - `subnet`: Subnet CIDR (string, required)
    - `gateway`: Gateway IP (string, required)
  - **connect_container_to_network** - Connect container to network ✅
    - `containerId`: Container ID (string, required)
    - `networkId`: Network ID (string, required)
  - **disconnect_container_from_network** - Disconnect container from network ✅
    - `containerId`: Container ID (string, required)
    - `networkId`: Network ID (string, required)
  - **remove_network** - Remove a network ✅
    - `networkId`: Network ID (string, required)
  - **get_network_containers** - Get containers in a network ✅
    - `networkId`: Network ID (string, required)

### Image Management ✅
  - **list_images** - List all images ✅
  - **pull_image** - Pull an image from registry ✅
    - `imageName`: Image name with tag (string, required)
  - **push_image** - Push an image to registry ✅
    - `imageName`: Image name with tag (string, required)
  - **remove_image** - Remove an image ✅
    - `imageId`: Image ID (string, required)
    - `force`: Force removal (boolean, optional)
  - **tag_image** - Tag an image with multiple tags ✅
    - `imageId`: Image ID (string, required)
    - `repository`: Repository name (string, required)
    - `tags`: Array of tags (string[], required)
  - **build_image** - Build an image from Dockerfile ✅
    - `dockerfilePath`: Path to Dockerfile (string, required)
    - `repository`: Repository name (string, required)
    - `tags`: Array of tags (string[], required)
  - **get_image_details** - Get image details ✅
    - `imageId`: Image ID (string, required)
### Logs Management ✅
  - **get_container_logs** - Get container logs ✅
    - `containerId`: Container ID (string, required)
    - `follow`: Follow log output (boolean, optional, default: false)
    - `stdout`: Show stdout (boolean, optional, default: true)
    - `stderr`: Show stderr (boolean, optional, default: true)
    - `since`: Show logs since timestamp (string, optional)
    - `until`: Show logs until timestamp (string, optional)
    - `tail`: Number of lines to show from the end (integer, optional)
    - `timestamps`: Show timestamps (boolean, optional, default: false)
## FAQ

### Q: How do I install the project?
A: Follow the steps in the [Installation](#installation) section. Make sure you have the required dependencies.

## License

This project is licensed under the terms of the MIT open source license. Please refer to [MIT](./LICENSE) for the full terms.

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [nideil](https://github.com/nideil)
- **Source:** [nideil/mcp-server-docker](https://github.com/nideil/mcp-server-docker)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-nideil-mcp-server-docker
- Seller: https://agentstack.voostack.com/s/nideil
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
