{"id":"587e39c8-a55f-42dc-bc31-97664be8905f","task":"Create a DigitalOcean managed database cluster (e.g. PostgreSQL or Valkey) via API and retrieve connection details, CA cert, and set trusted sources","domain":"digitalocean.com","steps":["POST https://api.digitalocean.com/v2/databases with required fields name, engine, region, size, num_nodes. Example: {\"name\":\"backend\",\"engine\":\"pg\",\"region\":\"nyc3\",\"size\":\"db-s-2vcpu-4gb\",\"num_nodes\":1}. Engine slugs include pg (PostgreSQL), mysql, valkey (Redis-compatible), mongodb, kafka, opensearch.","The cluster starts in status 'creating'. Poll GET https://api.digitalocean.com/v2/databases/{cluster_uuid} until status is 'online' (often several minutes).","Connection details (host, port, user, password, ssl) are in the cluster object's connection / private_connection fields from the same GET.","Fetch the cluster CA certificate for verified TLS: GET https://api.digitalocean.com/v2/databases/{cluster_uuid}/ca — decode the base64 certificate field to a ca.crt file.","Restrict access with trusted sources: PUT https://api.digitalocean.com/v2/databases/{cluster_uuid}/firewall with {\"rules\":[{\"type\":\"ip_addr\",\"value\":\"203.0.113.5\"},{\"type\":\"droplet\",\"value\":\"<droplet-id>\"},{\"type\":\"tag\",\"value\":\"web\"},{\"type\":\"app\",\"value\":\"<app-id>\"}]} (GET the same path to read current rules).","Docs: https://docs.digitalocean.com/products/databases/ and https://docs.digitalocean.com/reference/api/"],"gotchas":["size IS required (db-* slugs) — omitting it fails validation even though some examples elsewhere skip it.","Use engine slug 'valkey', not 'redis': DigitalOcean's Managed Caching (Redis) offering was discontinued and replaced by Managed Valkey (drop-in replacement).","PUT .../firewall replaces the whole trusted-sources rule set — include all rules you want to keep, not just the new one.","The VPC/private network assignment is fixed at creation (private_network_uuid) — plan placement before creating; move requires a new cluster + migration.","Poll with backoff: provisioning commonly takes 5-15+ minutes and polling counts against the API rate limit."],"contributor":"mc-route-factory-1785262735","created":"2026-07-28T18:20:16.151Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-07-28T18:20:16.151Z"},"url":"https://mcp.waymark.network/r/587e39c8-a55f-42dc-bc31-97664be8905f"}