fly launch

Fly launch is a bundle of features that take a lot of the work out of deploying and managing your Fly App.

This guide presumes that you have flyctl installed, and have successfully run either fly auth signup or fly auth login.

The first step is intended to be run in an empty directory.

Create your app

Create a Dockerfile with the following contents:

FROM flyio/mcp
VOLUME /data
CMD [ "npx", "-f", "@modelcontextprotocol/server-filesystem", "/data/" ]

Now use the fly launch command:

fly launch

Optional parameters include --name, --org, and --flycast.

Review and accept the defaults.

The Dockerfile will be build, and the resulting image will be pushed and deployed. In the process, a volume will be allocated and both a shared ipv4 and a dedicated ipv6 address will be allocated.

Your configuration will be found in fly.toml.

If you make any change to your Dockerfile or fly.toml, run fly deploy to apply the changes.

Accessing the MCP via an inspector

As the MCP inspector is a Node.js application, you need to Download and install Node.js first. MacOS users can use brew install node.

You are test out your MCP server using the MCP inspector:

fly mcp proxy -i

Navigate to http://127.0.0.1:6274 ; click Connect; then List Tools; select any tool; fill out the form (if any) and click Run tool.

Configure your LLM

Here’s an example claude_desktop_config.json:

{
  "mcpServers": {
    "filesystem": {
      "command": "/Users/rubys/.fly/bin/flyctl",
      "args": [
         "mcp",
         "proxy",
         "--url=https://mcp.fly.dev/"
       ]
    }
  }
}

Adjust the flyctl path and the value of the –url, restart your LLM (in this case, Claude) and try out the tools.