MinIO模型上下文协议
STDIOMinIO对象存储MCP服务器
MinIO对象存储MCP服务器
This project implements a Model-Context Protocol (MCP) server and client for MinIO object storage. It provides a standardized way to interact with MinIO.
Exposes MinIO data through Resources. The server can access and provide:
ListBuckets
start_after (pagination), max_buckets (limit results)ListObjects
bucket_nameprefix (filter by prefix), max_keys (limit results)GetObject
bucket_name, object_namePutObject
bucket_name, object_name, file_pathThe project includes multiple client implementations:
git clone https://github.com/yourusername/minio-mcp.git cd minio-mcp
pip install -r requirements.txt
Or using uv:
uv pip install -r requirements.txt
Create a .env file in the root directory with the following configuration:
# 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
The server can be run directly:
python src/minio_mcp_server/server.py
from src.client import main import asyncio asyncio.run(main())
src/client/servers_config.json:{ "mcpServers": { "minio_service": { "command": "python", "args": ["path/to/minio_mcp_server/server.py"] } } }
python src/client/mcp_anthropic_client.py
Interact with the assistant:
Exit the session:
quit or exit to end the sessionYou can integrate this MCP server with Claude Desktop:
On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{ "mcpServers": { "minio-mcp": { "command": "python", "args": [ "path/to/minio-mcp/src/minio_mcp_server/server.py" ] } } }
minio-mcp/
├── src/
│   ├── client/                  # Client implementations
│   │   ├── mcp_anthropic_client.py  # Anthropic integration
│   │   └── servers_config.json  # Server configuration
│   ├── minio_mcp_server/        # MCP server implementation
│   │   ├── resources/           # Resource implementations
│   │   │   └── minio_resource.py  # MinIO resource
│   │   └── server.py            # Main server implementation
│   ├── __init__.py
│   └── client.py                # Basic client implementation
├── LICENSE
├── pyproject.toml
├── README.md
└── requirements.txt
pytest
black src/ isort src/ flake8 src/
Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we recommend using the MCP Inspector:
npx @modelcontextprotocol/inspector python path/to/minio-mcp/src/minio_mcp_server/server.py
Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.
This project is licensed under the MIT License - see the LICENSE file for details.