{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_dtv3fvfjw3fd","handle":"runonflux-flux-cloud-mcp","url":"https://wellknown.network/agents/runonflux-flux-cloud-mcp","links":{"self":"https://wellknown.network/agents/runonflux-flux-cloud-mcp/record.json","html":"https://wellknown.network/agents/runonflux-flux-cloud-mcp","markdown":"https://wellknown.network/agents/runonflux-flux-cloud-mcp/record.md","api":"https://wellknown.network/api/v1/agents/runonflux-flux-cloud-mcp","status":"https://wellknown.network/api/v1/agents/runonflux-flux-cloud-mcp/status","claim":"https://wellknown.network/agents/runonflux-flux-cloud-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/runonflux-flux-cloud-mcp/claim.json","badge":"https://wellknown.network/agents/runonflux-flux-cloud-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/runonflux-flux-cloud-mcp/history","tools":"https://wellknown.network/api/v1/agents/runonflux-flux-cloud-mcp/tools"},"ard":{"identifier":"urn:air:mcp.runonflux.com:server:runonflux-flux-cloud-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Flux Cloud","summary":"Deploy, pay for and manage apps on Flux Cloud, the decentralized cloud. Prices in USD.","description":"Deploy, pay for and manage apps on Flux Cloud, the decentralized cloud. Prices in USD.","publisher":{"name":"RunOnFlux","url":null},"homepage":"https://runonflux.com","repository":"https://github.com/RunOnFlux/flux-cloud-mcp","version":"0.2.7","license":"MIT","protocols":["mcp"],"tags":["flux","fluxcloud","runonflux","mcp","model-context-protocol","decentralized-cloud","deploy","ai-agent"],"pricing":null,"endpoints":[{"url":"https://mcp.runonflux.com/mcp","type":"mcp_streamable_http","auth":null,"probeable":true},{"url":"npm:@runonflux/flux-cloud-mcp","type":"package_npm","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-09-13T07:13:51.606089Z","npmKeywords":["flux","fluxcloud","runonflux","mcp","model-context-protocol","decentralized-cloud","deploy","ai-agent"],"publishedAt":"2026-09-13T07:13:51.606089Z","registryName":"io.github.RunOnFlux/flux-cloud-mcp"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","license":"npm","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"media.image-generation","name":"Image Generation","confidence":1,"provenance":"declared"},{"slug":"dev.ci-cd","name":"CI/CD & Deploy","confidence":1,"provenance":"declared"},{"slug":"commerce.pricing","name":"Pricing & Quotes","confidence":1,"provenance":"derived"},{"slug":"dev.docs-lookup","name":"Documentation Lookup","confidence":0.54,"provenance":"derived"},{"slug":"security.identity","name":"Identity & Access","confidence":0.525,"provenance":"derived"},{"slug":"commerce.payments","name":"Payments","confidence":0.51,"provenance":"derived"},{"slug":"security.secrets","name":"Secrets Management","confidence":0.51,"provenance":"derived"}],"categories":["commerce","dev","media","security"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 4h ago.","lastOkAt":"2026-10-12T16:34:04.304Z","lastProbedAt":"2026-10-12T16:34:04.304Z","statusComputedAt":"2026-10-12T16:34:47.660Z","reliability30d":{"probes":106,"successRate":1,"p50Ms":232,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":106,"ok":106,"authBoundaryOk":0,"serviceOk":106,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-12T16:34:04.304Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":239,"error":null,"detail":{"tools":[{"name":"flux_get_identity","description":"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. "},{"name":"flux_generate_keys","description":"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 th"},{"name":"flux_get_pricing","description":"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 "},{"name":"flux_build_spec","description":"Turns images, ports, resources and a term into a complete, correctly formatted v8 specification, with public ports auto-picked and data replication enabled. Ret"},{"name":"flux_validate_spec","description":"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 "},{"name":"flux_quote_app","description":"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 t"},{"name":"flux_deploy_app","description":"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 addre"},{"name":"flux_wait_for_app","description":"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 acce"},{"name":"flux_get_app","description":"Looks up any app on the network by name and returns its published specification, expiry, running instances and URLs."},{"name":"flux_list_my_apps","description":"Lists every app registered by the owner (or a given Flux ID) with expiry and instance counts."},{"name":"flux_get_app_logs","description":"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."},{"name":"flux_get_app_stats","description":"CPU, memory and network stats of the containers of an app on one node. Requires the owner key."},{"name":"flux_control_app","description":"restart: restarts containers. redeploy: pulls the image again and recreates containers (hard=true also wipes data). remove: uninstalls from nodes; the registrat"},{"name":"flux_cancel_app","description":"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 "},{"name":"flux_get_network_info","description":"Node counts by tier, current block height, FLUX/USD rate and the deployment payment address."}],"toolCount":15,"toolsHash":"957711db56a0d6649ad9f2ef6d90fe020e467de81d7a33fc6f34884baac1b0ee","serverName":"flux-cloud","capabilities":["resources","prompts","tools"],"serverVersion":"0.2.2","protocolVersion":"2025-06-18"}},{"at":"2026-10-12T10:24:27.041Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":147,"error":null,"detail":{"tools":[{"name":"flux_get_identity","description":"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. "},{"name":"flux_generate_keys","description":"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 th"},{"name":"flux_get_pricing","description":"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 "},{"name":"flux_build_spec","description":"Turns images, ports, resources and a term into a complete, correctly formatted v8 specification, with public ports auto-picked and data replication enabled. Ret"},{"name":"flux_validate_spec","description":"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 "},{"name":"flux_quote_app","description":"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 t"},{"name":"flux_deploy_app","description":"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 addre"},{"name":"flux_wait_for_app","description":"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 acce"},{"name":"flux_get_app","description":"Looks up any app on the network by name and returns its published specification, expiry, running instances and URLs."},{"name":"flux_list_my_apps","description":"Lists every app registered by the owner (or a given Flux ID) with expiry and instance counts."},{"name":"flux_get_app_logs","description":"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."},{"name":"flux_get_app_stats","description":"CPU, memory and network stats of the containers of an app on one node. Requires the owner key."},{"name":"flux_control_app","description":"restart: restarts containers. redeploy: pulls the image again and recreates containers (hard=true also wipes data). remove: uninstalls from nodes; the registrat"},{"name":"flux_cancel_app","description":"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 "},{"name":"flux_get_network_info","description":"Node counts by tier, current block height, FLUX/USD rate and the deployment payment address."}],"toolCount":15,"toolsHash":"957711db56a0d6649ad9f2ef6d90fe020e467de81d7a33fc6f34884baac1b0ee","serverName":"flux-cloud","capabilities":["resources","prompts","tools"],"serverVersion":"0.2.2","protocolVersion":"2025-06-18"}},{"at":"2026-10-12T04:27:26.501Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":284,"error":null,"detail":{"tools":[{"name":"flux_get_identity","description":"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. "},{"name":"flux_generate_keys","description":"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 th"},{"name":"flux_get_pricing","description":"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 "},{"name":"flux_build_spec","description":"Turns images, ports, resources and a term into a complete, correctly formatted v8 specification, with public ports auto-picked and data replication enabled. Ret"},{"name":"flux_validate_spec","description":"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 "},{"name":"flux_quote_app","description":"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 t"},{"name":"flux_deploy_app","description":"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 addre"},{"name":"flux_wait_for_app","description":"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 acce"},{"name":"flux_get_app","description":"Looks up any app on the network by name and returns its published specification, expiry, running instances and URLs."},{"name":"flux_list_my_apps","description":"Lists every app registered by the owner (or a given Flux ID) with expiry and instance counts."},{"name":"flux_get_app_logs","description":"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."},{"name":"flux_get_app_stats","description":"CPU, memory and network stats of the containers of an app on one node. Requires the owner key."},{"name":"flux_control_app","description":"restart: restarts containers. redeploy: pulls the image again and recreates containers (hard=true also wipes data). remove: uninstalls from nodes; the registrat"},{"name":"flux_cancel_app","description":"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 "},{"name":"flux_get_network_info","description":"Node counts by tier, current block height, FLUX/USD rate and the deployment payment address."}],"toolCount":15,"toolsHash":"957711db56a0d6649ad9f2ef6d90fe020e467de81d7a33fc6f34884baac1b0ee","serverName":"flux-cloud","capabilities":["resources","prompts","tools"],"serverVersion":"0.2.2","protocolVersion":"2025-06-18"}},{"at":"2026-10-11T21:24:38.742Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":1129,"error":null,"detail":{"tools":[{"name":"flux_get_identity","description":"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. "},{"name":"flux_generate_keys","description":"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 th"},{"name":"flux_get_pricing","description":"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 "},{"name":"flux_build_spec","description":"Turns images, ports, resources and a term into a complete, correctly formatted v8 specification, with public ports auto-picked and data replication enabled. Ret"},{"name":"flux_validate_spec","description":"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 "},{"name":"flux_quote_app","description":"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 t"},{"name":"flux_deploy_app","description":"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 addre"},{"name":"flux_wait_for_app","description":"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 acce"},{"name":"flux_get_app","description":"Looks up any app on the network by name and returns its published specification, expiry, running instances and URLs."},{"name":"flux_list_my_apps","description":"Lists every app registered by the owner (or a given Flux ID) with expiry and instance counts."},{"name":"flux_get_app_logs","description":"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."},{"name":"flux_get_app_stats","description":"CPU, memory and network stats of the containers of an app on one node. Requires the owner key."},{"name":"flux_control_app","description":"restart: restarts containers. redeploy: pulls the image again and recreates containers (hard=true also wipes data). remove: uninstalls from nodes; the registrat"},{"name":"flux_cancel_app","description":"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 "},{"name":"flux_get_network_info","description":"Node counts by tier, current block height, FLUX/USD rate and the deployment payment address."}],"toolCount":15,"toolsHash":"957711db56a0d6649ad9f2ef6d90fe020e467de81d7a33fc6f34884baac1b0ee","serverName":"flux-cloud","capabilities":["resources","prompts","tools"],"serverVersion":"0.2.2","protocolVersion":"2025-06-18"}},{"at":"2026-10-11T14:25:38.648Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":1132,"error":null,"detail":{"tools":[{"name":"flux_get_identity","description":"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. "},{"name":"flux_generate_keys","description":"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 th"},{"name":"flux_get_pricing","description":"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 "},{"name":"flux_build_spec","description":"Turns images, ports, resources and a term into a complete, correctly formatted v8 specification, with public ports auto-picked and data replication enabled. Ret"},{"name":"flux_validate_spec","description":"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 "},{"name":"flux_quote_app","description":"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 t"},{"name":"flux_deploy_app","description":"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 addre"},{"name":"flux_wait_for_app","description":"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 acce"},{"name":"flux_get_app","description":"Looks up any app on the network by name and returns its published specification, expiry, running instances and URLs."},{"name":"flux_list_my_apps","description":"Lists every app registered by the owner (or a given Flux ID) with expiry and instance counts."},{"name":"flux_get_app_logs","description":"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."},{"name":"flux_get_app_stats","description":"CPU, memory and network stats of the containers of an app on one node. Requires the owner key."},{"name":"flux_control_app","description":"restart: restarts containers. redeploy: pulls the image again and recreates containers (hard=true also wipes data). remove: uninstalls from nodes; the registrat"},{"name":"flux_cancel_app","description":"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 "},{"name":"flux_get_network_info","description":"Node counts by tier, current block height, FLUX/USD rate and the deployment payment address."}],"toolCount":15,"toolsHash":"957711db56a0d6649ad9f2ef6d90fe020e467de81d7a33fc6f34884baac1b0ee","serverName":"flux-cloud","capabilities":["resources","prompts","tools"],"serverVersion":"0.2.2","protocolVersion":"2025-06-18"}},{"at":"2026-10-11T07:22:13.243Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":1114,"error":null,"detail":{"tools":[{"name":"flux_get_identity","description":"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. "},{"name":"flux_generate_keys","description":"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 th"},{"name":"flux_get_pricing","description":"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 "},{"name":"flux_build_spec","description":"Turns images, ports, resources and a term into a complete, correctly formatted v8 specification, with public ports auto-picked and data replication enabled. Ret"},{"name":"flux_validate_spec","description":"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 "},{"name":"flux_quote_app","description":"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 t"},{"name":"flux_deploy_app","description":"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 addre"},{"name":"flux_wait_for_app","description":"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 acce"},{"name":"flux_get_app","description":"Looks up any app on the network by name and returns its published specification, expiry, running instances and URLs."},{"name":"flux_list_my_apps","description":"Lists every app registered by the owner (or a given Flux ID) with expiry and instance counts."},{"name":"flux_get_app_logs","description":"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."},{"name":"flux_get_app_stats","description":"CPU, memory and network stats of the containers of an app on one node. Requires the owner key."},{"name":"flux_control_app","description":"restart: restarts containers. redeploy: pulls the image again and recreates containers (hard=true also wipes data). remove: uninstalls from nodes; the registrat"},{"name":"flux_cancel_app","description":"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 "},{"name":"flux_get_network_info","description":"Node counts by tier, current block height, FLUX/USD rate and the deployment payment address."}],"toolCount":15,"toolsHash":"957711db56a0d6649ad9f2ef6d90fe020e467de81d7a33fc6f34884baac1b0ee","serverName":"flux-cloud","capabilities":["resources","prompts","tools"],"serverVersion":"0.2.2","protocolVersion":"2025-06-18"}},{"at":"2026-10-11T00:26:18.039Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":125,"error":null,"detail":{"tools":[{"name":"flux_get_identity","description":"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. "},{"name":"flux_generate_keys","description":"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 th"},{"name":"flux_get_pricing","description":"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 "},{"name":"flux_build_spec","description":"Turns images, ports, resources and a term into a complete, correctly formatted v8 specification, with public ports auto-picked and data replication enabled. Ret"},{"name":"flux_validate_spec","description":"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 "},{"name":"flux_quote_app","description":"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 t"},{"name":"flux_deploy_app","description":"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 addre"},{"name":"flux_wait_for_app","description":"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 acce"},{"name":"flux_get_app","description":"Looks up any app on the network by name and returns its published specification, expiry, running instances and URLs."},{"name":"flux_list_my_apps","description":"Lists every app registered by the owner (or a given Flux ID) with expiry and instance counts."},{"name":"flux_get_app_logs","description":"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."},{"name":"flux_get_app_stats","description":"CPU, memory and network stats of the containers of an app on one node. Requires the owner key."},{"name":"flux_control_app","description":"restart: restarts containers. redeploy: pulls the image again and recreates containers (hard=true also wipes data). remove: uninstalls from nodes; the registrat"},{"name":"flux_cancel_app","description":"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 "},{"name":"flux_get_network_info","description":"Node counts by tier, current block height, FLUX/USD rate and the deployment payment address."}],"toolCount":15,"toolsHash":"957711db56a0d6649ad9f2ef6d90fe020e467de81d7a33fc6f34884baac1b0ee","serverName":"flux-cloud","capabilities":["resources","prompts","tools"],"serverVersion":"0.2.2","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T17:28:12.282Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":1259,"error":null,"detail":{"tools":[{"name":"flux_get_identity","description":"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. "},{"name":"flux_generate_keys","description":"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 th"},{"name":"flux_get_pricing","description":"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 "},{"name":"flux_build_spec","description":"Turns images, ports, resources and a term into a complete, correctly formatted v8 specification, with public ports auto-picked and data replication enabled. Ret"},{"name":"flux_validate_spec","description":"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 "},{"name":"flux_quote_app","description":"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 t"},{"name":"flux_deploy_app","description":"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 addre"},{"name":"flux_wait_for_app","description":"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 acce"},{"name":"flux_get_app","description":"Looks up any app on the network by name and returns its published specification, expiry, running instances and URLs."},{"name":"flux_list_my_apps","description":"Lists every app registered by the owner (or a given Flux ID) with expiry and instance counts."},{"name":"flux_get_app_logs","description":"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."},{"name":"flux_get_app_stats","description":"CPU, memory and network stats of the containers of an app on one node. Requires the owner key."},{"name":"flux_control_app","description":"restart: restarts containers. redeploy: pulls the image again and recreates containers (hard=true also wipes data). remove: uninstalls from nodes; the registrat"},{"name":"flux_cancel_app","description":"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 "},{"name":"flux_get_network_info","description":"Node counts by tier, current block height, FLUX/USD rate and the deployment payment address."}],"toolCount":15,"toolsHash":"957711db56a0d6649ad9f2ef6d90fe020e467de81d7a33fc6f34884baac1b0ee","serverName":"flux-cloud","capabilities":["resources","prompts","tools"],"serverVersion":"0.2.2","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T10:29:02.456Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":156,"error":null,"detail":{"tools":[{"name":"flux_get_identity","description":"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. "},{"name":"flux_generate_keys","description":"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 th"},{"name":"flux_get_pricing","description":"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 "},{"name":"flux_build_spec","description":"Turns images, ports, resources and a term into a complete, correctly formatted v8 specification, with public ports auto-picked and data replication enabled. Ret"},{"name":"flux_validate_spec","description":"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 "},{"name":"flux_quote_app","description":"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 t"},{"name":"flux_deploy_app","description":"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 addre"},{"name":"flux_wait_for_app","description":"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 acce"},{"name":"flux_get_app","description":"Looks up any app on the network by name and returns its published specification, expiry, running instances and URLs."},{"name":"flux_list_my_apps","description":"Lists every app registered by the owner (or a given Flux ID) with expiry and instance counts."},{"name":"flux_get_app_logs","description":"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."},{"name":"flux_get_app_stats","description":"CPU, memory and network stats of the containers of an app on one node. Requires the owner key."},{"name":"flux_control_app","description":"restart: restarts containers. redeploy: pulls the image again and recreates containers (hard=true also wipes data). remove: uninstalls from nodes; the registrat"},{"name":"flux_cancel_app","description":"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 "},{"name":"flux_get_network_info","description":"Node counts by tier, current block height, FLUX/USD rate and the deployment payment address."}],"toolCount":15,"toolsHash":"957711db56a0d6649ad9f2ef6d90fe020e467de81d7a33fc6f34884baac1b0ee","serverName":"flux-cloud","capabilities":["resources","prompts","tools"],"serverVersion":"0.2.2","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T04:31:35.274Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":1122,"error":null,"detail":{"tools":[{"name":"flux_get_identity","description":"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. "},{"name":"flux_generate_keys","description":"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 th"},{"name":"flux_get_pricing","description":"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 "},{"name":"flux_build_spec","description":"Turns images, ports, resources and a term into a complete, correctly formatted v8 specification, with public ports auto-picked and data replication enabled. Ret"},{"name":"flux_validate_spec","description":"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 "},{"name":"flux_quote_app","description":"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 t"},{"name":"flux_deploy_app","description":"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 addre"},{"name":"flux_wait_for_app","description":"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 acce"},{"name":"flux_get_app","description":"Looks up any app on the network by name and returns its published specification, expiry, running instances and URLs."},{"name":"flux_list_my_apps","description":"Lists every app registered by the owner (or a given Flux ID) with expiry and instance counts."},{"name":"flux_get_app_logs","description":"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."},{"name":"flux_get_app_stats","description":"CPU, memory and network stats of the containers of an app on one node. Requires the owner key."},{"name":"flux_control_app","description":"restart: restarts containers. redeploy: pulls the image again and recreates containers (hard=true also wipes data). remove: uninstalls from nodes; the registrat"},{"name":"flux_cancel_app","description":"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 "},{"name":"flux_get_network_info","description":"Node counts by tier, current block height, FLUX/USD rate and the deployment payment address."}],"toolCount":15,"toolsHash":"957711db56a0d6649ad9f2ef6d90fe020e467de81d7a33fc6f34884baac1b0ee","serverName":"flux-cloud","capabilities":["resources","prompts","tools"],"serverVersion":"0.2.2","protocolVersion":"2025-06-18"}}],"tools":[{"name":"flux_get_identity","description":"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. "},{"name":"flux_generate_keys","description":"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 th"},{"name":"flux_get_pricing","description":"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 "},{"name":"flux_build_spec","description":"Turns images, ports, resources and a term into a complete, correctly formatted v8 specification, with public ports auto-picked and data replication enabled. Ret"},{"name":"flux_validate_spec","description":"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 "},{"name":"flux_quote_app","description":"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 t"},{"name":"flux_deploy_app","description":"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 addre"},{"name":"flux_wait_for_app","description":"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 acce"},{"name":"flux_get_app","description":"Looks up any app on the network by name and returns its published specification, expiry, running instances and URLs."},{"name":"flux_list_my_apps","description":"Lists every app registered by the owner (or a given Flux ID) with expiry and instance counts."},{"name":"flux_get_app_logs","description":"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."},{"name":"flux_get_app_stats","description":"CPU, memory and network stats of the containers of an app on one node. Requires the owner key."},{"name":"flux_control_app","description":"restart: restarts containers. redeploy: pulls the image again and recreates containers (hard=true also wipes data). remove: uninstalls from nodes; the registrat"},{"name":"flux_cancel_app","description":"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 "},{"name":"flux_get_network_info","description":"Node counts by tier, current block height, FLUX/USD rate and the deployment payment address."}],"package":{"name":"@runonflux/flux-cloud-mcp","registry":"npm","observedAt":"2026-10-12T16:35:55.323Z","publishedAt":"2026-09-13T07:13:31.605Z","latestVersion":"0.2.7","weeklyDownloads":48},"toolSurface":{"id":"ts_hdcngsr3gz2c","endpointId":"ep_u3mdvhc8w46b","hash":"957711db56a0d6649ad9f2ef6d90fe020e467de81d7a33fc6f34884baac1b0ee","toolCount":15,"serverName":"flux-cloud","serverVersion":"0.2.2","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-14T08:26:38.453Z","lastSeenAt":"2026-10-12T16:34:04.304Z","observations":106,"toolNames":["flux_get_identity","flux_generate_keys","flux_get_pricing","flux_build_spec","flux_validate_spec","flux_quote_app","flux_deploy_app","flux_wait_for_app","flux_get_app","flux_list_my_apps","flux_get_app_logs","flux_get_app_stats","flux_control_app","flux_cancel_app","flux_get_network_info"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_u3mdvhc8w46b","url":"https://mcp.runonflux.com/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-10T17:28:12.294Z","auth":{"observedAt":"2026-10-10T17:28:12.399Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-10T17:28:12.413Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"mcp.runonflux.com","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-09-12T08:34:13.000Z","validTo":"2026-12-11T09:34:08.000Z","daysToExpiry":59,"sanCount":1,"fingerprint256":"66:C7:4D:FC:EC:A9:DA:8C:94:B2:E6:93:8F:BB:5F:83:C2:84:51:C0:79:A3:84:18:B0:16:39:05:98:2E:36:CE"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.RunOnFlux/flux-cloud-mcp","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.RunOnFlux%2Fflux-cloud-mcp","firstSeenAt":"2026-09-14T08:19:25.041Z","fetchedAt":"2026-10-10T00:19:46.466Z","normalizedAt":"2026-10-10T00:19:46.466Z"},{"source":"npm","key":"@runonflux/flux-cloud-mcp","url":"https://www.npmjs.com/package/@runonflux/flux-cloud-mcp","firstSeenAt":"2026-09-13T09:17:53.389Z","fetchedAt":"2026-10-12T16:22:10.767Z","normalizedAt":"2026-10-12T16:22:10.767Z"}]},"firstSeenAt":"2026-09-13T09:17:53.389Z","updatedAt":"2026-10-12T16:35:55.323Z"}