Podman Mcp Server

io.github.manusa由 GitHub 帳號 manusa 發布v0.0.15更新於 Oct 24, 2026

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

概覽

AI 產生的概覽

讓助手在本機檢視與管理 Podman 或 Docker 容器、映像、網路與磁碟區的 MCP 伺服器。

可以做什麼
  • 檢視、列出、讀取日誌、執行、停止與移除容器
  • 建置、列出、拉取、推送與移除映像
  • 列出網路與磁碟區
  • 可在 Podman REST API(Unix socket)與 Podman/Docker 命令列包裝之間切換,預設自動偵測
適用情境
適合需要助手協助本機容器工作的情境:查看正在執行的容器、讀取容器日誌、建置或拉取映像,以及在開發與排錯時啟動、停止容器。
執行需求
以本機程序執行,可透過 npx(npm)或 uvx(PyPI)啟動,也可下載二進位檔。需要已安裝可用的 Podman 或 Docker;API 模式需要 Podman socket,否則改用呼叫 podman 或 docker 命令列的 CLI 模式。選用命令列參數可設定傳輸方式(--port 啟用 HTTP,預設 stdio)、輸出格式與實作方式。
安裝前請注意
這些工具會變更本機狀態:容器可被執行、停止與移除,映像可被建置、拉取、推送與移除。推送映像會把映像送到映像倉庫,container_run 接受環境變數與連接埠對應,可能對外暴露服務或把密鑰帶進容器。執行前請確認操作。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Podman Mcp Server,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Podman MCP Server

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

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

✨ Features

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

🚀 Getting Started

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
# For VS Codecode --add-mcp '{"name":"podman","command":"npx","args":["-y","podman-mcp-server@latest"]}'# For VS Code Insiderscode-insiders --add-mcp '{"name":"podman","command":"npx","args":["-y","podman-mcp-server@latest"]}'

Goose CLI

Goose CLI is the easiest (and cheapest) way to get rolling with artificial intelligence (AI) agents.

Using npm

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

Open your goose config.yaml and add the mcp server to the list of mcpServers:

yaml
extensions:  podman:    command: npx    args:      - -y      - podman-mcp-server@latest

📚 Documentation

For detailed setup guides, configuration reference, and feature specifications, see the Documentation.

🎥 Demos

⚙️ Configuration

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.

shell
# Run the Podman MCP server using npx (in case you have npm installed)npx podman-mcp-server@latest --help
shell
# Run the Podman MCP server using the latest release binary./podman-mcp-server --help

Configuration Options

OptionDescription
--port, -pStarts the MCP server in HTTP mode with Streamable HTTP at /mcp and SSE at /sse endpoints.
--output-format, -oOutput format for list commands: text (default, human-readable table) or json.
--podman-implPodman implementation to use. Auto-detects if not specified.
--sse-portDeprecated. Use --port instead. Starts the MCP server in SSE-only mode.
--sse-base-urlDeprecated. SSE public base URL to use when sending the endpoint message.

Transport Modes

The server supports multiple transport modes:

  1. STDIO mode (default) - Communicates via standard input/output
  2. HTTP mode (--port) - Modern HTTP transport with both Streamable HTTP and SSE endpoints
  3. SSE-only mode (--sse-port) - Legacy Server-Sent Events transport (deprecated)
shell
# Start HTTP server on port 8080 (Streamable HTTP at /mcp and SSE at /sse)podman-mcp-server --port 8080
# Legacy SSE-only server on port 8080 (deprecated, use --port instead)podman-mcp-server --sse-port 8080

Podman Implementations

The server supports multiple Podman backend implementations:

ImplementationDescriptionPriority
apiPodman REST API via Unix socket100 (preferred)
cliPodman/Docker CLI wrapper50 (fallback)

By default, the server auto-detects the best available implementation. The api implementation is preferred when a Podman socket is available, otherwise the cli implementation is used as a fallback.

Use the --podman-impl flag to force a specific implementation:

shell
# Force CLI implementationpodman-mcp-server --podman-impl=cli
# Force API implementation (requires Podman socket)podman-mcp-server --podman-impl=api

The api implementation communicates directly with the Podman REST API via Unix socket, while the cli implementation shells out to the podman or docker binary.

🛠️ Tools

Container
  • 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: =. 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: :. 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
Image
  • 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
Network
  • network_list - List all the available Docker or Podman networks
Volume
  • volume_list - List all the available Docker or Podman volumes

🧑‍💻 Development

Running with mcp-inspector

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

shell
# Compile the projectmake build# Run the Podman MCP server with mcp-inspectornpx @modelcontextprotocol/inspector@latest $(pwd)/podman-mcp-server

mcp-name: io.github.manusa/podman-mcp-server

來源:README.md,提交 5fd49db

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.0.15最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分