Connectors · MSP & PSA
DigitalOcean MCP server for AI agents.
actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to DigitalOcean and the rest of your systems. It gives your agent 847 DigitalOcean actions (441 reads, 282 writes and 124 that wait for a confirmation) and holds the DigitalOcean credential itself, so the agent never does. It paces DigitalOcean's limits and records every call.
100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.
claude mcp add --transport http actionlake https://connect.actionlake.com/mcpdo { action: "digitalocean.droplets.list", intent: "check which DigitalOcean account is connected"}# List All Droplets · read · 1 upstream call- 847actionsin one signed file
- 441readlook, never change
- 282writecreate and update
- 124wait for a yesdestructive, confirmed first
Set up
Connect DigitalOcean in three steps.
- 01
Add actionlake to Claude.
Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
https://connect.actionlake.com/mcp - 02
Connect DigitalOcean.
Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
access_tokenDigitalOcean API token (dop_v1_…)
account { op: "connections.requirements", service: "digitalocean" } # free: exactly what to paste, and what is found for you - 03
Make the first call. Check before a write.
Ask in plain words; Claude picks the action. Before anything changes,
checkvalidates the call and prices it, for free.do { action: "digitalocean.droplets.list" }# list all droplets · read · 1 upstream callcheck { action: "digitalocean.droplets.create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent
DigitalOcean at a glance
- Sign-in
- Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
- You provide
access_token- Limits we pace to
- 5,000 calls an hour and 250 a minute, per connection
- API covered
- DigitalOcean API v2 (OpenAPI 3.0.0, info.version 2.0)
api.digitalocean.com - Built from
- DigitalOcean's documentation, read 22 October 2026api-engineering.nyc3.digitaloceanspaces.comdocs.digitalocean.com
- Service file
- Version 1.0.0, signed (Ed25519)
- Cached reads
- 427 of 441 reads, for up to 5 minutes; a write clears what it affects
- Shared entities
- 4, so ask can line DigitalOcean up with your other systems
- Data
- Processed and stored in Sydney, Australia. No US region yet
Capabilities
What an AI agent can do in DigitalOcean.
847 actions in 62 areas. Every one carries its effect, so a key can allow the reads and hold the rest.
- 441readlook, never change
- 282writecreate and update
- 124destructivewait for a confirmation
Agent platform API
14264 read · 57 write · 21 destructive
Add Agent Route to an Agent · Create an Agent · Create an Agent API Key · List Agent API Keys
Monitoring
7264 read · 5 write · 3 destructive
Create Alert Policy · List Alert Policies · Create Logging Destination · Update Logging Destination
Databases
7132 read · 29 write · 10 destructive
Add a New Database · List All Databases · Reset a Database User's Password or Authentication Method · List Backups for a Database Cluster
Harness runtime
4922 read · 18 write · 9 destructive
Create an Environment Config (environment spec + optional Insights opt-in). · Clone an Environment Config under a new name. · List the sessions created from one Environment Config. · List active Environment Configs for the caller's team.
Action gateway
4325 read · 13 write · 5 destructive
Clear an Actor's Limits · Set an Actor's Limits · Create a Connection · List Connections
Apps
3824 read · 13 write · 1 destructive
List All Apps · Create a New App · Retrieve an Existing App · Update an App
Insights
2818 read · 8 write · 2 destructive
List Alert Instances · Create an Alert Rule · List Alert Rules · Search logs
Kubernetes
2711 read · 9 write · 7 destructive
List Associated Resources for Cluster Deletion · Create a New Kubernetes Cluster · Upgrade a Kubernetes Cluster · Run Clusterlint Checks on a Kubernetes Cluster
54 more areas · 377 actions
- Container registries 19
- Droplets 19
- Container registry 18
- Signals 14
- Dedicated inference 13
- Functions 13
- Micro V MS public preview 13
- Firewalls 11
- NFS 11
- Serverless inference 11
- Uptime 11
- Vector databases 11
- Load balancers 10
- Security 10
- VP CS 10
- Block storage 9
- Images 9
- Partner network connect 9
- Projects 9
- Add ons 8
- Billing 8
- Droplet autoscale pools 8
- Action gateway data plane 6
- Batch inference 6
- Byoip prefixes 6
- CDN endpoints 6
- Domain records 6
- Spaces keys 6
- Tags 6
- VPC subnets public preview 6
- SSH keys 5
- VPC nat gateways 5
- VPC peerings 5
- VPC routes public preview 5
- Block storage actions 4
- Certificates 4
- Domains 4
- Droplet actions 4
- Floating i PS 4
- Project resources 4
- Reserved i PS 4
- Reserved i PV6 4
- Floating ip actions 3
- Image actions 3
- Reserved ip actions 3
- Snapshots 3
- 1 click applications 2
- Actions 2
- Organizations 2
- Account 1
- NFS actions 1
- Regions 1
- Reserved i PV6 actions 1
- Sizes 1
Top actions
The DigitalOcean API, shaped for agents.
The ids your agent types, what each does, and the one name it shares with other systems. 25 of DigitalOcean's 25 action names are shared with at least one other connector, so an agent learns them once.
| Action | What it does | Effect | Same name in |
|---|---|---|---|
digitalocean.droplets.listList All Droplets | List All Droplets | read | infra.instance.list18 connectors |
digitalocean.apps.listList All Apps | List All Apps | read | infra.container_service.list11 connectors |
digitalocean.account.getGet User Information | Get User Information | read | identity.current_user.get307 connectors |
digitalocean.droplets.createCreate a New Droplet | Create a New Droplet | write | infra.instance.create10 connectors |
digitalocean.apps.createCreate a New App | Create a New App | write | infra.container_service.create8 connectors |
digitalocean.uptime_checks.listList All Checks | List All Checks | read | monitoring.monitor.list32 connectors |
digitalocean.droplets.destroyDelete an Existing Droplet | Delete an Existing Droplet | destructive | infra.instance.delete13 connectors |
digitalocean.uptime_check.createCreate a New Check | Create a New Check | write | monitoring.monitor.create27 connectors |
digitalocean.apps_deployments.listList App Deployments | List App Deployments | read | infra.deployment.list8 connectors |
digitalocean.apps_deployment.createCreate an App Deployment | Create an App Deployment | write | infra.deployment.create7 connectors |
digitalocean.sizes.listList All Droplet Sizes | List All Droplet Sizes | read | infra.instance_size.list6 connectors |
digitalocean.images_custom.createCreate a Custom Image | Create a Custom Image | write | infra.instance_image.create3 connectors |
Try it
Prompts to paste into Claude.
Each one names the DigitalOcean actions it will call, so you know what it reads and what it changes before you send it.
- Readread
List All Droplets in DigitalOcean and tell me what stands out.
calls
digitalocean.droplets.list - Writewrite
Create a New Droplet in DigitalOcean. Show me exactly what you will send before you save it.
calls
digitalocean.droplets.create
Governance for DigitalOcean
Destructive actions wait for a yes.
124 DigitalOcean actions are destructive. The first 10:
- Delete an Existing Droplet
digitalocean.droplets.destroy - Delete an App
digitalocean.apps.delete - Delete a Check
digitalocean.uptime_check.delete - Delete an Image
digitalocean.images.delete - Delete a Domain
digitalocean.domains.delete - Delete a Block Storage Volume
digitalocean.volumes.delete - Delete an Existing Project
digitalocean.projects.delete - Delete an SSH Key
digitalocean.ssh_keys.delete - Delete a Database
digitalocean.databases.delete - Delete a Firewall
digitalocean.firewalls.delete
A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.
Delete an Existing Droplet?
intent: the user asked me to delete an Existing Droplet
account { op: "keys.create", name: "digitalocean-agent", allowed_actions: ["digitalocean.*"], cap_calls: 2000, confirm_policy: "human_for_writes", approval_rules: [ { match: "digitalocean.droplets.destroy", approver: "[email protected]" }, { match: "digitalocean.apps.delete", approver: "[email protected]" }, { match: "digitalocean.uptime_check.delete", approver: "[email protected]" } ]}Cost
What DigitalOcean costs on actionlake.
Every DigitalOcean action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call DigitalOcean refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
- 1upstream call per actionall 847 DigitalOcean actions
- 847actions pageeach page of a long list is one call
- 427reads can be cacheda cache hit costs nothing
- 100,000calls a month, freepaid plans from US$49 a month for 250,000
Action index
Every DigitalOcean action.
847 actions by area: the id your agent calls, what it does, and its effect.
Agent platform API142
digitalocean.genai_agent.attachAdd Agent Route to an Agentwritedigitalocean.genai_agent.createCreate an Agentwritedigitalocean.genai_agent_api_key.createCreate an Agent API Keywritedigitalocean.genai_agent_api_keys.listList Agent API Keysreaddigitalocean.genai_agent.deleteDelete an Agentdestructivedigitalocean.genai_agent.detachDelete Agent Route for an Agentdestructive- and 136 more in this area
Monitoring72
digitalocean.monitoring_alert_policy.createCreate Alert Policywritedigitalocean.monitoring_alert_policy.listList Alert Policiesreaddigitalocean.monitoring_destination.createCreate Logging Destinationwritedigitalocean.monitoring_destination.updateUpdate Logging Destinationwritedigitalocean.monitoring_alert_policy.deleteDelete an Alert Policydestructivedigitalocean.monitoring_alert_policy.getRetrieve an Existing Alert Policyread- and 66 more in this area
Databases71
digitalocean.databases.addAdd a New Databasewritedigitalocean.databases.listList All Databasesreaddigitalocean.databases_auth.resetReset a Database User's Password or Authentication Methodwritedigitalocean.databases_backups.listList Backups for a Database Clusterreaddigitalocean.databases.deleteDelete a Databasedestructivedigitalocean.databases.getRetrieve an Existing Databaseread- and 65 more in this area
Harness runtime49
digitalocean.harness_config.createCreate an Environment Config (environment spec + optional Insights opt-in).writedigitalocean.harness_config_clone.createClone an Environment Config under a new name.writedigitalocean.harness_config_sessions.listList the sessions created from one Environment Config.readdigitalocean.harness_configs.listList active Environment Configs for the caller's team.readdigitalocean.harness_config.deleteSoft-delete an Environment Config.destructivedigitalocean.harness_config.getGet an active Environment Config and its environment spec.read- and 43 more in this area
Action gateway43
digitalocean.actor_limits.deleteClear an Actor's Limitswritedigitalocean.actor_limits.updateSet an Actor's Limitswritedigitalocean.connections.createCreate a Connectionwritedigitalocean.connections.listList Connectionsreaddigitalocean.actor_limits.getGet an Actor's Limitsreaddigitalocean.connections.deleteDelete a Connectiondestructive- and 37 more in this area
Apps38
digitalocean.apps.createCreate a New Appwritedigitalocean.apps.getRetrieve an Existing Appreaddigitalocean.apps.listList All Appsreaddigitalocean.apps.updateUpdate an Appwritedigitalocean.apps.deleteDelete an Appdestructivedigitalocean.apps.restartRestart an Appwrite- and 32 more in this area
Insights28
digitalocean.insights_alert_instances.listList Alert Instancesreaddigitalocean.insights_alert_rule.createCreate an Alert Rulewritedigitalocean.insights_alert_rules.listList Alert Rulesreaddigitalocean.insights_logs_search.postSearch logswritedigitalocean.insights_alert_instance.getRetrieve an Alert Instancereaddigitalocean.insights_alert_rule.deleteDelete an Alert Ruledestructive- and 22 more in this area
Kubernetes27
digitalocean.kubernetes_associated_resources.listList Associated Resources for Cluster Deletionreaddigitalocean.kubernetes_cluster.createCreate a New Kubernetes Clusterwritedigitalocean.kubernetes_cluster.upgradeUpgrade a Kubernetes Clusterwritedigitalocean.kubernetes_cluster_lint.runRun Clusterlint Checks on a Kubernetes Clusterwritedigitalocean.kubernetes_associated_resources_dangerous.destroyDelete a Cluster and All of its Associated Resources (Dangerous)destructivedigitalocean.kubernetes_associated_resources_selective.destroySelectively Delete a Cluster and its Associated Resourcesdestructive- and 21 more in this area
Container registries19
digitalocean.registries.createCreate Container Registrywritedigitalocean.registries.listList All Container Registriesreaddigitalocean.registries_garbage_collection.runStart Garbage Collectionwritedigitalocean.registries_garbage_collections.listList Garbage Collectionsreaddigitalocean.registries.deleteDelete Container Registry By Namedestructivedigitalocean.registries.getGet a Container Registry By Nameread- and 13 more in this area
Droplets19
digitalocean.droplets.createCreate a New Dropletwritedigitalocean.droplets.destroyDelete an Existing Dropletdestructivedigitalocean.droplets.getRetrieve an Existing Dropletreaddigitalocean.droplets.listList All Dropletsreaddigitalocean.droplets_associated_resources.listList Associated Resources for a Dropletreaddigitalocean.droplets_backup_policies.listList Backup Policies for All Existing Dropletsread- and 13 more in this area
Container registry18
digitalocean.registry.createCreate Container Registrywritedigitalocean.registry_garbage_collection.runStart Garbage Collectionwritedigitalocean.registry_garbage_collections.listList Garbage Collectionsreaddigitalocean.registry_name.validateValidate a Container Registry Namewritedigitalocean.registry.deleteDelete Container Registrydestructivedigitalocean.registry.getGet Container Registry Informationread- and 12 more in this area
Signals14
digitalocean.signals_agent_sessions.listList Sessions for an Environmentreaddigitalocean.signals_consents.listList All Consent Recordsreaddigitalocean.signals_deletion.createCreate a Data Deletion Jobwritedigitalocean.signals_deletions.listList Data Deletion Jobsreaddigitalocean.signals_consent.getRetrieve Consent for an Environmentreaddigitalocean.signals_consent.updateUpdate Consent for an Environmentwrite- and 8 more in this area
Dedicated inference13
digitalocean.dedicated_inferences.createCreate a Dedicated Inferencewritedigitalocean.dedicated_inferences.listList Dedicated Inferencesreaddigitalocean.dedicated_inferences_accelerators.listList Dedicated Inference Acceleratorsreaddigitalocean.dedicated_inferences_sizes.listList Dedicated Inference Sizesreaddigitalocean.dedicated_inferences.deleteDelete a Dedicated Inferencedestructivedigitalocean.dedicated_inferences.getGet a Dedicated Inferenceread- and 7 more in this area
Functions13
digitalocean.functions_access_key.createCreate a Namespace Access Keywritedigitalocean.functions_access_key.listList Namespace Access Keysreaddigitalocean.functions_namespace.createCreate Namespacewritedigitalocean.functions_namespaces.listList Namespacesreaddigitalocean.functions_access_key.deleteDelete a Namespace Access Keydestructivedigitalocean.functions_access_key.updateUpdate a Namespace Access Keywrite- and 7 more in this area
Micro V MS public preview13
digitalocean.microvm_checkpoints.createCreate a checkpoint of a MicroVMwritedigitalocean.microvm_checkpoints.listList checkpointsreaddigitalocean.microvms.createCreate a MicroVMwritedigitalocean.microvms.listList all MicroVMsreaddigitalocean.microvm_checkpoints.deleteDelete a checkpointdestructivedigitalocean.microvm_checkpoints.getRetrieve a checkpointread- and 7 more in this area
Firewalls11
digitalocean.firewalls.createCreate a New Firewallwritedigitalocean.firewalls.listList All Firewallsreaddigitalocean.firewalls_droplets.assignAdd Droplets to a Firewallwritedigitalocean.firewalls_rules.addAdd Rules to a Firewallwritedigitalocean.firewalls.deleteDelete a Firewalldestructivedigitalocean.firewalls.getRetrieve an Existing Firewallread- and 5 more in this area
NFS11
digitalocean.nfs.createCreate a new NFS sharewritedigitalocean.nfs.listList NFS shares per regionreaddigitalocean.nfs_access_point.createCreate an NFS access pointwritedigitalocean.nfs_access_points.listList NFS access points for a sharereaddigitalocean.nfs.deleteDelete an NFS sharedestructivedigitalocean.nfs.getGet an NFS shareread- and 5 more in this area
Serverless inference11
digitalocean.inference_async_invoke.createGenerate Image, Audio, or Text-to-Speech Using fal Modelswritedigitalocean.inference_chat_completion.createCreate a model response for the given chat conversationwritedigitalocean.inference_embedding.createCreate embeddingwritedigitalocean.inference_image.createGenerate images from text promptswritedigitalocean.inference_messages.createCreate the next assistant messagewritedigitalocean.inference_models.listList available modelsread- and 5 more in this area
Uptime11
digitalocean.uptime_check.createCreate a New Checkwritedigitalocean.uptime_check.getRetrieve an Existing Checkreaddigitalocean.uptime_check.updateUpdate a Checkwritedigitalocean.uptime_checks.listList All Checksreaddigitalocean.uptime_alert.createCreate a New Alertwritedigitalocean.uptime_alert.deleteDelete an Alertdestructive- and 5 more in this area
Vector databases11
digitalocean.vector_databases.createCreate a New Vector Databasewritedigitalocean.vector_databases.listList All Vector Databasesreaddigitalocean.vector_databases_backups.listList Backups for a Vector Databasereaddigitalocean.vector_databases_resize.postResize a Vector Databasewritedigitalocean.vector_databases.deleteDelete a Vector Databasedestructivedigitalocean.vector_databases.getRetrieve an Existing Vector Databaseread- and 5 more in this area
Load balancers10
digitalocean.load_balancers.createCreate a New Load Balancerwritedigitalocean.load_balancers.listList All Load Balancersreaddigitalocean.load_balancers_droplets.addAdd Droplets to a Load Balancerwritedigitalocean.load_balancers_forwarding_rules.addAdd Forwarding Rules to a Load Balancerwritedigitalocean.load_balancers.deleteDelete a Load Balancerdestructivedigitalocean.load_balancers.getRetrieve an Existing Load Balancerread- and 4 more in this area
Security10
digitalocean.security_scan.createCreate Scanwritedigitalocean.security_scan_finding_affected_resources.listList Finding Affected Resourcesreaddigitalocean.security_scan_rule.createCreate Scan Rulewritedigitalocean.security_scans.listList Scansreaddigitalocean.security_latest_scan.getGet Latest Scanreaddigitalocean.security_scan.getGet Scanread- and 4 more in this area
VP CS10
digitalocean.vpcs.createCreate a New VPCwritedigitalocean.vpcs.listList All VPCsreaddigitalocean.vpcs_members.listList the Member Resources of a VPCreaddigitalocean.vpcs_peerings.createCreate a Peering with a VPCwritedigitalocean.vpcs.deleteDelete a VPCdestructivedigitalocean.vpcs.getRetrieve an Existing VPCread- and 4 more in this area
Block storage9
digitalocean.volumes.createCreate a New Block Storage Volumewritedigitalocean.volumes.deleteDelete a Block Storage Volumedestructivedigitalocean.volumes.getRetrieve an Existing Block Storage Volumereaddigitalocean.volumes.listList All Block Storage Volumesreaddigitalocean.volume_snapshots.createCreate Snapshot from a Volumewritedigitalocean.volume_snapshots.listList Snapshots for a Volumeread- and 3 more in this area
Images9
digitalocean.images.getRetrieve an Existing Imagereaddigitalocean.images.listList All Imagesreaddigitalocean.images.updateUpdate an Imagewritedigitalocean.images_custom.createCreate a Custom Imagewritedigitalocean.images.deleteDelete an Imagedestructivedigitalocean.images_account_transfer_accept.postAccept an Image Account Transferdestructive- and 3 more in this area
Partner network connect9
digitalocean.partner_attachments.createCreate a new partner attachmentwritedigitalocean.partner_attachments.listList all partner attachmentsreaddigitalocean.partner_attachments_remote_routes.listList remote routes for a partner attachmentreaddigitalocean.partner_attachments_service_key.createRegenerate the service key for the partner attachmentwritedigitalocean.partner_attachments.deleteDelete an existing partner attachmentdestructivedigitalocean.partner_attachments.getRetrieve an existing partner attachmentread- and 3 more in this area
Projects9
digitalocean.projects.createCreate a Projectwritedigitalocean.projects.getRetrieve an Existing Projectreaddigitalocean.projects.listList All Projectsreaddigitalocean.projects.patchPatch a Projectwritedigitalocean.projects.deleteDelete an Existing Projectdestructivedigitalocean.projects.updateUpdate a Projectwrite- and 3 more in this area
Add ons8
digitalocean.addons.createCreate/Provision a New Add-on Resourcewritedigitalocean.addons.getGet details on an Add-On Resourcereaddigitalocean.addons.listList all Add-On Resourcesreaddigitalocean.addons.patchUpdate the name for an Add-On Resourcewritedigitalocean.addons.deleteDelete/Deprovision an Add-on Resourcedestructivedigitalocean.addons_app.getList Available Add-On Applicationsread- and 2 more in this area
Billing8
digitalocean.billing_history.listList Billing Historyreaddigitalocean.billing_insights.listList Billing Insightsreaddigitalocean.invoices.listList All Invoicesreaddigitalocean.invoices_by_uuid.getRetrieve an Invoice by UUIDreaddigitalocean.balance.getGet Customer Balancereaddigitalocean.invoices_summary_by_uuid.getRetrieve an Invoice Summary by UUIDread- and 2 more in this area
Droplet autoscale pools8
digitalocean.autoscalepools.createCreate a New Autoscale Poolwritedigitalocean.autoscalepools.listList All Autoscale Poolsreaddigitalocean.autoscalepools_history.listList history eventsreaddigitalocean.autoscalepools_members.listList membersreaddigitalocean.autoscalepools.deleteDelete autoscale pooldestructivedigitalocean.autoscalepools.getRetrieve an Existing Autoscale Poolread- and 2 more in this area
Action gateway data plane6
digitalocean.gateway_approvals.updateDecide a Pending Approval by Session Headerwritedigitalocean.gateway_code.runExecute Codewritedigitalocean.gateway_session_approvals.updateDecide a Pending Approvalwritedigitalocean.gateway_tools.listList Session Toolsreaddigitalocean.gateway_tools.runInvoke Session Toolswritedigitalocean.gateway_tools_search.listSearch Session Toolsread
Batch inference6
digitalocean.inference_batch.cancelCancel a Batch Inference Jobwritedigitalocean.inference_batch.createCreate a Batch Inference Jobwritedigitalocean.inference_batch_file.createCreate a Batch Inference Input Filewritedigitalocean.inference_batches.listList Batch Inference Jobsreaddigitalocean.inference_batch.getRetrieve a Batch Inference Jobreaddigitalocean.inference_batch_results.getGet Batch Inference Results Download Linksread
Byoip prefixes6
digitalocean.byoip_prefixes.createCreate a BYOIP Prefixwritedigitalocean.byoip_prefixes.getGet a BYOIP Prefixreaddigitalocean.byoip_prefixes.listList BYOIP Prefixesreaddigitalocean.byoip_prefixes_resources.listList BYOIP Prefix Resourcesreaddigitalocean.byoip_prefixes.deleteDelete a BYOIP Prefixdestructivedigitalocean.byoip_prefixes.patchUpdate a BYOIP Prefixwrite
CDN endpoints6
digitalocean.cdn_endpoint.createCreate a New CDN Endpointwritedigitalocean.cdn_endpoint.getRetrieve an Existing CDN Endpointreaddigitalocean.cdn_endpoints.listList All CDN Endpointsreaddigitalocean.cdn_endpoints.updateUpdate a CDN Endpointwritedigitalocean.cdn_cache.purgePurge the Cache for an Existing CDN Endpointdestructivedigitalocean.cdn_endpoint.deleteDelete a CDN Endpointdestructive
Domain records6
digitalocean.domains_record.createCreate a New Domain Recordwritedigitalocean.domains_record.getRetrieve an Existing Domain Recordreaddigitalocean.domains_record.patchUpdate a Domain Recordwritedigitalocean.domains_record.updateUpdate a Domain Recordwritedigitalocean.domains_records.listList All Domain Recordsreaddigitalocean.domains_record.deleteDelete a Domain Recorddestructive
Spaces keys6
digitalocean.spaces_key.createCreate a New Spaces Access Keywritedigitalocean.spaces_key.getGet a Spaces Access Keyreaddigitalocean.spaces_key.listList Spaces Access Keysreaddigitalocean.spaces_key.patchUpdate Spaces Access Keyswritedigitalocean.spaces_key.updateUpdate Spaces Access Keyswritedigitalocean.spaces_key.deleteDelete a Spaces Access Keydestructive
Tags6
digitalocean.tags.createCreate a New Tagwritedigitalocean.tags.getRetrieve a Tagreaddigitalocean.tags.listList All Tagsreaddigitalocean.tags_resources.assignTag a Resourcewritedigitalocean.tags.deleteDelete a Tagdestructivedigitalocean.tags_resources.unassignUntag a Resourcedestructive
VPC subnets public preview6
digitalocean.vpc_subnets.createCreate a VPC Subnetwritedigitalocean.vpc_subnets.getRetrieve a VPC Subnetreaddigitalocean.vpc_subnets.listList VPC Subnetsreaddigitalocean.vpc_subnets_members.listList the Member Resources of a VPC Subnetreaddigitalocean.vpc_subnets.deleteDelete a VPC Subnetdestructivedigitalocean.vpc_subnets.updateUpdate a VPC Subnetwrite
SSH keys5
digitalocean.ssh_keys.createCreate a New SSH Keywritedigitalocean.ssh_keys.getRetrieve an Existing SSH Keyreaddigitalocean.ssh_keys.listList All SSH Keysreaddigitalocean.ssh_keys.updateUpdate an SSH Key's Namewritedigitalocean.ssh_keys.deleteDelete an SSH Keydestructive
VPC nat gateways5
digitalocean.vpcnatgateways.createCreate a New VPC NAT Gatewaywritedigitalocean.vpcnatgateways.getRetrieve an Existing VPC NAT Gatewayreaddigitalocean.vpcnatgateways.listList All VPC NAT Gatewaysreaddigitalocean.vpcnatgateways.updateUpdate VPC NAT Gatewaywritedigitalocean.vpcnatgateways.deleteDelete VPC NAT Gatewaydestructive
VPC peerings5
digitalocean.vpc_peerings.createCreate a New VPC Peeringwritedigitalocean.vpc_peerings.getRetrieve an Existing VPC Peeringreaddigitalocean.vpc_peerings.listList All VPC Peeringsreaddigitalocean.vpc_peerings.patchUpdate a VPC peeringwritedigitalocean.vpc_peerings.deleteDelete a VPC peeringdestructive
VPC routes public preview5
digitalocean.vpc_routes.listList VPC Routesreaddigitalocean.vpc_subnet_routes.createCreate a VPC Subnet Routewritedigitalocean.vpc_subnet_routes.listList VPC Subnet Routesreaddigitalocean.vpc_subnet_routes.updateUpdate a VPC Subnet Routewritedigitalocean.vpc_subnet_routes.deleteDelete a VPC Subnet Routedestructive
Block storage actions4
digitalocean.volume_actions.getRetrieve an Existing Volume Actionreaddigitalocean.volume_actions.listList All Actions for a Volumereaddigitalocean.volume_actions.postInitiate A Block Storage Action By Volume Namewritedigitalocean.volume_actions_by_id.postInitiate A Block Storage Action By Volume Idwrite
Certificates4
digitalocean.certificates.createCreate a New Certificatewritedigitalocean.certificates.deleteDelete a Certificatedestructivedigitalocean.certificates.getRetrieve an Existing Certificatereaddigitalocean.certificates.listList All Certificatesread
Domains4
digitalocean.domains.createCreate a New Domainwritedigitalocean.domains.deleteDelete a Domaindestructivedigitalocean.domains.getRetrieve an Existing Domainreaddigitalocean.domains.listList All Domainsread
Droplet actions4
digitalocean.droplet_actions.getRetrieve a Droplet Actionreaddigitalocean.droplet_actions.listList Actions for a Dropletreaddigitalocean.droplet_actions.postInitiate a Droplet Actionwritedigitalocean.droplet_actions_by_tag.postActing on Tagged Dropletswrite
Floating i PS4
digitalocean.floating_i_ps.createCreate a New Floating IPwritedigitalocean.floating_i_ps.deleteDelete a Floating IPdestructivedigitalocean.floating_i_ps.getRetrieve an Existing Floating IPreaddigitalocean.floating_i_ps.listList All Floating IPsread
Project resources4
digitalocean.projects_resources.assignAssign Resources to a Projectwritedigitalocean.projects_resources.listList Project Resourcesreaddigitalocean.projects_resources_default.assignAssign Resources to Default Projectwritedigitalocean.projects_resources_default.listList Default Project Resourcesread
Reserved i PS4
digitalocean.reserved_i_ps.createCreate a New Reserved IPwritedigitalocean.reserved_i_ps.deleteDelete a Reserved IPdestructivedigitalocean.reserved_i_ps.getRetrieve an Existing Reserved IPreaddigitalocean.reserved_i_ps.listList All Reserved IPsread
Reserved i PV64
digitalocean.reserved_i_pv6.createCreate a New Reserved IPv6writedigitalocean.reserved_i_pv6.deleteDelete a Reserved IPv6destructivedigitalocean.reserved_i_pv6.getRetrieve an Existing Reserved IPv6readdigitalocean.reserved_i_pv6.listList All Reserved IPv6sread
Floating ip actions3
digitalocean.floating_i_ps_action.getRetrieve an Existing Floating IP Actionreaddigitalocean.floating_i_ps_action.listList All Actions for a Floating IPreaddigitalocean.floating_i_ps_action.postInitiate a Floating IP Actionwrite
Image actions3
digitalocean.image_actions.getRetrieve an Existing Actionreaddigitalocean.image_actions.listList All Actions for an Imagereaddigitalocean.image_actions.postInitiate an Image Actionwrite
Reserved ip actions3
digitalocean.reserved_i_ps_actions.getRetrieve an Existing Reserved IP Actionreaddigitalocean.reserved_i_ps_actions.listList All Actions for a Reserved IPreaddigitalocean.reserved_i_ps_actions.postInitiate a Reserved IP Actionwrite
Snapshots3
digitalocean.snapshots.deleteDelete a Snapshotdestructivedigitalocean.snapshots.getRetrieve an Existing Snapshotreaddigitalocean.snapshots.listList All Snapshotsread
1 click applications2
digitalocean.one_clicks.listList 1-Click Applicationsreaddigitalocean.one_clicks_kubernetes.installInstall Kubernetes 1-Click Applicationswrite
Actions2
digitalocean.actions.getRetrieve an Existing Actionreaddigitalocean.actions.listList All Actionsread
Organizations2
digitalocean.organizations_team.createCreate a Team in an Organizationwritedigitalocean.organizations_teams.listList Teams in an Organizationread
Account1
digitalocean.account.getGet User Informationread
NFS actions1
digitalocean.nfs_action.createInitiate an NFS actionwrite
Regions1
digitalocean.regions.listList All Data Center Regionsread
Reserved i PV6 actions1
digitalocean.reserved_i_pv6_actions.postInitiate a Reserved IPv6 Actionwrite
Sizes1
digitalocean.sizes.listList All Droplet Sizesread
This index shows a sample of each area. All 847 actions, with their inputs and prices, are in the catalogue, which a free sandbox key can search.
Questions
The DigitalOcean MCP server, answered.
Is there a DigitalOcean MCP server for Claude?
Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 847 DigitalOcean actions across agent platform API, monitoring, databases and harness runtime, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by DigitalOcean.
What do I need to connect DigitalOcean?
DigitalOcean API token (dop_v1_…). The free call account { op: "connections.requirements", service: "digitalocean" } lists exactly what to paste.
Can an AI agent delete or change things in DigitalOcean?
Only if its key allows it, and only with an explicit confirmation. 124 DigitalOcean actions are destructive, including delete an Existing Droplet, delete an App and delete a Check. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.
Will an AI agent use up my DigitalOcean API limit?
actionlake paces every call to the limits in the DigitalOcean service file: 5,000 calls an hour and 250 a minute per connection. Repeated reads are answered from cache (427 DigitalOcean actions can be), which never reaches DigitalOcean.
What does a DigitalOcean action cost?
One upstream call, the only unit actionlake bills. A list that pages bills one call per page (847 DigitalOcean actions page). Cache hits, searches, dry runs and calls DigitalOcean refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
Which DigitalOcean API does it cover?
The DigitalOcean API v2 (OpenAPI 3.0.0, info.version 2.0) at api.digitalocean.com. It is built from DigitalOcean's documentation as read on 22 October 2026. 847 actions in 62 areas, each one in the signed service file (version 1.0.0).
Does actionlake keep my DigitalOcean data, and where?
actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your DigitalOcean credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.
Which AI clients can use it?
Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.
Give your agent DigitalOcean today.
Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.