Provides comprehensive management and monitoring of Croit Ceph clusters through their REST API, including services management, maintenance operations, storage pool management, S3 bucket operations, server administration, and cluster monitoring with built-in filtering and token optimization features
MCP Croit Ceph
AI-powered management for Croit Ceph clusters via the Model Context Protocol (MCP)
Connect your AI assistant (like Claude) directly to your Croit Ceph cluster for intelligent cluster management, troubleshooting, and monitoring.
What is this?
An MCP server that gives AI assistants access to your Croit Ceph cluster's REST API. Ask your AI to:
"Show me all pools with errors"
"List OSDs on server node-5"
"Search logs for slow requests in the last hour"
"What's the cluster health status?"
The AI can then interact with your cluster through natural language.
Key Features
🚀 Smart & Efficient
Automatic token optimization - Responses optimized to save 80-95% on AI token costs
Field selection - Request only the data you need (e.g., just id + name)
Built-in filtering - grep-like search without multiple API calls
Intelligent summaries - Large datasets get smart summaries with drill-down capability
🔍 Advanced Log Search
Native VictoriaLogs integration for powerful log analysis
Natural language queries: "Find OSD failures in the last 24 hours"
Pattern detection and anomaly identification
Pre-built debug templates for common issues
🛡️ Production Ready
Role-based access control (ADMIN vs VIEWER)
Automatic API discovery from your cluster
Docker support with included OpenAPI spec
Comprehensive error handling
Quick Start
Using Docker (Recommended)
With Claude Desktop
Add to ~/.config/claude/claude_desktop_config.json:
Basic configuration (fetches OpenAPI spec on startup):
Optimized configuration (recommended - 2s startup instead of 5s):
With debug logging:
Note: Volume mounts require absolute paths (not ~/). To download the OpenAPI spec:
Restart Claude Desktop after changing the configuration.
Configuration
Required Environment Variables
Optional Environment Variables
See .env.example for docker usage template.
Getting an API Token
Log into your Croit cluster web interface
Go to Settings → API Tokens
Create a new token with appropriate permissions
Copy the token and use it in your configuration
Example AI Conversations
Check cluster health:
Find problems:
Debug issues:
Capacity planning:
Features in Detail
Token Optimization
The server automatically reduces AI token consumption:
Without Optimization | With Optimization | Savings |
100 pools, all fields → 4,000 tokens | 100 pools, id+name → 300 tokens | 92% |
500 OSDs, full data → 15,000 tokens | Smart summary → 1,000 tokens | 93% |
How it works:
Field Selection: Request only needed fields
Smart Summaries: Large datasets get summaries with drill-down
Caching: Repeated requests use cached data
Auto-limiting: Sensible defaults prevent token explosions
Available Tools
The AI has access to these tools:
Core Tools:
list_endpoints- Discover available API endpointscall_endpoint- Make API calls with optimizationsearch_last_result- Drill down into large responses
Category Tools (auto-generated):
manage_services- Ceph servicesmanage_pools- Storage poolsmanage_servers- Cluster serversmanage_s3- S3 bucketsAnd more...
Log Search:
croit_log_search- Advanced log analysiscroit_log_check- Quick log condition checks
Advanced Usage
Local Development
Using Local OpenAPI Spec
For faster startup or offline development:
Command Line Options
Permissions & Security
The server respects your API token's role:
ADMIN: Full access to all operations
VIEWER: Read-only access (no create/delete/update)
Invalid token: Server exits with error
Admin-only categories: maintenance, servers, config, hooks
Troubleshooting
Token not working:
Verify token in Croit web interface
Check token hasn't expired
Ensure token has correct permissions
Connection issues:
Verify
CROIT_HOSTis correct (include https://)Check network connectivity to cluster
Verify firewall allows connection
No tools showing:
Check Docker logs for errors
Verify OpenAPI spec is valid
Try
--no-permission-checkto test
Enable debug logging:
Documentation
Architecture - Technical architecture and design
Token Optimization - How optimization works
Claude Integration - Tips for using with Claude
Contributing
Contributions welcome! Please:
Fork the repository
Create a feature branch
Make your changes
Run
blackformatter on Python filesSubmit a pull request
License
See LICENSE for details
Support
Issues: GitHub Issues
Croit Support: For cluster-specific questions
MCP Protocol: Model Context Protocol Documentation
Made with ❤️ for the Ceph community
This server cannot be installed