GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
作者による説明(英語の原文)
MCP server for managing Fly.io machines, apps, logs, and Docker images.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
FLY_IO_API_TOKEN, FLY_IO_APP_NAME, ENABLED_TOOLGROUPS, SKIP_HEALTH_CHECKS, DISABLE_DOCKER_CLI_TOOLS「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"fly-io": {
"command": "npx",
"args": [
"-y",
"fly-io-mcp-server"
],
"env": {
"FLY_IO_API_TOKEN": "your-value",
"FLY_IO_APP_NAME": "your-value",
"ENABLED_TOOLGROUPS": "your-value",
"SKIP_HEALTH_CHECKS": "your-value",
"DISABLE_DOCKER_CLI_TOOLS": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add fly-io --env FLY_IO_API_TOKEN=your-value --env FLY_IO_APP_NAME=your-value --env ENABLED_TOOLGROUPS=your-value --env SKIP_HEALTH_CHECKS=your-value --env DISABLE_DOCKER_CLI_TOOLS=your-value -- npx -y fly-io-mcp-server動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"fly-io": {
"command": "npx",
"args": [
"-y",
"fly-io-mcp-server"
],
"env": {
"FLY_IO_API_TOKEN": "your-value",
"FLY_IO_APP_NAME": "your-value",
"ENABLED_TOOLGROUPS": "your-value",
"SKIP_HEALTH_CHECKS": "your-value",
"DISABLE_DOCKER_CLI_TOOLS": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"fly-io": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"fly-io-mcp-server"
],
"env": {
"FLY_IO_API_TOKEN": "your-value",
"FLY_IO_APP_NAME": "your-value",
"ENABLED_TOOLGROUPS": "your-value",
"SKIP_HEALTH_CHECKS": "your-value",
"DISABLE_DOCKER_CLI_TOOLS": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
FLY_IO_APP_NAME envENABLED_TOOLGROUPS envSKIP_HEALTH_CHECKS envDISABLE_DOCKER_CLI_TOOLS envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名はドメイン pulsemcp.com で確認済みです(レジストリがドメインの所有を確認しています)
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:FLY_IO_API_TOKEN
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.1.7)がレジストリに届いたのは5 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:GitHub, Desktop Commander, Cloudflare MCP
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
MCP server for managing Fly.io machines and applications. This server provides tools for CRUD operations on Fly.io apps and machines (VMs).
| Tool | Permissions | Feature | Description |
|---|---|---|---|
list_apps | readonly, write, admin | apps | List all Fly.io applications |
get_app | readonly, write, admin | apps | Get details for a specific app |
create_app | write, admin | apps | Create a new Fly.io application |
delete_app | admin | apps | Delete an application |
list_machines | readonly, write, admin | machines | List all machines in an app |
get_machine | readonly, write, admin | machines | Get details for a specific machine |
get_machine_events | readonly, write, admin | machines | Get event log for a machine (for debugging) |
create_machine | write, admin | machines | Create a new machine with a Docker image |
update_machine | write, admin | machines | Update a machine's configuration |
delete_machine | admin | machines | Delete a machine |
start_machine | write, admin | machines | Start a stopped machine |
stop_machine | write, admin | machines | Stop a running machine |
restart_machine | write, admin | machines | Restart a machine (stop then start) |
suspend_machine | write, admin | machines | Suspend a machine (save state to disk) |
wait_machine | write, admin | machines | Wait for a machine to reach a state |
get_logs | readonly, write, admin | logs | Get application logs |
machine_exec | write, admin | ssh | Execute a command on a machine |
show_image | readonly, write, admin | images | Show current Docker image details |
list_releases | readonly, write, admin | images | List releases with image references |
update_image | write, admin | images | Update app's image to latest or specific |
push_new_fly_registry_image | write, admin | registry | Push local image to Fly.io registry |
pull_fly_registry_image | readonly, write, admin | registry | Pull image from Fly.io registry |
check_fly_registry_image | readonly, write, admin | registry | Check if image exists in registry |
The machine_exec tool allows executing arbitrary commands on Fly.io machines. This is a powerful capability that should be used with caution:
ENABLED_TOOLGROUPS="readonly" or ENABLED_TOOLGROUPS="readonly,write" to disable administrative tools including machine_execfly CLI to be installed, which means it has access to execute shell commandsFLY_IO_API_TOKENControl which tools are available via the ENABLED_TOOLGROUPS environment variable. Two types of groups are supported and can be combined:
| Group | Description |
|---|---|
readonly | Read-only operations (list, get) |
write | Write operations (create, update, start, stop) |
admin | Administrative operations (delete apps/machines) |
| Group | Description |
|---|---|
apps | App management tools (list_apps, get_app, create_app, delete_app) |
machines | Machine management tools (list, get, create, update, delete, start, stop) |
logs | Log retrieval tools (get_logs) |
ssh | Remote execution tools (machine_exec) |
images | Image management tools (show_image, list_releases, update_image) |
registry | Docker registry tools (push_new_fly_registry_image, pull_fly_registry_image, check_fly_registry_image) - requires Docker CLI |
Examples:
ENABLED_TOOLGROUPS="readonly" - Only read operations (all features)ENABLED_TOOLGROUPS="readonly,write" - Read and write, no delete (all features)ENABLED_TOOLGROUPS="machines,logs" - All permissions, only machines and logs featuresENABLED_TOOLGROUPS="readonly,machines" - Read-only access to machines onlyWhen FLY_IO_APP_NAME is set, the server operates in "scoped mode":
list_apps, get_app, create_app, delete_app are not availableThis is useful for:
push_image, pull_image, check_registry_image)| Variable | Required | Description | Default |
|---|---|---|---|
FLY_IO_API_TOKEN | Yes | API token for Fly.io authentication | - |
FLY_IO_APP_NAME | No | Scope server to a single app (disables app management) | - |
ENABLED_TOOLGROUPS | No | Comma-separated tool groups to enable | All enabled |
SKIP_HEALTH_CHECKS | No | Skip API validation at startup | false |
DISABLE_DOCKER_CLI_TOOLS | No | Disable Docker-based registry tools | false |
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": { "fly-io": { "command": "npx", "args": ["-y", "fly-io-mcp-server"], "env": { "FLY_IO_API_TOKEN": "fo_your_token_here" } } } }
With app scoping (restricts to a single app):
{
"mcpServers": { "fly-io": { "command": "npx", "args": ["-y", "fly-io-mcp-server"], "env": { "FLY_IO_API_TOKEN": "fo_your_token_here", "FLY_IO_APP_NAME": "my-production-app" } } } }
Restart Claude Desktop and you should be ready to go!
Use the list_apps tool to see all my Fly.io applications.
Create a new Fly.io app called "my-web-app" in my personal organization,
then deploy an nginx container to it with 512MB of RAM.
List the machines in my-web-app and create two more copies
in different regions (lax and lhr).
Update all machines in my-web-app to use the nginx:1.25 image.
Get the events for machine abc123 in my-web-app to see why it crashed.
Restart machine abc123 in my-web-app to clear its state.
Get the logs for my-web-app to see what's happening.
Run "ls -la /app" on machine abc123 in my-web-app to see the app files.
Show me the current Docker image details for my-web-app.
List the last 5 releases for my-web-app to see the deployment history.
Update my-web-app to use the latest image version.
Push my local "my-app:v2" image to the Fly.io registry for my-web-app with tag "v2".
Check if the image with tag "v2" exists in the Fly.io registry for my-web-app.
# Clone the repository
git clone https://github.com/pulsemcp/mcp-servers.git cd mcp-servers/experimental/fly-io
npm run install-all
npm run build
npm run dev
# Run functional tests in watch mode
npm test
npm run test:run
npm run test:integration
npm run test:manual:setup # First time only npm run test:manual
# Check for linting issues (run from repo root)
npm run lint
npm run lint:fix
npm run format
This server uses the Fly.io CLI (`fly`) for all operations instead of the REST API directly. This approach:
FLY_API_TOKEN environment variable)The Fly.io API enforces rate limiting (applied by the CLI):
fly-io/
├── local/ # Local server implementation │ ├── src/ │ │ ├── index.ts # Main entry point │ │ └── index.integration-with-mock.ts │ └── package.json ├── shared/ # Shared business logic │ ├── src/ │ │ ├── server.ts # S
冒頭だけを表示しています。続きはリポジトリで読めます