poly-container-mcp
Verified Safeby hyperpolymath
Overview
Provides a unified MCP server interface for managing multiple container runtimes including nerdctl, podman, and docker, prioritizing FOSS alternatives.
Installation
deno run --allow-run --allow-read --allow-env --allow-net server.jsEnvironment Variables
- CONTAINER_RUNTIME
- NERDCTL_PATH
- NERDCTL_NAMESPACE
- NERDCTL_HOST
- NERDCTL_SNAPSHOTTER
- PODMAN_PATH
- PODMAN_HOST
- DOCKER_PATH
- DOCKER_HOST
Security Notes
The server employs strong security practices for executing external commands. It uses Deno.Command for subprocess execution, which is safer than shell execution. Crucially, all subcommands are whitelisted via `ALLOWED_COMMANDS` arrays, and arguments are rigorously sanitized using `sanitizeArg` to prevent shell metacharacters and command injection. No hardcoded secrets were identified in the provided code. Network communications are managed with resilience patterns like circuit breakers and rate limiters, enhancing robustness. While the `bundle.js` summary mentions internal code generation (likely for schema validation with Ajv/Zod), it is not used for executing arbitrary user-provided code in the critical command execution path.
Similar Servers
mcp-server-kubernetes
This MCP server enables AI agents to connect to and manage Kubernetes clusters by executing kubectl and Helm commands.
mcp-k8s
Facilitates natural language interaction and automation for Kubernetes cluster management and Helm operations via the Model Control Protocol (MCP).
k8s-mcp-server
Interacting with Kubernetes clusters and Helm releases through a standardized Model Context Protocol (MCP) interface.
podman-mcp-server
A Model Context Protocol (MCP) server that enables AI assistants to interact with container runtimes like Podman and Docker for container management tasks.