> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fly.io/llms.txt
> Use this file to discover all available pages before exploring further.

# flyctl mcp server

<a href="https://fly.io/blog/mcp-provisioning/">
  ![Scotty talking to a computer](https://fly.io/blog/mcp-provisioning/assets/Hello.webp)
</a>

## Adding fly mcp server to your LLM

```
fly mcp server --claude
```

You can also specify `--cursor`, `--neovim`, `--vscode`, `--windsurf`, or `--zed`. Or specify a configuration file path directly using `--config`.

`flyctl` provides an MCP server that you can use to provision your application. At the present time, most of the following commands and their subcommands are supported:

* [apps](/flyctl/cmd/fly_apps) - Manage Fly applications. A Fly App is an abstraction for a group of Fly Machines running your code on Fly.io.
* [certs](/flyctl/cmd/fly_certs) - Manage the certificates associated with a deployed application.
* [logs](/flyctl/cmd/fly_logs) - View application logs as generated by the application running on the Fly platform.
* [machine](/flyctl/cmd/fly_machine) - Manage Fly Machines. Fly Machines are super-fast, lightweight VMs that can be created, and then quickly started and stopped as needed with flyctl commands or with the Machines REST fly.
* [orgs](/flyctl/cmd/fly_orgs) - Manage Fly organizations. Organization admins can also invite or remove users from organizations.
* [platform](/flyctl/cmd/fly_platform) - Information about the Fly platform
* [secrets](/flyctl/cmd/fly_secrets) - Manage secrets. Secrets are provided to applications at runtime as ENV variables.
* [status](/flyctl/cmd/fly_status) - Show the application’s current status including application details, tasks, most recent deployment details and in which regions it is currently allocated.
* [volumes](/flyctl/cmd/fly_volumes) - Manage Fly Volumes. Volumes are persistent storage for Fly Machines.

## Running with the MCP inspector

You can explore the `flyctl mcp server` using the MCP inspector:

<Note>
  As the MCP inspector is a Node.js application, you need to [Download and install Node.js](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) first. MacOS users can use [`brew install node`](https://formulae.brew.sh/formula/node).
</Note>

```sh theme={null}
fly mcp server -i
```

Navigate to [http://127.0.0.1:6274](http://127.0.0.1:6274) ; click Connect; then List Tools; then a tool like `fly-platform-status`, `fly-orgs-list`, `fly-apps-list`, or `fly-machines-list`; then fill out the form (if any) and click Run tool.

## Running on a separate machine

<Warning>
  **Running this server remotely can give others access to run commands on your behalf. Read the following carefully before proceeding.**
</Warning>

Both `--sse` and `-stream` options are supported.

The default bind address is `127.0.0.1` which will only allow requests from the same machine. to override specify `--bind-addr`.

Authentication tokens come from (in priority order):

* `bearer-token` from the `Authentication` header on the request
* `--access-token` flag on the `fly mcp server` command
* `FLY_ACCESS_TOKEN` environment variable

See [Access Tokens](/security/tokens) for information on how to obtain a token.
