Manage Containerd Runtime and Image Services
mcp-containerd manages Containerd via CRI: pods, containers, and images, through 14 tools built on RMCP in Rust.
0.1Add to Favorites
Why it matters
Automate the management of your containerized applications by providing a robust server for interacting with Containerd's runtime and image services. This asset enables fine-grained control over container lifecycles and image operations.
Outcomes
What it gets done
Manage container creation, starting, stopping, and deletion.
Control Pod sandbox lifecycles.
List, pull, and delete container images.
Query container and image status.
Source
Get it from source
Spark does not host a copy of it.
Open sourceReports
Agent outcome reports
No reports yet
Capabilities
Tools your agent gets
Lists all containers in containerd
Lists all images in containerd
Provides CRI version information
Creates a Pod sandbox
Stops a Pod sandbox
Deletes a Pod sandbox
Creates a container
Starts a container
Overview
mcp-containerd MCP Server
mcp-containerd gives an AI assistant CRI-based control over Containerd: pod sandbox and container lifecycles, and image operations, via 14 tools. Use it when an AI assistant needs to inspect or manage a Containerd runtime's pods, containers, or images.
What it does
mcp-containerd is an MCP server implemented in Rust using the RMCP library for managing Containerd, supporting the full CRI (Container Runtime Interface) surface across both runtime and image services. It gives an AI assistant direct control over pod sandboxes, containers, and images on a Containerd instance, rather than requiring you to run ctr or crictl commands by hand.
When to use - and when NOT to
Use it when you want an AI assistant to inspect or manage a Containerd runtime: listing containers and images, creating and managing Pod sandboxes, starting or stopping containers, pulling or deleting images, or checking CRI version and image filesystem information. It requires a running Containerd instance, connecting by default to unix:///run/containerd/containerd.sock, plus a Rust build environment and Protobuf compilation tools to build it from source. Since it can create, start, stop, and delete real containers and pods, it should be treated with the same care as direct ctr/crictl access.
Capabilities
list_containers and list_images enumerate what's running or stored in Containerd, and version reports CRI version information. Pod sandbox lifecycle is covered by create_pod_sandbox, stop_pod_sandbox, and delete_pod_sandbox. Container lifecycle is covered by create_container, start_container, stop_container, and delete_container. Image operations include get_image_status, pull_images, delete_images, and get_image_filesystem_info. Together these cover the Runtime Service and Image Service interfaces of the CRI spec, plus command execution inside containers and pod/container status queries.
How to install
Build from source with Cargo:
cargo build --release
By default the server connects to unix:///run/containerd/containerd.sock. Run mcp-containerd -t http to serve over HTTP streaming instead of the default transport, or mcp-containerd --help for the full command-line options.
Who it's for
Platform and infrastructure engineers running Containerd who want an AI assistant to inspect and manage pods, containers, and images directly through the CRI interface, instead of running ctr or crictl commands by hand. Example requests it's built to answer include simply asking for a list of containers or a list of images, with the assistant mapping that directly to list_containers or list_images.
Source README
MCP Containerd
This is an MCP server implemented using the RMCP (Rust Model Context Protocol) library for operating Containerd.
Features
- Implements an MCP server using the RMCP library
- Supports all Containerd CRI interface operations
- Provides Runtime Service interfaces
- Provides Image Service interfaces
- Supports ctr interface
Prerequisites
- Rust development environment
- Containerd installed and running
- Protobuf compilation tools
Building
cargo build --release
Running
mcp-containerd -t http #use streamhttp
mcp-containerd --help #list the help info
By default, the service will connect to the unix:///run/containerd/containerd.sock endpoint.
Using with simple-chat-client
The simple-chat-client allows you to interact with the MCP Containerd service:
simple-chat-client has moved to simple-chat-client
Example interaction:
> please give me a list of containers
AI: Listing containers...
Tool: list_containers
Result: {"containers":[...]}
> please give me a list of images
AI: Here are the images in your containerd:
Tool: list_images
Result: {"images":[...]}
Service Structure
The MCP server includes the following main components:
versionservice: Provides CRI version informationruntimeservice: Provides container and Pod runtime operationsimageservice: Provides container image operations
CRI Interfaces
Runtime Service
- Create/Stop/Delete Pod Sandbox
- Create/Start/Stop/Delete containers
- Query Pod/container status
- Execute commands in containers
Image Service
- List images
- Get image status
- Pull images
- Delete images
- Get image filesystem information
FAQ
Common questions
Trust
How it checks out
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.