VX Agents

OpenAPI Marketplace · Developer Tools

DigitalOcean Droplets & Apps

v1.0.0 · 12 endpoints · 0 connections · shared by vx.ai

Lets an agent check a DigitalOcean account and balance, list and inspect Droplets and their action history, and monitor App Platform apps: list apps, follow deployments, read deployment logs and trigger a redeploy. Useful for ops assistants that answer what is running, why a deploy failed and how much is owed. Curated from DigitalOcean's official OpenAPI specification.

Connect this API to an AI agent Browse all specs

What you can do with DigitalOcean Droplets & Apps via MCP

Every endpoint below becomes a governed tool your AI agent (Claude, ChatGPT, or a customer-facing VX agent) can call — with scoped permissions, sandbox testing, and audit logs.

MethodPathOperationDescription
GET /v2/account getAccount Get the account's email, status and Droplet limit
GET /v2/customers/my/balance getBalance Get the current balance and month-to-date usage
GET /v2/droplets listDroplets List Droplets (filter by tag or name)
GET /v2/droplets/{droplet_id} getDroplet Get one Droplet's status, size, region and IPs
GET /v2/droplets/{droplet_id}/actions listDropletActions List actions run on a Droplet (reboots, resizes, ...)
GET /v2/droplets/{droplet_id}/actions/{action_id} getDropletAction Get the status of one Droplet action
GET /v2/apps listApps List App Platform apps
GET /v2/apps/{id} getApp Get one app, its spec and live URL
GET /v2/apps/{app_id}/deployments listAppDeployments List an app's deployments, newest first
POST /v2/apps/{app_id}/deployments createAppDeployment Start a new deployment (redeploy) of an app
GET /v2/apps/{app_id}/deployments/{deployment_id} getAppDeployment Get one deployment's phase and progress
GET /v2/apps/{app_id}/deployments/{deployment_id}/logs getAppDeploymentLogs Get a link to a deployment's build or run logs

Authentication

bearerAuth

Bearer token — sent as Authorization: Bearer <token>

How to get a credential

  1. Sign in to the DigitalOcean control panel and open API > Tokens (https://cloud.digitalocean.com/account/api/tokens).
  2. Click Generate New Token, give it a name (e.g. "VX Agents") and an expiry.
  3. Choose Custom Scopes and tick the scopes in the table below (read-only scopes are enough unless you want the agent to redeploy apps).
  4. Copy the token (dop_v1_...); it is shown only once.

Permissions used

Scope Operations
account:read getAccount
billing:read getBalance
droplet:read listDroplets, getDroplet
actions:read listDropletActions, getDropletAction
app:read listApps, getApp, listAppDeployments, getAppDeployment, getAppDeploymentLogs
app:create / app:update createAppDeployment

Common errors

  • 401 Unauthorized: the token is wrong, expired or revoked. Generate a new one and update the credential.
  • 403 Forbidden: the token lacks a scope for this call. Create a token with the scope from the table.
  • 400 / 422: an invalid id or parameter (e.g. per_page above 200). Check the ids returned by the list calls.
  • 429 Too Many Requests: rate limit (5,000 requests/hour, 250/minute). Wait for ratelimit-reset and retry.

Store the token as a VX Agents credential (Bearer token) so it is sent as Authorization: Bearer <token>.

Usage guide

Setup

  1. Create a DigitalOcean personal access token (API > Tokens) with custom scopes account:read, billing:read, droplet:read, actions:read, app:read (add app:update only if the agent may redeploy apps). Save it as a Bearer credential.
  2. Optional presets: pin per_page (e.g. 50) on list calls; pin app_id if the agent should only watch one app.

Check infrastructure

  1. getAccount to confirm the token works (status should be active).
  2. listDroplets (filter with tag_name or name) and getDroplet for status, size, region and public IPv4 (networks.v4 with type: public).
  3. listDropletActions / getDropletAction to see recent reboots, resizes or snapshots and whether they completed or errored.
  4. getBalance for month_to_date_usage and account_balance (USD strings).

Investigate or redeploy an app

  1. listApps and pick the app's id; getApp for live_url, active_deployment and the app spec.
  2. listAppDeployments (newest first) and getAppDeployment for phase (PENDING_BUILD, BUILDING, DEPLOYING, ACTIVE, ERROR, ...) and progress steps.
  3. getAppDeploymentLogs with type = BUILD (build failed) or DEPLOY/RUN (crash after start). It returns historic_urls/live_url: links to download the log text, not the logs themselves.
  4. To redeploy, tell the user which app will rebuild and wait for confirmation, then call createAppDeployment with {"force_build": true} to rebuild from source. Poll getAppDeployment until ACTIVE or ERROR.

Good to know

  • Ids: Droplet and action ids are integers; app and deployment ids are UUIDs.
  • Pagination: page (from 1) and per_page (max 200); follow links.pages.next until it is absent.
  • Timestamps are ISO 8601 UTC. Money values are strings in USD.
  • This spec cannot create, power off or delete Droplets: use the control panel for that.
  • Rate limits: 5,000 requests/hour and 250/minute; on 429 wait before retrying.

How to use this spec

  1. Create a free VX Agents account (sandbox tools included).
  2. Open the marketplace and connect “DigitalOcean Droplets & Apps” to an agent.
  3. Expose it as an MCP server for Claude/ChatGPT, or chat with it directly.

Related APIs