{
  "schemaVersion": "1.0",
  "item": {
    "slug": "bluepages",
    "name": "Bluepages",
    "source": "tencent",
    "type": "skill",
    "category": "内容创作",
    "sourceUrl": "https://clawhub.ai/jesse-pallok/bluepages",
    "canonicalUrl": "https://clawhub.ai/jesse-pallok/bluepages",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/bluepages",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=bluepages",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.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-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.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/bluepages"
    },
    "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/bluepages",
    "agentPageUrl": "https://openagent3.xyz/skills/bluepages/agent",
    "manifestUrl": "https://openagent3.xyz/skills/bluepages/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/bluepages/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": "Bluepages",
        "body": "800K+ verified Ethereum address <> Twitter/X mappings, plus Farcaster."
      },
      {
        "title": "Setup",
        "body": "Requires the Bluepages MCP server: npx -y github:bluepagesdoteth/bluepages-mcp\nor direct API calls (see below). The MCP server is the recommended way to use Bluepages."
      },
      {
        "title": "Authentication",
        "body": "Requires one of these env vars:\n\nBLUEPAGES_API_KEY (recommended) — 20% cheaper, 2x rate limits.\nPRIVATE_KEY — Ethereum private key for x402 pay-per-request (USDC on Base).\n\nSecurity note: Never use a main wallet key. Use a dedicated, funded-only-as-needed agent wallet if providing PRIVATE_KEY.\n\nWith a private key, you can either pay per request via x402 or purchase a BLUEPAGES_API_KEY using the get_api_key and purchase_credits MCP tools.\n\nWithout a private key, the user must get an API key at bluepages.fyi/api-keys and set BLUEPAGES_API_KEY."
      },
      {
        "title": "Tools (quick reference)",
        "body": "ToolCostDescriptioncheck_address1 credit ($0.001)Check if address has datacheck_twitter1 credit ($0.001)Check if Twitter handle has dataget_data_for_address50 credits ($0.05)Full identity data for address (free if not found)get_data_for_twitter50 credits ($0.05)Full identity data for handle (free if not found)batch_check40 credits ($0.04)Check up to 50 items at oncebatch_get_data40 credits/found itemData for up to 50 items (x402: $2.00 flat/batch)batch_check_streamingsame as batch_checkFor large lists (100+), shows progressbatch_get_data_streamingsame as batch_get_dataFor large lists (100+), shows progresscheck_creditsfreeCheck remaining credits (API key only)set_credit_alertfreeSet low-credit warning threshold (API key only)get_api_keyfreeGet/create API key via wallet signaturepurchase_credits$5–$600 USDCBuy credits via x402 (PRIVATE_KEY only)"
      },
      {
        "title": "Input format",
        "body": "Addresses: 0x-prefixed, 42-char hex. Case-insensitive.\nTwitter handles: With or without @."
      },
      {
        "title": "Cost-saving workflow",
        "body": "Single lookups: check_address/check_twitter first (1 credit), then get_data_* only if found (50 credits). Skipping the check wastes credits on misses.\nBatch lookups: Always two-phase — batch_check then batch_get_data on found items only. This saves ~90% vs fetching everything blind.\nLarge lists (100+): Use _streaming variants for progress updates."
      },
      {
        "title": "Rate limits",
        "body": "API Key: 60 req/min\nx402: 30 req/min\nBatch: max 50 items per request"
      },
      {
        "title": "Alternative: Direct HTTP API",
        "body": "If MCP is unavailable, call the API directly. Auth depends on your setup:\n\nAPI key: pass X-API-KEY header\nPrivate key (x402): endpoints return a 402 with payment details; sign and resend with X-PAYMENT header\n\n# With API key\ncurl \"https://bluepages.fyi/check?address=0x...\" -H \"X-API-KEY: your-key\"\ncurl \"https://bluepages.fyi/data?address=0x...\" -H \"X-API-KEY: your-key\"\n\n# Batch check\ncurl -X POST \"https://bluepages.fyi/batch/check\" \\\n  -H \"X-API-KEY: your-key\" -H \"Content-Type: application/json\" \\\n  -d '{\"addresses\": [\"0x...\", \"0x...\"]}'\n\nFull API docs: bluepages.fyi/docs"
      }
    ],
    "body": "Bluepages\n\n800K+ verified Ethereum address <> Twitter/X mappings, plus Farcaster.\n\nSetup\n\nRequires the Bluepages MCP server: npx -y github:bluepagesdoteth/bluepages-mcp or direct API calls (see below). The MCP server is the recommended way to use Bluepages.\n\nAuthentication\n\nRequires one of these env vars:\n\nBLUEPAGES_API_KEY (recommended) — 20% cheaper, 2x rate limits.\nPRIVATE_KEY — Ethereum private key for x402 pay-per-request (USDC on Base).\n\nSecurity note: Never use a main wallet key. Use a dedicated, funded-only-as-needed agent wallet if providing PRIVATE_KEY.\n\nWith a private key, you can either pay per request via x402 or purchase a BLUEPAGES_API_KEY using the get_api_key and purchase_credits MCP tools.\n\nWithout a private key, the user must get an API key at bluepages.fyi/api-keys and set BLUEPAGES_API_KEY.\n\nTools (quick reference)\nTool\tCost\tDescription\ncheck_address\t1 credit ($0.001)\tCheck if address has data\ncheck_twitter\t1 credit ($0.001)\tCheck if Twitter handle has data\nget_data_for_address\t50 credits ($0.05)\tFull identity data for address (free if not found)\nget_data_for_twitter\t50 credits ($0.05)\tFull identity data for handle (free if not found)\nbatch_check\t40 credits ($0.04)\tCheck up to 50 items at once\nbatch_get_data\t40 credits/found item\tData for up to 50 items (x402: $2.00 flat/batch)\nbatch_check_streaming\tsame as batch_check\tFor large lists (100+), shows progress\nbatch_get_data_streaming\tsame as batch_get_data\tFor large lists (100+), shows progress\ncheck_credits\tfree\tCheck remaining credits (API key only)\nset_credit_alert\tfree\tSet low-credit warning threshold (API key only)\nget_api_key\tfree\tGet/create API key via wallet signature\npurchase_credits\t$5–$600 USDC\tBuy credits via x402 (PRIVATE_KEY only)\nInput format\nAddresses: 0x-prefixed, 42-char hex. Case-insensitive.\nTwitter handles: With or without @.\nCost-saving workflow\nSingle lookups: check_address/check_twitter first (1 credit), then get_data_* only if found (50 credits). Skipping the check wastes credits on misses.\nBatch lookups: Always two-phase — batch_check then batch_get_data on found items only. This saves ~90% vs fetching everything blind.\nLarge lists (100+): Use _streaming variants for progress updates.\nRate limits\nAPI Key: 60 req/min\nx402: 30 req/min\nBatch: max 50 items per request\nAlternative: Direct HTTP API\n\nIf MCP is unavailable, call the API directly. Auth depends on your setup:\n\nAPI key: pass X-API-KEY header\nPrivate key (x402): endpoints return a 402 with payment details; sign and resend with X-PAYMENT header\n# With API key\ncurl \"https://bluepages.fyi/check?address=0x...\" -H \"X-API-KEY: your-key\"\ncurl \"https://bluepages.fyi/data?address=0x...\" -H \"X-API-KEY: your-key\"\n\n# Batch check\ncurl -X POST \"https://bluepages.fyi/batch/check\" \\\n  -H \"X-API-KEY: your-key\" -H \"Content-Type: application/json\" \\\n  -d '{\"addresses\": [\"0x...\", \"0x...\"]}'\n\n\nFull API docs: bluepages.fyi/docs"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/jesse-pallok/bluepages",
    "publisherUrl": "https://clawhub.ai/jesse-pallok/bluepages",
    "owner": "jesse-pallok",
    "version": "1.0.2",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/bluepages",
    "downloadUrl": "https://openagent3.xyz/downloads/bluepages",
    "agentUrl": "https://openagent3.xyz/skills/bluepages/agent",
    "manifestUrl": "https://openagent3.xyz/skills/bluepages/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/bluepages/agent.md"
  }
}