Search / io.github.RunOnFlux/flux-cloud-mcp
Flux Cloud
R0· no sign-inDeploy, pay for and manage apps on Flux Cloud, the decentralized cloud. Prices in USD.
v0.2.8 · active · repository · website · descriptor JSON · versions
Search / io.github.RunOnFlux/flux-cloud-mcp
R0· no sign-inDeploy, pay for and manage apps on Flux Cloud, the decentralized cloud. Prices in USD.
v0.2.8 · active · repository · website · descriptor JSON · versions
{
"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
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotations15 of 15 tools declare readOnlyHint or destructiveHinttools.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); …tools.token_costabout 6,120 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes15 tool changes in 30 daysstability.rug_pull1 tools kept their name but changed most of their description in 30 days; review before trusting themdeps.known_vulns, deps.mcp_sdk_version, deps.resolvabledeps.dev does not know @runonflux/[email protected]flux_get_network_infochangedannotationsflux_cancel_appchangedannotationsflux_control_appchangedannotationsflux_get_app_statschangedannotationsflux_get_app_logschangeddescription, annotationsFetches the last N log lines of an app (or one component of it) from one of the nodes running it. Requires the owner key.
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_appschangedannotationsflux_get_appchangeddescription, input schema, annotationsmeaning changedLooks up any app on the network by name and returns its published specification, expiry, running instances and URLs.
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_appchangedannotationsflux_deploy_appchangedannotationsflux_quote_appchangedannotationsShowing 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.
+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.
@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.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://mcp.runonflux.com/mcp streamable-http | none | yes | 100% | 415 ms | 2025-11-25 | 2026-10-20 |
| package | registry | version | runtime | secrets |
|---|---|---|---|---|
@runonflux/flux-cloud-mcp | npm | 0.2.8 | npx | FLUX_ID_PRIVATE_KEY, FLUX_PAYMENT_PRIVATE_KEY |
flux_build_specread-only | Turns 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_appdestructive | Ends 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_appdestructive | restart: 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_appdestructive | Validates 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-only | Creates 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-only | 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_get_app_logsread-only | 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_get_app_statsread-only | CPU, memory and network stats of the containers of an app on one node. Requires the owner key. |
flux_get_identityread-only | Returns 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-only | Node counts by tier, current block height, FLUX/USD rate and the deployment payment address. |
flux_get_pricingread-only | Returns 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-only | Lists every app registered by the owner (or a given Flux ID) with expiry and instance counts. |
flux_quote_appread-only | Returns 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-only | Runs 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-only | Polls 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.
{
"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."
}