MCP Server

CloudCasa provides an MCP (Model Context Protocol) server. MCP is an open standard that lets AI assistants and tools, such as Claude Code, connect to external services. The CloudCasa MCP server allows an AI assistant to work with your CloudCasa resources using natural language, for example to check the status of clusters or review recent backup jobs.

The MCP server invokes the CloudCasa APIs on your behalf and authenticates with a CloudCasa API key. It can only do what the role assigned to that API key allows.

Note

The MCP server currently supports read operations only. An AI assistant can view information such as clusters, jobs, and recovery points, but cannot run, create, edit, or delete anything in CloudCasa.

The CloudCasa MCP server is available at:

https://mcp.cloudcasa.io

Connecting an AI assistant

Any AI assistant or tool that supports remote MCP servers over HTTP and allows custom HTTP headers can connect to CloudCasa. Each user connects with their own API key.

  1. In the CloudCasa UI, create an API key by visiting the page Configuration => API Keys. Make sure you select the correct role. For more information, see API Keys.

  2. Configure your AI assistant with the MCP server URL (https://mcp.cloudcasa.io) and pass the API key in the X-CloudCasa-Token HTTP header.

Note

Treat API keys like passwords. Anyone with the key can access CloudCasa with the permissions of its role. Consider creating a dedicated API key with a limited role, such as the builtin READONLY role.

Example: Claude Code

To add CloudCasa as an MCP server in Claude Code, first save your API key in an environment variable:

export CC_API_KEY=<YOUR-API-KEY>

Then run:

claude mcp add --transport http cloudcasa https://mcp.cloudcasa.io --header "X-CloudCasa-Token: $CC_API_KEY"

To confirm that the server was added and is connected, run:

claude mcp list

You should see “cloudcasa” listed with a “Connected” status.

See also

For more information, see the Claude Code MCP documentation.

Other MCP clients

Most other MCP clients are configured with a JSON file. The exact format varies by client, but it typically looks like this:

{
  "mcpServers": {
    "cloudcasa": {
      "type": "http",
      "url": "https://mcp.cloudcasa.io",
      "headers": {
        "X-CloudCasa-Token": "<YOUR-API-KEY>"
      }
    }
  }
}

Usage examples

Once connected, you can ask your AI assistant questions about CloudCasa in plain language. The assistant decides which CloudCasa operations to use to answer. For example:

  • “List all clusters in CloudCasa and show their status.”

  • “Did any backup jobs fail in the last 24 hours? If so, why?”

  • “Which backup definitions are configured for cluster my-test-cluster, and when did they last run?”

  • “Show me the recovery points available for the prod-db namespace.”

  • “Which object stores are configured, and which backups use them?”

  • “List any recent alerts.”

Available tools

The MCP server provides the following tools to AI assistants. You don’t normally call these directly; the assistant selects the appropriate tools based on your request.

Tool

Description

cc_list_clusters

List Kubernetes clusters

cc_get_cluster

Get cluster by ID

cc_list_cluster_namespaces

List namespaces inventoried in a cluster

cc_list_policies

List backup policies

cc_get_policy

Get backup policy by ID

cc_list_snapshot_backups

List snapshot backup definitions (from /kubebackups, without copydef or migrationdef)

cc_get_snapshot_backup

Get snapshot backup definition by ID

cc_list_copy_backups

List copy (offload) backup definitions (from /kubeoffloads, with backupdef)

cc_get_copy_backup

Get copy (offload) backup definition by ID

cc_list_recovery_points

List recovery points (individual backup runs from /backupinstances; filter state=READY for restorable)

cc_get_recovery_point

Get recovery point by ID

cc_list_restores

List restore definitions (configurations, not individual runs)

cc_get_restore

Get restore definition by ID

cc_list_jobs

List jobs — run-time instances of backup, restore, copy, migration, and DR operations

cc_get_job

Get job by ID

cc_list_alerts

List CloudCasa alerts (per-user event records; filter on type, not state)

cc_get_alert

Get alert by ID

cc_list_objectstores

List object stores (S3, Azure, or filestore backup targets)

cc_get_objectstore

Get object store by ID

cc_list_cloudaccounts

List cloud accounts (AWS, Azure, GCP; state is status.state)

cc_get_cloudaccount

Get cloud account by ID (supports ?embedded={“aws.awsaccount”:1})

Note

When referencing CloudCasa resources, always use the _id field value (a 24-character hex string), not the display name.

Revoking access

To revoke an AI assistant’s access to CloudCasa, delete the API key it uses from the Configuration => API Keys page.