{
  "schemaVersion": "1.0",
  "item": {
    "slug": "moneydevkit",
    "name": "moneydevkit",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/satbot-mdk/moneydevkit",
    "canonicalUrl": "https://clawhub.ai/satbot-mdk/moneydevkit",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/moneydevkit",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=moneydevkit",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "references/nextjs.md",
      "references/replit.md"
    ],
    "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",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/moneydevkit"
    },
    "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/moneydevkit",
    "agentPageUrl": "https://openagent3.xyz/skills/moneydevkit/agent",
    "manifestUrl": "https://openagent3.xyz/skills/moneydevkit/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/moneydevkit/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": "moneydevkit",
        "body": "Add payments to any web app in under 5 minutes. Two supported frameworks: Next.js and Replit (Express + Vite)."
      },
      {
        "title": "1. Get credentials",
        "body": "Option A — MCP:\n\nThere are two MCP servers:\n\nUnauthenticated (/mcp/) — for creating a new account and minting credentials\nAuthenticated (/mcp/account/) — for managing your account after setup (requires OAuth)\n\nTo create a new account:\n\nclaude mcp add moneydevkit --transport http https://mcp.moneydevkit.com/mcp/\n\nAfter you have credentials, switch to the authenticated MCP for full account control:\n\nclaude mcp add moneydevkit --transport http https://mcp.moneydevkit.com/mcp/account/\n\nOption B — CLI:\n\nnpx @moneydevkit/create\n\nOption C — Dashboard:\nSign up at moneydevkit.com and create an app.\n\nAll options produce two values:\n\nMDK_ACCESS_TOKEN — API key\nMDK_MNEMONIC — wallet seed phrase\n\nAdd both to .env (or Replit Secrets, Vercel env vars, etc.). Both are required."
      },
      {
        "title": "2. Pick a framework and follow its guide",
        "body": "Next.js → read references/nextjs.md\nReplit (Express + Vite) → read references/replit.md"
      },
      {
        "title": "3. Create products (optional)",
        "body": "For fixed catalog items, create products via the dashboard or MCP:\n\nmcporter call moneydevkit.create-product name=\"T-Shirt\" priceAmount=2500 currency=USD\n\nThen use type: 'PRODUCTS' checkouts with the product ID.\n\nFor dynamic amounts (tips, donations, invoices), skip products and use type: 'AMOUNT' directly."
      },
      {
        "title": "4. Deploy",
        "body": "Deploy to Vercel (Next.js) or Replit. Ensure MDK_ACCESS_TOKEN and MDK_MNEMONIC are set in the production environment.\n\n⚠️ Use printf not echo when piping env vars — trailing newlines cause silent auth failures."
      },
      {
        "title": "Checkout types",
        "body": "TypeUse caseRequired fieldsAMOUNTDynamic amounts, tips, invoicesamount, currencyPRODUCTSSell dashboard productsproduct (product ID)"
      },
      {
        "title": "Pricing options",
        "body": "Fixed price — set specific amount (USD cents or whole sats)\nPay what you want — customer chooses amount (set amountType: 'CUSTOM' on product)"
      },
      {
        "title": "Currency",
        "body": "USD — amounts in cents (e.g. 500 = $5.00)\nSAT — amounts in whole satoshis"
      },
      {
        "title": "Customers",
        "body": "Collect customer info to track purchases and enable refunds:\n\nawait createCheckout({\n  // ...checkout fields\n  customer: { email: 'jane@example.com', name: 'Jane', externalId: 'user-123' },\n  requireCustomerData: ['email', 'name'] // show form for missing fields\n})"
      },
      {
        "title": "MCP tools",
        "body": "If the moneydevkit MCP server is connected (authenticated), these tools are available:\n\ncreate-app / list-apps / update-app / rotate-api-key — manage apps\ncreate-product / list-products / get-product / update-product / delete-product\ncreate-customer / list-customers / get-customer / update-customer / delete-customer\nlist-checkouts / get-checkout — view checkout sessions\nlist-orders / get-order — view completed payments\nsearch-docs — search moneydevkit documentation"
      },
      {
        "title": "Security",
        "body": "⚠️ MDK_MNEMONIC is a wallet seed phrase — treat it like a private key.\n\nNever commit it to git or share in chat messages\nNever log it in application output or error handlers\nUse environment variables or a secrets manager (Vercel env vars, Replit Secrets, AWS Secrets Manager, etc.)\nFor production: prefer separate apps with limited-scope keys rather than reusing one mnemonic across projects\nThe mnemonic controls the Lightning wallet that receives payments — if compromised, funds can be stolen\nTest with signet/testnet credentials first before using mainnet\n\nMDK_ACCESS_TOKEN is an API key scoped to your app. Rotate it via the dashboard or MCP (rotate-api-key) if compromised.\n\nExternal endpoints used by this skill:\n\nmcp.moneydevkit.com — MCP server for account management (HTTPS, OAuth)\ndocs.moneydevkit.com — documentation\n\nSource code: @moneydevkit on npm · docs.moneydevkit.com"
      },
      {
        "title": "Docs",
        "body": "Full documentation: docs.moneydevkit.com"
      }
    ],
    "body": "moneydevkit\n\nAdd payments to any web app in under 5 minutes. Two supported frameworks: Next.js and Replit (Express + Vite).\n\nWorkflow\n1. Get credentials\n\nOption A — MCP:\n\nThere are two MCP servers:\n\nUnauthenticated (/mcp/) — for creating a new account and minting credentials\nAuthenticated (/mcp/account/) — for managing your account after setup (requires OAuth)\n\nTo create a new account:\n\nclaude mcp add moneydevkit --transport http https://mcp.moneydevkit.com/mcp/\n\n\nAfter you have credentials, switch to the authenticated MCP for full account control:\n\nclaude mcp add moneydevkit --transport http https://mcp.moneydevkit.com/mcp/account/\n\n\nOption B — CLI:\n\nnpx @moneydevkit/create\n\n\nOption C — Dashboard: Sign up at moneydevkit.com and create an app.\n\nAll options produce two values:\n\nMDK_ACCESS_TOKEN — API key\nMDK_MNEMONIC — wallet seed phrase\n\nAdd both to .env (or Replit Secrets, Vercel env vars, etc.). Both are required.\n\n2. Pick a framework and follow its guide\nNext.js → read references/nextjs.md\nReplit (Express + Vite) → read references/replit.md\n3. Create products (optional)\n\nFor fixed catalog items, create products via the dashboard or MCP:\n\nmcporter call moneydevkit.create-product name=\"T-Shirt\" priceAmount=2500 currency=USD\n\n\nThen use type: 'PRODUCTS' checkouts with the product ID.\n\nFor dynamic amounts (tips, donations, invoices), skip products and use type: 'AMOUNT' directly.\n\n4. Deploy\n\nDeploy to Vercel (Next.js) or Replit. Ensure MDK_ACCESS_TOKEN and MDK_MNEMONIC are set in the production environment.\n\n⚠️ Use printf not echo when piping env vars — trailing newlines cause silent auth failures.\n\nCheckout types\nType\tUse case\tRequired fields\nAMOUNT\tDynamic amounts, tips, invoices\tamount, currency\nPRODUCTS\tSell dashboard products\tproduct (product ID)\nPricing options\nFixed price — set specific amount (USD cents or whole sats)\nPay what you want — customer chooses amount (set amountType: 'CUSTOM' on product)\nCurrency\nUSD — amounts in cents (e.g. 500 = $5.00)\nSAT — amounts in whole satoshis\nCustomers\n\nCollect customer info to track purchases and enable refunds:\n\nawait createCheckout({\n  // ...checkout fields\n  customer: { email: 'jane@example.com', name: 'Jane', externalId: 'user-123' },\n  requireCustomerData: ['email', 'name'] // show form for missing fields\n})\n\nMCP tools\n\nIf the moneydevkit MCP server is connected (authenticated), these tools are available:\n\ncreate-app / list-apps / update-app / rotate-api-key — manage apps\ncreate-product / list-products / get-product / update-product / delete-product\ncreate-customer / list-customers / get-customer / update-customer / delete-customer\nlist-checkouts / get-checkout — view checkout sessions\nlist-orders / get-order — view completed payments\nsearch-docs — search moneydevkit documentation\nSecurity\n\n⚠️ MDK_MNEMONIC is a wallet seed phrase — treat it like a private key.\n\nNever commit it to git or share in chat messages\nNever log it in application output or error handlers\nUse environment variables or a secrets manager (Vercel env vars, Replit Secrets, AWS Secrets Manager, etc.)\nFor production: prefer separate apps with limited-scope keys rather than reusing one mnemonic across projects\nThe mnemonic controls the Lightning wallet that receives payments — if compromised, funds can be stolen\nTest with signet/testnet credentials first before using mainnet\n\nMDK_ACCESS_TOKEN is an API key scoped to your app. Rotate it via the dashboard or MCP (rotate-api-key) if compromised.\n\nExternal endpoints used by this skill:\n\nmcp.moneydevkit.com — MCP server for account management (HTTPS, OAuth)\ndocs.moneydevkit.com — documentation\n\nSource code: @moneydevkit on npm · docs.moneydevkit.com\n\nDocs\n\nFull documentation: docs.moneydevkit.com"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/satbot-mdk/moneydevkit",
    "publisherUrl": "https://clawhub.ai/satbot-mdk/moneydevkit",
    "owner": "satbot-mdk",
    "version": "0.2.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/moneydevkit",
    "downloadUrl": "https://openagent3.xyz/downloads/moneydevkit",
    "agentUrl": "https://openagent3.xyz/skills/moneydevkit/agent",
    "manifestUrl": "https://openagent3.xyz/skills/moneydevkit/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/moneydevkit/agent.md"
  }
}