{
  "schemaVersion": "1.0",
  "item": {
    "slug": "fluora-setup",
    "name": "Fluora Setup",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/chetan-guevara/fluora-setup",
    "canonicalUrl": "https://clawhub.ai/chetan-guevara/fluora-setup",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/fluora-setup",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=fluora-setup",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "_meta.json",
      "UPDATE-SUMMARY.md",
      "package.json",
      "SKILL.md",
      "setup.js"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "slug": "fluora-setup",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-03T09:08:59.007Z",
      "expiresAt": "2026-05-10T09:08:59.007Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=fluora-setup",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=fluora-setup",
        "contentDisposition": "attachment; filename=\"fluora-setup-1.2.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "fluora-setup"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/fluora-setup"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/fluora-setup",
    "agentPageUrl": "https://openagent3.xyz/skills/fluora-setup/agent",
    "manifestUrl": "https://openagent3.xyz/skills/fluora-setup/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/fluora-setup/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Fluora Setup - Interactive Onboarding Wizard (GitHub Version)",
        "body": "Complete setup wizard for accessing the Fluora marketplace. Uses the official GitHub repository for the latest working version."
      },
      {
        "title": "What This Skill Does",
        "body": "Automates the entire Fluora setup process:\n\n✅ Clones fluora-mcp from GitHub (https://github.com/fluora-ai/fluora-mcp)\n✅ Installs dependencies and builds locally\n✅ Generates wallet (auto-creates ~/.fluora/wallets.json)\n✅ Extracts wallet address from private key\n✅ Displays funding instructions\n✅ Configures mcporter with local Fluora registry\n✅ Verifies setup is working"
      },
      {
        "title": "Prerequisites",
        "body": "Node.js 18+\nnpm\ngit\nmcporter installed (optional, will guide if missing)"
      },
      {
        "title": "From OpenClaw Agent",
        "body": "// Run interactive setup\nawait setupFluora();\n\n// With options\nawait setupFluora({\n  skipMcporterConfig: false,\n  fundingAmount: 10 // in USDC\n});"
      },
      {
        "title": "Direct Script Usage",
        "body": "# Interactive setup (recommended)\nnode setup.js\n\n# Skip mcporter config\nnode setup.js --skip-mcporter\n\n# Custom funding amount\nnode setup.js --funding 10"
      },
      {
        "title": "1. Local fluora-mcp Repository",
        "body": "~/.openclaw/workspace/fluora-mcp/\n\nCloned from GitHub and built locally with all dependencies."
      },
      {
        "title": "2. Wallet File",
        "body": "~/.fluora/wallets.json\n\nAuto-generated on first run with structure:\n\n{\n  \"BASE_MAINNET\": {\n    \"privateKey\": \"0x...\"\n  }\n}"
      },
      {
        "title": "3. mcporter Config",
        "body": "~/.openclaw/workspace/config/mcporter.json\n\n(or ~/.mcporter/mcporter.json if workspace config doesn't exist)\n\nAdds Fluora registry pointing to local build:\n\n{\n  \"mcpServers\": {\n    \"fluora-registry\": {\n      \"command\": \"node\",\n      \"args\": [\"/Users/YOUR_USERNAME/.openclaw/workspace/fluora-mcp/build/index.js\"],\n      \"env\": {\n        \"ENABLE_REQUEST_ELICITATION\": \"true\",\n        \"ELICITATION_THRESHOLD\": \"0.01\"\n      }\n    }\n  }\n}\n\nNote: Uses the LOCAL GitHub build, not npx fluora-mcp from npm, because the npm version has a parameter parsing bug."
      },
      {
        "title": "Wallet Funding",
        "body": "The skill will display your wallet address and instructions:\n\nYour Fluora Wallet Address:\n0x1234567890abcdef1234567890abcdef12345678\n\nTo fund your wallet:\n1. Open Coinbase, Binance, or your preferred exchange\n2. Send $5-10 USDC to the address above\n3. **Important:** Select \"Base\" network (NOT Ethereum mainnet)\n4. Wait ~1 minute for confirmation"
      },
      {
        "title": "Network Details",
        "body": "Network: Base (Coinbase L2)\nToken needed: USDC only (for service payments, $5-10 recommended)\nPayments: Handled automatically with USDC, no additional tokens needed"
      },
      {
        "title": "Where to Get USDC on Base",
        "body": "From an exchange:\n\nCoinbase: Withdraw USDC → Select \"Base\" network\nBinance: Withdraw USDC → Select \"Base\" network\nOKX: Similar process\n\nBridge from Ethereum:\n\nhttps://bridge.base.org\nTransfer USDC from Ethereum → Base\n\nBuy directly on Base:\n\nUse Coinbase Wallet or Rainbow Wallet\nBuy USDC directly on Base"
      },
      {
        "title": "Verification",
        "body": "The skill automatically verifies:\n\n✅ fluora-mcp cloned from GitHub\n✅ Dependencies installed\n✅ Build successful\n✅ Wallet file exists\n✅ Private key is valid\n✅ Wallet address derived correctly\n✅ mcporter config is valid JSON\n✅ Fluora registry configured with local path\n\nOptional: Check wallet balance (after funding)"
      },
      {
        "title": "Return Value",
        "body": "{\n  \"success\": true,\n  \"walletAddress\": \"0x...\",\n  \"privateKeyPath\": \"~/.fluora/wallets.json\",\n  \"fluoraPath\": \"~/.openclaw/workspace/fluora-mcp\",\n  \"mcporterConfigured\": true,\n  \"funded\": false,\n  \"nextSteps\": [\n    \"Fund wallet with $1 USDC on Base\",\n    \"Test with: mcporter call fluora-registry.exploreServices\",\n    \"Start building with workflow-to-monetized-mcp\"\n  ]\n}"
      },
      {
        "title": "Test Your Setup",
        "body": "# List available services\nmcporter call 'fluora-registry.exploreServices()'\n\n# Use a free service (testnet screenshot)\nmcporter call 'fluora-registry.useService' --args '{\n  \"serviceId\": \"zyte-screenshot\",\n  \"serverUrl\": \"https://pi5fcuvxfb.us-west-2.awsapprunner.com\",\n  \"serverId\": \"c2b7baa1-771c-4662-8be4-4fd676168ad6\",\n  \"params\": {\"url\": \"https://example.com\"}\n}'\n\n# Use a paid service (PDF conversion - requires confirmation)\nmcporter call 'fluora-registry.useService' --args '{\n  \"serviceId\": \"pdfshift-convert\",\n  \"serverUrl\": \"https://9krswmmx4a.us-west-2.awsapprunner.com\",\n  \"serverId\": \"c45d3968-0aa1-4d78-a16e-041372110f23\",\n  \"params\": {\"websiteUrl\": \"https://example.com\"}\n}'"
      },
      {
        "title": "Start Building",
        "body": "Now you can use the other Fluora skills:\n\nworkflow-to-monetized-mcp - Generate your own service\nrailway-deploy - Deploy to Railway\nfluora-publish - List on marketplace"
      },
      {
        "title": "\"git clone failed\"",
        "body": "Ensure you have git installed and internet access."
      },
      {
        "title": "\"npm install failed\"",
        "body": "Check Node.js version (18+) and npm is working."
      },
      {
        "title": "\"Build failed\"",
        "body": "Check the error in the build output. Usually dependency issues."
      },
      {
        "title": "\"wallets.json not created\"",
        "body": "Run the local fluora-mcp once manually:\n\ncd ~/.openclaw/workspace/fluora-mcp\nnode build/index.js\n# Press Ctrl+C after it starts"
      },
      {
        "title": "\"Invalid private key\"",
        "body": "The key in ~/.fluora/wallets.json should be 0x-prefixed hex string (66 characters)."
      },
      {
        "title": "\"Wrong network\"",
        "body": "Make sure you're sending USDC on Base network, not Ethereum mainnet or other L2s."
      },
      {
        "title": "\"Still no balance after funding\"",
        "body": "Check transaction on Base block explorer: https://basescan.org\nWait 1-2 minutes for confirmation\nVerify you sent to the correct address\nEnsure you selected Base network (not Ethereum)"
      },
      {
        "title": "Why GitHub Instead of npm?",
        "body": "The npm package (fluora-mcp@0.1.38) has a parameter parsing bug where useService cannot receive parameters correctly. The GitHub repository (v0.1.39+) has the fix.\n\nBug details:\n\nnpm version: Schema definition uses plain object, breaking MCP parameter passing\nGitHub version: Fixed schema definition, all parameters work correctly"
      },
      {
        "title": "Private Key Safety",
        "body": "~/.fluora/wallets.json contains your private key\nKeep this file secure (default permissions: 600)\nNever commit to git\nNever share the private key\nThis wallet is for buying services, not storing large amounts"
      },
      {
        "title": "Best Practices",
        "body": "Fund with small amounts initially $1 USDC\nRotate wallets if compromised\nUse separate wallet for each OpenClaw instance"
      },
      {
        "title": "Setup Costs",
        "body": "fluora-mcp clone: Free\nInitial funding: $1 USDC"
      },
      {
        "title": "Ongoing Costs",
        "body": "Service calls: $0.001-0.20 per call (varies by service)\nPayments: Handled automatically with USDC, no additional fees. Gas fees are covered by the seller"
      },
      {
        "title": "Example Usage",
        "body": "$5 USDC → ~250-5000 calls (depending on service)\nMost calls are $0.001-0.02"
      },
      {
        "title": "Resources",
        "body": "Fluora marketplace: https://fluora.ai\nGitHub repo: https://github.com/fluora-ai/fluora-mcp\nBase network: https://base.org\nBlock explorer: https://basescan.org\nUSDC info: https://www.circle.com/en/usdc"
      }
    ],
    "body": "Fluora Setup - Interactive Onboarding Wizard (GitHub Version)\n\nComplete setup wizard for accessing the Fluora marketplace. Uses the official GitHub repository for the latest working version.\n\nWhat This Skill Does\n\nAutomates the entire Fluora setup process:\n\n✅ Clones fluora-mcp from GitHub (https://github.com/fluora-ai/fluora-mcp)\n✅ Installs dependencies and builds locally\n✅ Generates wallet (auto-creates ~/.fluora/wallets.json)\n✅ Extracts wallet address from private key\n✅ Displays funding instructions\n✅ Configures mcporter with local Fluora registry\n✅ Verifies setup is working\nPrerequisites\nNode.js 18+\nnpm\ngit\nmcporter installed (optional, will guide if missing)\nUsage\nFrom OpenClaw Agent\n// Run interactive setup\nawait setupFluora();\n\n// With options\nawait setupFluora({\n  skipMcporterConfig: false,\n  fundingAmount: 10 // in USDC\n});\n\nDirect Script Usage\n# Interactive setup (recommended)\nnode setup.js\n\n# Skip mcporter config\nnode setup.js --skip-mcporter\n\n# Custom funding amount\nnode setup.js --funding 10\n\nWhat Gets Created/Modified\n1. Local fluora-mcp Repository\n~/.openclaw/workspace/fluora-mcp/\n\n\nCloned from GitHub and built locally with all dependencies.\n\n2. Wallet File\n~/.fluora/wallets.json\n\n\nAuto-generated on first run with structure:\n\n{\n  \"BASE_MAINNET\": {\n    \"privateKey\": \"0x...\"\n  }\n}\n\n3. mcporter Config\n~/.openclaw/workspace/config/mcporter.json\n\n\n(or ~/.mcporter/mcporter.json if workspace config doesn't exist)\n\nAdds Fluora registry pointing to local build:\n\n{\n  \"mcpServers\": {\n    \"fluora-registry\": {\n      \"command\": \"node\",\n      \"args\": [\"/Users/YOUR_USERNAME/.openclaw/workspace/fluora-mcp/build/index.js\"],\n      \"env\": {\n        \"ENABLE_REQUEST_ELICITATION\": \"true\",\n        \"ELICITATION_THRESHOLD\": \"0.01\"\n      }\n    }\n  }\n}\n\n\nNote: Uses the LOCAL GitHub build, not npx fluora-mcp from npm, because the npm version has a parameter parsing bug.\n\nWallet Funding\n\nThe skill will display your wallet address and instructions:\n\nYour Fluora Wallet Address:\n0x1234567890abcdef1234567890abcdef12345678\n\nTo fund your wallet:\n1. Open Coinbase, Binance, or your preferred exchange\n2. Send $5-10 USDC to the address above\n3. **Important:** Select \"Base\" network (NOT Ethereum mainnet)\n4. Wait ~1 minute for confirmation\n\nNetwork Details\nNetwork: Base (Coinbase L2)\nToken needed: USDC only (for service payments, $5-10 recommended)\nPayments: Handled automatically with USDC, no additional tokens needed\nWhere to Get USDC on Base\n\nFrom an exchange:\n\nCoinbase: Withdraw USDC → Select \"Base\" network\nBinance: Withdraw USDC → Select \"Base\" network\nOKX: Similar process\n\nBridge from Ethereum:\n\nhttps://bridge.base.org\nTransfer USDC from Ethereum → Base\n\nBuy directly on Base:\n\nUse Coinbase Wallet or Rainbow Wallet\nBuy USDC directly on Base\nVerification\n\nThe skill automatically verifies:\n\n✅ fluora-mcp cloned from GitHub\n✅ Dependencies installed\n✅ Build successful\n✅ Wallet file exists\n✅ Private key is valid\n✅ Wallet address derived correctly\n✅ mcporter config is valid JSON\n✅ Fluora registry configured with local path\n\nOptional: Check wallet balance (after funding)\n\nReturn Value\n{\n  \"success\": true,\n  \"walletAddress\": \"0x...\",\n  \"privateKeyPath\": \"~/.fluora/wallets.json\",\n  \"fluoraPath\": \"~/.openclaw/workspace/fluora-mcp\",\n  \"mcporterConfigured\": true,\n  \"funded\": false,\n  \"nextSteps\": [\n    \"Fund wallet with $1 USDC on Base\",\n    \"Test with: mcporter call fluora-registry.exploreServices\",\n    \"Start building with workflow-to-monetized-mcp\"\n  ]\n}\n\nAfter Setup\nTest Your Setup\n# List available services\nmcporter call 'fluora-registry.exploreServices()'\n\n# Use a free service (testnet screenshot)\nmcporter call 'fluora-registry.useService' --args '{\n  \"serviceId\": \"zyte-screenshot\",\n  \"serverUrl\": \"https://pi5fcuvxfb.us-west-2.awsapprunner.com\",\n  \"serverId\": \"c2b7baa1-771c-4662-8be4-4fd676168ad6\",\n  \"params\": {\"url\": \"https://example.com\"}\n}'\n\n# Use a paid service (PDF conversion - requires confirmation)\nmcporter call 'fluora-registry.useService' --args '{\n  \"serviceId\": \"pdfshift-convert\",\n  \"serverUrl\": \"https://9krswmmx4a.us-west-2.awsapprunner.com\",\n  \"serverId\": \"c45d3968-0aa1-4d78-a16e-041372110f23\",\n  \"params\": {\"websiteUrl\": \"https://example.com\"}\n}'\n\nStart Building\n\nNow you can use the other Fluora skills:\n\nworkflow-to-monetized-mcp - Generate your own service\nrailway-deploy - Deploy to Railway\nfluora-publish - List on marketplace\nTroubleshooting\n\"git clone failed\"\n\nEnsure you have git installed and internet access.\n\n\"npm install failed\"\n\nCheck Node.js version (18+) and npm is working.\n\n\"Build failed\"\n\nCheck the error in the build output. Usually dependency issues.\n\n\"wallets.json not created\"\n\nRun the local fluora-mcp once manually:\n\ncd ~/.openclaw/workspace/fluora-mcp\nnode build/index.js\n# Press Ctrl+C after it starts\n\n\"Invalid private key\"\n\nThe key in ~/.fluora/wallets.json should be 0x-prefixed hex string (66 characters).\n\n\"Wrong network\"\n\nMake sure you're sending USDC on Base network, not Ethereum mainnet or other L2s.\n\n\"Still no balance after funding\"\nCheck transaction on Base block explorer: https://basescan.org\nWait 1-2 minutes for confirmation\nVerify you sent to the correct address\nEnsure you selected Base network (not Ethereum)\nWhy GitHub Instead of npm?\n\nThe npm package (fluora-mcp@0.1.38) has a parameter parsing bug where useService cannot receive parameters correctly. The GitHub repository (v0.1.39+) has the fix.\n\nBug details:\n\nnpm version: Schema definition uses plain object, breaking MCP parameter passing\nGitHub version: Fixed schema definition, all parameters work correctly\nSecurity Notes\nPrivate Key Safety\n~/.fluora/wallets.json contains your private key\nKeep this file secure (default permissions: 600)\nNever commit to git\nNever share the private key\nThis wallet is for buying services, not storing large amounts\nBest Practices\nFund with small amounts initially $1 USDC\nRotate wallets if compromised\nUse separate wallet for each OpenClaw instance\nCost Summary\nSetup Costs\nfluora-mcp clone: Free\nInitial funding: $1 USDC\nOngoing Costs\nService calls: $0.001-0.20 per call (varies by service)\nPayments: Handled automatically with USDC, no additional fees. Gas fees are covered by the seller\nExample Usage\n$5 USDC → ~250-5000 calls (depending on service)\nMost calls are $0.001-0.02\nResources\nFluora marketplace: https://fluora.ai\nGitHub repo: https://github.com/fluora-ai/fluora-mcp\nBase network: https://base.org\nBlock explorer: https://basescan.org\nUSDC info: https://www.circle.com/en/usdc"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/chetan-guevara/fluora-setup",
    "publisherUrl": "https://clawhub.ai/chetan-guevara/fluora-setup",
    "owner": "chetan-guevara",
    "version": "1.2.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/fluora-setup",
    "downloadUrl": "https://openagent3.xyz/downloads/fluora-setup",
    "agentUrl": "https://openagent3.xyz/skills/fluora-setup/agent",
    "manifestUrl": "https://openagent3.xyz/skills/fluora-setup/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/fluora-setup/agent.md"
  }
}