Ceph Storage MCP Server

12 MCP tools for Ceph cluster health, pools, OSDs, monitors, and usage statistics.

Overview

The Ceph Storage MCP Server provides 12 tools for inspecting the Ceph storage cluster that backs the platform’s persistent storage. It reports on cluster health, pool configuration, OSD status, monitor quorum, and capacity usage. The server uses the Ceph Dashboard REST API at https://192.168.1.241:8443 as its backend, providing reliable access without requiring CLI tools inside the pod.

Property Value
Port 50054
Transport JSON-RPC at /jsonrpc
Namespace f3iai
Backend Ceph Dashboard REST API (https://192.168.1.241:8443)

Tools

Cluster Health

Tool Description
ceph_cluster_status Get overall cluster health status (HEALTH_OK, HEALTH_WARN, HEALTH_ERR) with detail messages
ceph_cluster_df Get cluster-wide disk usage — total capacity, used, available, percentage
ceph_pg_status Get placement group statistics — active+clean count, degraded, misplaced, recovering

Monitors

Tool Description
ceph_list_monitors List all monitor daemons with quorum status, rank, and address
ceph_get_monitor Get detailed information about a specific monitor

OSDs (Object Storage Daemons)

Tool Description
ceph_list_osds List all OSDs with their status (up/down, in/out) and host assignment
ceph_get_osd Get detailed OSD information including crush weight, device class, and utilization
ceph_osd_utilization Get per-OSD utilization data to identify imbalanced or nearly-full disks

Pools

Tool Description
ceph_list_pools List all storage pools with replication factor, PG count, and application tags
ceph_get_pool Get detailed pool configuration and statistics
ceph_usage_by_pool Get disk usage broken down by pool — bytes used, objects stored, percentage of cluster

Services

Tool Description
ceph_list_services List all Ceph services (mon, osd, mgr, mds, rgw) and their daemon counts

Common Use Cases

  • “Is the Ceph cluster healthy?” — calls ceph_cluster_status
  • “How much storage is available?” — calls ceph_cluster_df
  • “Which OSDs are down?” — calls ceph_list_osds and filters for down status
  • “Show pool usage” — calls ceph_usage_by_pool
  • “Are all monitors in quorum?” — calls ceph_list_monitors
  • “Which OSD is using the most space?” — calls ceph_osd_utilization

Authentication

The server authenticates to the Ceph Dashboard REST API using username/password credentials:

Environment Variable Description
CEPH_DASHBOARD_URL Ceph Dashboard URL (default: https://192.168.1.241:8443)
CEPH_DASHBOARD_USERNAME Dashboard admin username
CEPH_DASHBOARD_PASSWORD Dashboard admin password
CEPH_DASHBOARD_VERIFY_SSL Whether to verify TLS certificates (default: false)

The server obtains a session token from the Dashboard API at startup and refreshes it as needed.

Health Endpoints

Endpoint Purpose
/health Liveness — process is running
/ready Readiness — can authenticate to the Ceph Dashboard API