{
  "name": "Optidata Cloud",
  "id": "cloud.optidata/ocs-mcp-server",
  "description": "Query and provision Optidata Cloud compute, block storage, networking, object storage, DNS, load balancers, certificates, projects and catalog through the Optidata Cloud public API. Hosted server: nothing to install.",
  "homepage": "https://www.optidata.com",
  "documentation": "https://www.optidata.com/mcp",
  "repository": "https://github.com/optidatacloud/ocs-mcp-plugin",
  "version": "1.0.1",
  "remote": {
    "url": "https://console.optidata.com/api/v1/mcp",
    "transport": "streamable-http",
    "stateless": true,
    "authentication": {
      "type": "api_key",
      "header": "x-api-key",
      "key_prefix": "ocs_",
      "description": "Optidata Cloud API key, created in the console under your account's API keys. Its scopes filter which tools are offered.",
      "obtain_url": "https://console.optidata.com/",
      "oauth": "not available yet"
    }
  },
  "regions": {
    "us-east-1": "Optidata Cloud Miami (US1) region, Miami, Florida. Not an AWS region."
  },
  "safety": [
    "Billable creates return an itemized monthly price and require explicit approval before they run.",
    "Destructive actions require typing the resource's exact name. Confirmation tokens are single-use and expire in about five minutes.",
    "The tool list is filtered by the API key's scopes. Some operations are permanently off."
  ],
  "tools": [
    { "name": "compute", "description": "List, create, resize, start, stop, reboot, reinstall and delete instances" },
    { "name": "block-storage", "description": "Volumes: list, create, attach, detach, resize, delete" },
    { "name": "networking", "description": "Networks, subnets, VPCs, peerings, interfaces, public IPs, floating IPs" },
    { "name": "object-storage", "description": "Buckets: list, create, delete. List objects and read object metadata" },
    { "name": "dns", "description": "Zones and record sets, reverse DNS" },
    { "name": "load-balancers", "description": "Balancers, listeners, backend members" },
    { "name": "certificates", "description": "Issue, renew, inspect" },
    { "name": "projects-and-quota", "description": "Projects, membership, resource moves, effective quota" },
    { "name": "catalog-and-pricing", "description": "Locations, templates, service and disk offerings, list prices" }
  ],
  "clients": {
    "claude-code": {
      "commands": [
        "/plugin marketplace add optidatacloud/ocs-mcp-plugin",
        "/plugin install optidata-cloud@optidata"
      ],
      "notes": "Claude Code asks for the ocs_ API key after install and stores it in the system keychain.",
      "alternative": "claude mcp add --transport http ocs https://console.optidata.com/api/v1/mcp --header \"x-api-key: ocs_...\""
    },
    "codex": {
      "file": "~/.codex/config.toml",
      "config": "[mcp_servers.optidata_cloud]\nurl = \"https://console.optidata.com/api/v1/mcp\"\nhttp_headers = { \"x-api-key\" = \"ocs_...\" }",
      "verified": false
    },
    "cursor": {
      "manifest": "https://github.com/optidatacloud/ocs-mcp-plugin/blob/main/.cursor-plugin/plugin.json",
      "notes": "Connects like any Streamable HTTP client: the endpoint URL plus the x-api-key header."
    },
    "gemini": {
      "manifest": "https://github.com/optidatacloud/ocs-mcp-plugin/blob/main/gemini-extension.json",
      "config": {
        "mcpServers": {
          "ocs": {
            "httpUrl": "https://console.optidata.com/api/v1/mcp",
            "headers": { "x-api-key": "$OCS_API_KEY" }
          }
        }
      },
      "environment": {
        "OCS_API_KEY": { "description": "Optidata Cloud API key (ocs_...). Export it before starting Gemini CLI.", "required": true }
      }
    }
  }
}
