- Home
- MCP servers
- MinIO
MinIO
- python
4
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
You can run a MinIO MCP server locally to expose MinIO resources and perform common actions like listing buckets, listing objects, and getting or uploading objects. This enables you to interact with your MinIO data through concise MCP commands and client implementations.
How to use
You interact with the MinIO MCP server through a client implementation. The server runs locally and exposes four core tools you can use: ListBuckets, ListObjects, GetObject, and PutObject. The Basic Client provides a straightforward way to perform these actions directly, while the Anthropic Client lets you combine these capabilities with AI-powered interactions to ask questions about your data and retrieve results automatically.
How to install
Prerequisites: You need Python and a working runtime to start the MCP server. You also need a functioning MinIO instance or endpoint you want to expose through MCP.
Step 1: Install Python dependencies.
pip install -r requirements.txt
How to install
Step 2: Run the MCP server locally using Python. You start the server by executing the main server script.
python src/minio_mcp_server/server.py
Configuration
Environment variables you typically configure for MinIO and the MCP server include endpoint details, access keys, and server host/port. Use a .env file in the root directory with entries such as:
# MinIO Configuration
MINIO_ENDPOINT=play.min.io
MINIO_ACCESS_KEY=your_access_key
MINIO_SECRET_KEY=your_secret_key
MINIO_SECURE=true
MINIO_MAX_BUCKETS=5
# Server Configuration
SERVER_HOST=0.0.0.0
SERVER_PORT=8000
# For Anthropic Client (if using)
ANTHROPIC_API_KEY=your_anthropic_api_key
MCP server configuration (stdio)
If you want to start the MCP server as a local process, you can run it directly with Python from a path that points to the server script.
{
"type": "stdio",
"name": "minio_mcp",
"command": "python",
"args": ["path/to/minio_mcp_server/server.py"]
}
Tools exposed by the server
The MCP server provides these operations to interact with MinIO data:
ListBuckets — returns a list of all buckets owned by the authenticated sender. Optional: start_after, max_buckets.
ListObjects — returns objects in a bucket (up to 1,000). Required: bucket_name. Optional: prefix, max_keys.
GetObject — retrieves an object. Required: bucket_name, object_name.
PutObject — uploads a file to a bucket using the fput method. Required: bucket_name, object_name, file_path.
Connecting with clients
The server supports multiple client implementations. Use the Basic Client for direct interactions or the Anthropic Client for AI-assisted workflows that leverage the MCP tools to access MinIO data.
Available tools
ListBuckets
Returns a list of all buckets owned by the authenticated sender of the request, with optional pagination and limit controls.
ListObjects
Returns objects in a bucket, with optional prefix filtering and max results per request.
GetObject
Retrieves an object from MinIO using bucket and object names.
PutObject
Uploads a file to a MinIO bucket using the fput method, requiring bucket, object name, and file path.