# DigitalOcean MCP

> DigitalOcean MCP connects your AI agent directly to your cloud account. You can list and inspect all virtual machines, check database cluster health, map DNS records, and audit resource actions—all through natural conversation. It lets you manage infrastructure monitoring without ever leaving your IDE or chat window.

## Overview
- **Category:** loved-by-devs
- **Price:** Free
- **Tags:** cloud-computing, virtual-machines, dns-management, kubernetes, server-management, api-integration

## Description

Managing a multi-service cloud stack means hopping between dashboards to verify everything: are the droplets running? Is the latest snapshot available? Are the domains pointing correctly?

This MCP gives your agent direct API access to your DigitalOcean account. You talk to it like you’re talking to an SRE—you ask for a list of all active virtual machines, or you ask for the connection status of PostgreSQL clusters. Your AI client handles the querying and returns structured data instantly.

It's about moving from manual investigation to direct query. Whether you use your agent through Claude, Cursor, or any Vinkius-compatible client, you treat your entire infrastructure—from droplets to volumes—as a single dataset. You get instant visibility into everything from DNS records to Kubernetes cluster health.

## Tools

### get_account_info
Retrieves basic account details, useful for verifying overall resource availability and status.

### get_droplet_details
Fetches specific metadata—IPs, specs, etc.—for one designated virtual machine (Droplet).

### list_actions
Provides a history of account actions, which is critical for auditing and monitoring changes.

### list_kubernetes_clusters
Provides details on all managed Kubernetes clusters, including health metrics and node status.

### list_databases
Lists all managed database clusters, including their current status, engine version, and connection endpoints.

### list_domains
Retrieves a full list of all domains managed under the account's DNS configuration.

### list_droplets
Lists every active virtual machine, providing status, IP addresses, and core hardware specifications.

### list_images
Finds available snapshots and disk images, necessary for resource recovery or deployment testing.

### list_volumes
Lists block storage volumes across the account, detailing their size, region, and attachment state.

## Prompt Examples

**Prompt:** 
```
List all my active Droplets on DigitalOcean.
```

**Response:** 
```
I've retrieved your virtual machines. You have 3 active Droplets: 'Web-Server-01' (IP: 192.168.1.1), 'DB-Primary', and 'Staging'. Which one should we inspect for more details?
```

**Prompt:** 
```
Show me my domain names and DNS configurations.
```

**Response:** 
```
Accessing DNS... I've found 2 domains: 'vinkius.com' and 'app-test.io'. Both point to DigitalOcean name servers. Would you like to see the individual A or CNAME records for 'vinkius.com'?
```

**Prompt:** 
```
What is the status of my database clusters?
```

**Response:** 
```
Scanning databases... Your primary PostgreSQL cluster (ID: 456) is 'Online' and healthy. Your Redis cache is also 'Online'. Shall I retrieve the connection endpoints for you?
```

## Capabilities

### View full resource inventory
List all virtual machines (Droplets), snapshots, block storage volumes, and account metadata in one query.

### Audit historical changes
Retrieve a chronological list of every action taken on the account for auditing purposes.

### Monitor database health status
Check the current operational status and connection endpoints for managed MySQL, PostgreSQL, and Redis clusters.

### Manage domain records
Query and review all associated DNS domains and their specific record configurations.

### Inspect container deployments
List DigitalOcean Kubernetes Service (DOKS) clusters and pull the current health metadata for those environments.

## Use Cases

### A staging site is offline, but I don't know why.
The agent uses `get_droplet_details` to find the IP for 'Staging-Web'. It then checks `list_databases` and finds that the primary PostgreSQL cluster connection point failed. The issue isn't the VM; it's the database link.

### I need to verify if a new domain name points correctly after migration.
The agent runs `list_domains` to confirm the record exists, and then uses `get_account_info` to ensure billing status is clean. It confirms both DNS records and account health are good to go.

### We suspect a resource was manually altered last night.
The system admin asks the agent to run `list_actions`. The resulting log shows exactly which user changed what, when. This is far more efficient than reviewing manual logs.

### I need to provision a new environment from scratch.
The agent uses `list_images` to find the correct base snapshot. It then checks `list_volumes` to ensure sufficient block storage is available before initiating the Droplet creation command.

## Benefits

- Stop context switching. You can check the health of a PostgreSQL cluster using `list_databases` and then immediately cross-reference its associated domain records via `list_domains`, all within one chat session.
- Audit trails are simple. Instead of digging through logs, use `list_actions` to pull an immediate summary of account activity. It’s faster than checking the dashboard history.
- Manage resource versions easily. Need a snapshot? Use `list_images` to find available disk images and then `get_droplet_details` to verify which Droplets can be rebuilt from them.
- Get a complete picture of your servers. One call to `list_droplets` gives you the status, IPs, and specs for every virtual machine without clicking anything.
- Handle complex deployments. You can list all Kubernetes clusters with `list_kubernetes_clusters` and pull out the health metadata needed to confirm deployment readiness.

## How It Works

The bottom line is that you pass the complexity of the cloud API to your AI client; you just ask what you need.

1. Subscribe to this MCP on Vinkius and grab your Personal Access Token from the DigitalOcean dashboard.
2. Paste that token into your AI client's configuration panel. Your agent now has read-only access credentials.
3. Start by asking your agent a direct question, like 'List all active Droplets.' It executes the necessary API calls and formats the resulting data for you.

## Frequently Asked Questions

**How do I check the health of my servers using get_droplet_details?**
You pass the specific Droplet ID or name to the agent. It returns detailed metadata, including status and hardware specs for that single virtual machine.

**Can list_databases check if my cluster is backed up?**
The `list_databases` tool checks operational status (online/offline) and connection endpoints. For backup history or retention policy, you'll need to use the native DigitalOcean dashboard.

**What does list_volumes do for my storage?**
It lists all block storage volumes associated with your account. You get details on their size, region, and whether they are currently attached to a Droplet or not.

**Is get_account_info the only way to check my billing status?**
No, `get_account_info` provides general account details. For detailed financial records or usage reports, you still need to use the main DigitalOcean billing panel.

**What does using list_actions show about my account's history?**
It provides a full audit trail of your account activity. You can review who made changes and when, giving you visibility into system modifications.

**How do I use list_domains to check my web configurations?**
This tool lists all managed DNS domains and their current records. It's essential for verifying that your A or CNAME records point where they should.

**When is it best to run list_images for resource recovery?**
You use this when you need to revert to a previous state. It shows available snapshots and disk images, letting you recover resources or deploy from an older version.

**Can I check the overall health of my container setups using list_kubernetes_clusters?**
Yes, it retrieves detailed metadata about your DOKS clusters. You get information on cluster versions and node status to assess stability at a glance.

**How do I find my DigitalOcean Access Token?**
Log in to the Cloud Control Panel, navigate to **API** in the sidebar, and click **Generate New Token** under Personal Access Tokens.

**Can I perform destructive actions like deleting droplets?**
No. The current toolset is focused on querying and monitoring resources. Destructive or state-altering commands are not exposed via the agent.

**How do I get technical details for a specific Droplet?**
Use the `get_droplet_details` tool with the Droplet's numeric ID to retrieve full networking and configuration metadata.