protogrid

Search / io.github.RunOnFlux/flux-cloud-mcp

Flux Cloud

R0· no sign-in

Deploy, pay for and manage apps on Flux Cloud, the decentralized cloud. Prices in USD.

v0.2.8 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality72needs work
Trust97of 100
Uptime, 30 days100%
Latency p50415 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "flux-cloud-mcp": {
      "type": "http",
      "url": "https://mcp.runonflux.com/mcp"
    }
  }
}
claude mcp add --transport http flux-cloud-mcp https://mcp.runonflux.com/mcp
[mcp_servers.flux-cloud-mcp]
url = "https://mcp.runonflux.com/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "flux-cloud-mcp": {
      "type": "remote",
      "url": "https://mcp.runonflux.com/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "flux-cloud-mcp": {
      "type": "http",
      "url": "https://mcp.runonflux.com/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=flux-cloud-mcp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLnJ1bm9uZmx1eC5jb20vbWNwIn0%3D"
}
{
  "servers": {
    "flux-cloud-mcp": {
      "type": "http",
      "url": "https://mcp.runonflux.com/mcp"
    }
  }
}
{
  "mcpServers": {
    "flux-cloud-mcp": {
      "httpUrl": "https://mcp.runonflux.com/mcp"
    }
  }
}
extensions:
  "flux-cloud-mcp":
    enabled: true
    name: "flux-cloud-mcp"
    type: streamable_http
    uri: "https://mcp.runonflux.com/mcp"
    timeout: 300

Quality 72 / 100needs work

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene93 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations15 of 15 tools declare readOnlyHint or destructiveHint
  • warn
    tools.directory_hints3 of 15 tools declare all four hints; missing: flux_get_identity (destructiveHint, idempotentHint); flux_generate_keys (destructiveHint, idempotentHint); flux_validate_spec (destructiveHint, idempotentHint); …
  • pass
    tools.token_costabout 6,120 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability25 · weight 15
  • warn
    stability.changes15 tool changes in 30 days
  • fail
    stability.rug_pull1 tools kept their name but changed most of their description in 30 days; review before trusting them
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvabledeps.dev does not know @runonflux/[email protected]

15 tools, about 6,120 tokens to load them all · tool set a57ea56acbb7 · tools last changed 2026-10-16 · checked 2026-10-20 10:35 UTC

Tool changes

  • flux_get_network_infochangedannotations
  • flux_cancel_appchangedannotations
  • flux_control_appchangedannotations
  • flux_get_app_statschangedannotations
  • flux_get_app_logschangeddescription, annotations
    before

    Fetches the last N log lines of an app (or one component of it) from one of the nodes running it. Requires the owner key.

    after · 55% of words in common

    Fetches the last N log lines of an app from one of the nodes running it. Requires the owner key. The component is picked automatically when the app has one (private apps are decrypted with the owner key); otherwise the available names are listed.

  • flux_list_my_appschangedannotations
  • flux_get_appchangeddescription, input schema, annotationsmeaning changed
    before

    Looks up any app on the network by name and returns its published specification, expiry, running instances and URLs.

    after · 43% of words in common

    Looks up any app on the network by name and returns its published specification, expiry, running instances, URLs and a reachability check: probes the shared domain (HTTP) and each instance port (TCP and HTTP) and explains what a 503 means, including when it is expected for non-web apps.

  • flux_wait_for_appchangedannotations
  • flux_deploy_appchangedannotations
  • flux_quote_appchangedannotations

Showing the latest 10. Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 97 / 100

provenance90
liveness100
freshness100
hygiene100

+repository +namespace-matches-repo +website +reachable +uptime-100% +updated-4d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Dependencies

@runonflux/[email protected] npmthis version is not known to the dependency resolver

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.runonflux.com/mcp streamable-httpnoneyes100%415 ms2025-11-252026-10-20
packageregistryversionruntimesecrets
@runonflux/flux-cloud-mcpnpm0.2.8npxFLUX_ID_PRIVATE_KEY, FLUX_PAYMENT_PRIVATE_KEY

Tools (15)

flux_build_specread-onlyTurns images, ports, resources and a term into a complete, correctly formatted v8 specification, with public ports auto-picked and data replication enabled. Returns the spec plus local validation errors and warnings.
flux_cancel_appdestructiveEnds an app early by updating its term so it expires within about an hour. The network then uninstalls it everywhere. With confirm=true this signs and pays the (usually minimal) update; without it, returns the plan.
flux_control_appdestructiverestart: restarts containers. redeploy: pulls the image again and recreates containers (hard=true also wipes data). remove: uninstalls from nodes; the registration stays and the network re-spawns it elsewhere, so use flux_cancel_app to stop paying. Scope is one node (nodeIp) or every node running the app (global). Requires the owner key.
flux_deploy_appdestructiveValidates the specification on a node, quotes it, and with confirm=true signs it with the Flux ID, broadcasts it and pays the quoted FLUX from the payment address. Without confirm it only returns the plan (price, balance, warnings) and spends nothing. Registers a new name or updates an existing app of the same owner. Then call flux_wait_for_app with the returned txid.
flux_generate_keysread-onlyCreates two fresh private keys (WIF): one for the Flux ID that will own apps, one for the address that pays. The response contains the secrets; store them in the MCP server environment as FLUX_ID_PRIVATE_KEY and FLUX_PAYMENT_PRIVATE_KEY, then restart the server. Nothing is stored or sent anywhere by this tool.
flux_get_appread-onlyLooks up any app on the network by name and returns its published specification, expiry, running instances, URLs and a reachability check: probes the shared domain (HTTP) and each instance port (TCP and HTTP) and explains what a 503 means, including when it is expected for non-web apps.
flux_get_app_logsread-onlyFetches the last N log lines of an app from one of the nodes running it. Requires the owner key. The component is picked automatically when the app has one (private apps are decrypted with the owner key); otherwise the available names are listed.
flux_get_app_statsread-onlyCPU, memory and network stats of the containers of an app on one node. Requires the owner key.
flux_get_identityread-onlyReturns the Flux ID (app owner address), the payment address and its spendable FLUX balance with its USD value. Explains what to configure if keys are missing. Never returns private keys.
flux_get_network_inforead-onlyNode counts by tier, current block height, FLUX/USD rate and the deployment payment address.
flux_get_pricingread-onlyReturns the current USD rate card, the live FLUX/USD rate, the pay-in-FLUX discount and instant USD estimates for a few reference sizes. Use flux_quote_app for the exact price of a specific app.
flux_list_my_appsread-onlyLists every app registered by the owner (or a given Flux ID) with expiry and instance counts.
flux_quote_appread-onlyReturns the Flux Cloud price for registering the given specification, or for updating it if an app of that name already exists (the unused part of the current term is credited). Price is in USD with the FLUX amount at market rate.
flux_validate_specread-onlyRuns the local rule checks, then asks a FluxOS node to verify the specification exactly as it would at registration (image reachable, architecture, ports, name availability). Returns the node-formatted spec on success.
flux_wait_for_appread-onlyPolls the network for up to timeoutSeconds (default 45 to fit hosts with a 60 s tool timeout, max 600). Returns payment confirmations, whether the spec was accepted, and the running instances with URLs. Safe to call repeatedly until done=true.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "io.github.RunOnFlux/flux-cloud-mcp",
  "title": "Flux Cloud",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.runonflux.com/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "0.2.8",
  "packages": [
    {
      "version": "0.2.8",
      "transport": {
        "type": "stdio"
      },
      "identifier": "@runonflux/flux-cloud-mcp",
      "runtimeHint": "npx",
      "registryType": "npm",
      "environmentVariables": [
        {
          "name": "FLUX_ID_PRIVATE_KEY",
          "format": "string",
          "isSecret": true,
          "description": "WIF private key of the Flux ID that owns your apps. Optional; read-only tools work without it. flux_generate_keys creates one."
        },
        {
          "name": "FLUX_PAYMENT_PRIVATE_KEY",
          "format": "string",
          "isSecret": true,
          "description": "WIF private key of the Flux address that pays deployment fees. Optional; fund it with only what you intend to spend."
        }
      ]
    }
  ],
  "repository": {
    "url": "https://github.com/RunOnFlux/flux-cloud-mcp",
    "source": "github"
  },
  "websiteUrl": "https://runonflux.com",
  "description": "Deploy, pay for and manage apps on Flux Cloud, the decentralized cloud. Prices in USD."
}