# Fly.io MCP for AI Agents AI Agent Connect

> Fly.io MCP lets you manage your edge compute infrastructure through a chat interface. You can spin up machines, manage persistent volumes, check certificate statuses, and update configurations without leaving your AI client. It turns your agent into a dedicated infrastructure engineer for your Fly.io apps, allowing you to handle the heavy lifting of VM lifecycle management and global deployment tasks using natural language.

## Overview
- **Category:** loved-by-devs
- **Price:** Free
- **Endpoint:** https://edge.vinkius.com/vk_preview_dpmA9VGlYfKEyJ7rmW4BBpIY4hqdhZJNSHXzxXP5/ai-agent-connect
- **Tags:** edge-computing, virtual-machines, server-management, deployment, infrastructure-as-code, cloud-hosting

## Description

Managing edge infrastructure usually feels like a chore of copy-pasting IDs from a web console into a terminal. You're constantly jumping between tabs to check if a machine in Tokyo started correctly or to see if your TLS certificates actually issued. This Connector changes that by letting you handle the heavy lifting of infrastructure management through a natural conversation. You can ask your agent to spin up new machines with specific CPU and memory limits, or check the health of your global deployment in one go. It handles the tedious parts of lifecycle management, like restarting problematic VMs or creating persistent volumes that actually survive redeployments. Instead of hunting for IDs, you just tell your agent what needs doing. Because Vinkius makes it easy to connect these tools to your existing workflow, you get a hands-on way to manage Fly.io apps without the friction of manual configuration. It's about getting the infrastructure ready so you can get back to writing code. You can audit your security posture, update Docker images on the fly, and keep your data persistent without ever opening a browser tab.

## Tools

### create_machine
Create a new machine in a Fly.io app. You can specify the Docker image, region, and hardware limits like CPU and memory.

### create_volume
Create a persistent volume for an app. This ensures your data survives machine restarts and redeployments.

### delete_machine
Permanently delete a machine from your account. Use this when you need to clear out old hardware or free up resources.

### get_app
Get the full details of a specific Fly.io app. This includes its status, regions, and network configuration.

### get_machine
Get specific details for a single machine. You'll see its state, IP address, and current configuration.

### list_apps
List all apps in your Fly.io account. This is the first step to seeing every app and its global status.

### list_certificates
List all TLS and SSL certificates for an app. Use this to audit the issuance status of your domain certificates.

### list_machines
List all machines for a specific Fly.io app. It shows you every VM's state, region, and hardware config.

### list_volumes
List all persistent volumes for an app. This helps you track which volumes are attached to which machines.

### stop_machine
Stop a running machine to release its compute resources. The machine keeps its configuration and data while it's off.

### update_machine
Update a machine's configuration. You can change the Docker image, CPU allocation, memory, and mounts.

### restart_machine
Restart a specific Fly.io machine. This is the quickest way to apply configuration changes or recover from a hang.

### start_machine
Start a stopped machine to begin running its image. This boots the machine and allocates the necessary compute resources.

## Prompt Examples

**Prompt:** 
```
Show me all the machines for my 'api-gateway' app.
```

**Response:** 
```
Here are the machines for your **api-gateway** app:

| Name | Region | State | IP Address |
| :--- | :--- | :--- | :--- |
| api-gw-1 | iad | started | 192.168.1.1 |
| api-gw-2 | fra | started | 192.168.2.1 |
| api-gw-3 | nrt | stopped | N/A |
```

**Prompt:** 
```
Restart the machine in the 'auth-service' that's currently stopped.
```

**Response:** 
```
I've sent the restart command for the **auth-service** machine. It should be booting up in a few seconds. I'll let you know if I see any errors during the boot sequence.
```

**Prompt:** 
```
Create a 20GB volume for my 'db-primary' app in the 'iad' region.
```

**Response:** 
```
Done! I've created a **20GB** persistent volume for **db-primary** in the **iad (Virginia)** region. 

**Details:**
- **Name:** db-primary-vol
- **Size:** 20GB
- **Region:** iad

The volume is ready to be attached to your machine via its mount configuration.
```

## Capabilities

### Provision new VMs
Spin up new machines with specific CPU, memory, and region settings.

### Create persistent storage
Set up volumes that keep your data safe across machine restarts.

### Audit SSL certificates
Check the issuance status of your domain certificates across all apps.

### Cycle machine states
Start, stop, or restart machines to apply changes or recover from hangs.

### Monitor global health
View real-time IP addresses and machine states across all regions.

### Update hardware specs
Modify Docker images and resource allocations for existing machines.

## Use Cases

### Fixing a hung production VM
An engineer asks the agent to check the status of a machine in Frankfurt, sees it's unresponsive, and tells the agent to restart it using restart_machine.

### Scaling a database
A developer needs more storage and asks the agent to create a 50GB persistent volume for the database app in the Virginia region using create_volume.

### Multi-region audit
A DevOps lead asks to list all apps and their current regions to ensure the global deployment is balanced across the edge network using list_apps.

### Certificate check
A developer wants to see if the new domain's SSL certificate is issued and asks the agent to list all certificates for the web app using list_certificates.

## Benefits

- Stop hunting for IDs in the dashboard because list_apps and list_machines give you a clear view of your entire fleet instantly.
- Deploy hardware faster by using create_machine to set specific CPU and memory limits for different regions in one go.
- Keep your data safe by quickly creating persistent storage with create_volume to ensure it survives every redeployment.
- Audit your security posture easily with list_certificates to see exactly which domains have valid SSL statuses.
- Fix production issues faster by using restart_machine or stop_machine to cycle resources without manual CLI commands.
- Modify your production environment on the fly using update_machine to swap Docker images or adjust memory limits.

## How It Works

The bottom line is you get a chat-based control plane for your Fly.io infrastructure.

1. Subscribe to the Connector and grab your Fly.io Personal Access Token.
2. Paste that token into your AI client's configuration.
3. Start asking your agent to list apps, check machine states, or deploy new hardware.

## Frequently Asked Questions

**Can I use the Fly.io MCP to manage my production VMs?**
Yes, it gives your agent full control to start, stop, and restart machines, making it a great way to handle production maintenance without leaving your chat interface.

**Does this Connector support multi-region deployments?**
Yes, you can use it to list apps and machines across all Fly.io regions like iad, sjc, and fra, making it easy to manage global edge compute.

**How do I manage persistent storage with this tool?**
You can use the Connector to create and list volumes, ensuring your data stays put even when machines restart or are redeployed.

**Can I check my SSL certificates through the agent?**
Yes, the Connector can list all certificates for your apps so you can audit their status quickly and ensure your domains are secure.

**Can I update my Docker images without using the CLI?**
Yes, you can use the update tool to change the image reference or hardware specs for any machine directly through your AI client.

**Is it safe to delete machines using this Connector?**
Yes, you can use the delete tool to permanently remove machines, including a force option for those with attached volumes, giving you full control over your resources.

**How do I create a Fly.io Personal Access Token?**
Log in to the [**Fly.io Dashboard**](https://fly.io/dashboard), go to **Settings** > **Personal Access Tokens**, click **Create**, name your token and copy it immediately — it won't be shown again. Alternatively, use `fly tokens create` from the CLI after authenticating with `fly auth login`.

**What is a Fly.io Machine and how does it work?**
A Machine is a Fly.io VM (micro-VM) that runs your Docker container image. Each machine has its own CPU, memory, storage and IP address. Machines can be started, stopped, restarted and updated independently. They can run in any of Fly.io's 30+ global regions and are the fundamental compute unit of the platform.

**Can I start and stop machines to save costs?**
Yes! Use `stop_machine` to halt a machine and release its compute resources, and `start_machine` to boot it again. Stopped machines don't incur compute charges. This is perfect for development/staging environments that don't need to run 24/7. Persistent volumes attached to stopped machines retain all data.

**How do I deploy a machine in a specific region?**
Use the `create_machine` tool with the `region` parameter set to your desired Fly.io region code. Common regions include: `iad` (Virginia, US), `sjc` (San Jose, US), `nrt` (Tokyo, Japan), `fra` (Frankfurt, Germany), `syd` (Sydney, Australia). The full list is available in the Fly.io documentation.