Podman MCP Server

by manusa

76 801 downloads Not rated yet Apache-2.0

About

Model Context Protocol (MCP) server for container runtimes (Podman and Docker)

Details

License
Apache-2.0

Explore

A powerful and flexible MCP server for container runtimes supporting Podman and Docker.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Podman MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

The Podman MCP server can be configured using command line (CLI) arguments.

You can run the CLI executable either by using npx or by downloading the latest release binary.


npx podman-mcp-server@latest --help

| Option                 | Description                                                                                      |
|------------------------|--------------------------------------------------------------------------------------------------|
| --port, -p         | Starts the MCP server in HTTP mode with Streamable HTTP at /mcp and SSE at /sse endpoints.  |
| --output-format, -o| Output format for list commands: text (default, human-readable table) or json.              |
| --podman-impl        | Podman implementation to use. Auto-detects if not specified.                                    |
| --sse-port           | Deprecated. Use --port instead. Starts the MCP server in SSE-only mode.                   |
| --sse-base-url       | Deprecated. SSE public base URL to use when sending the endpoint message.                   |

Compile the project and run the Podman MCP server with mcp-inspector to inspect the MCP server.

shell

name

(`string`) **(required)** - Docker or Podman container ID or name to display the information

environment

(`array`) - Environment variables to set in the container. Format: <key>=<value>. Example: FOO=bar. (Optional, add only to set environment variables)

imageName

(`string`) **(required)** - Docker or Podman container image name to run

ports

(`array`) - Port mappings to expose on the host. Format: <hostPort>:<containerPort>. Example: 8080:80. (Optional, add only to expose ports)

containerFile

(`string`) **(required)** - The absolute path to the Dockerfile, Podmanfile, or Containerfile to build the image from

<!-- AVAILABLE-TOOLS-START -->

<details>

<summary>Container</summary>

- container_inspect - Displays the low-level information and configuration of a Docker or Podman container with the specified container ID or name
- name (string) (required) - Docker or Podman container ID or name to display the information

- container_list - Prints out information about the running Docker or Podman containers

- container_logs - Displays the logs of a Docker or Podman container with the specified container ID or name
- name (string) (required) - Docker or Podman container ID or name to display the logs

- container_remove - Removes a Docker or Podman container with the specified container ID or name (rm)
- name (string) (required) - Docker or Podman container ID or name to remove

- container_run - Runs a Docker or Podman container with the specified image name
- environment (array) - Environment variables to set in the container. Format: <key>=<value>. Example: FOO=bar. (Optional, add only to set environment variables)
- imageName (string) (required) - Docker or Podman container image name to run
- ports (array) - Port mappings to expose on the host. Format: <hostPort>:<containerPort>. Example: 8080:80. (Optional, add only to expose ports)

- container_stop - Stops a Docker or Podman running container with the specified container ID or name
- name (string) (required) - Docker or Podman container ID or name to stop

</details>

<details>

<summary>Image</summary>

- image_build - Build a Docker or Podman image from a Dockerfile, Podmanfile, or Containerfile
- containerFile (string) (required) - The absolute path to the Dockerfile, Podmanfile, or Containerfile to build the image from
- imageName (string) - Specifies the name which is assigned to the resulting image if the build process completes successfully (--tag, -t)

- image_list - List the Docker or Podman images on the local machine

- image_pull - Copies (pulls) a Docker or Podman container image from a registry onto the local machine storage
- imageName (string) (required) - Docker or Podman container image name to pull

- image_push - Pushes a Docker or Podman container image, manifest list or image index from local machine storage to a registry
- imageName (string) (required) - Docker or Podman container image name to push

- image_remove - Removes a Docker or Podman image from the local machine storage
- imageName (string) (required) - Docker or Podman container image name to remove

</details>

<details>

<summary>Network</summary>

- network_list - List all the available Docker or Podman networks

</details>

<details>

<summary>Volume</summary>

- volume_list - List all the available Docker or Podman volumes

</details>

<!-- AVAILABLE-TOOLS-END -->

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "podman mcp server": {
            "podman-mcp-server": {
                "command": "npx",
                "args": [
                    "podman-mcp-server@latest",
                    "--help"
                ]
            }
        }
    }
}

McpServers

{
    "podman-mcp-server": {
        "command": "npx",
        "args": [
            "podman-mcp-server@latest",
            "--help"
        ]
    }
}

GitHub License
npm
PyPI - Version
GitHub release (latest SemVer)
Build

✨ Features | 🚀 Getting Started | 📚 Documentation | 🎥 Demos | ⚙️ Configuration | 🛠️ Tools | 🧑‍💻 Development

✨ Features <a id="features"></a>

A powerful and flexible MCP server for container runtimes supporting Podman and Docker.

🚀 Getting Started <a id="getting-started"></a>

Claude Desktop

Using npx

If you have npm installed, this is the fastest way to get started with podman-mcp-server on Claude Desktop.

Open your claude_desktop_config.json and add the mcp server to the list of mcpServers:
``` json
{
"mcpServers": {
"podman": {
"command": "npx",
"args": [
"-y",
"podman-mcp-server@latest"
]
}
}
}


VS Code / VS Code Insiders

Install the Podman MCP server by clicking one of the following links:

Install in VS Code
Install in VS Code Insiders

Alternatively, you can install the extension manually by running the following command:

shell

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.

Videos about Podman MCP Server

Relevant YouTube tutorials, setups, and demos