Skip to content

Bounty Engineer Agent Commerce

by gatoprd · remote · no sign-in to list tools · v1.2.1 · published by GitHub user gatoprd

Remote MCP storefront for agent routing, verification, web extraction and x402-paid tools.

Final · 3Changes · 10

20 tools: 3 do something that can't be undone, 10 change things and 7 only read.

Scanned Oct 21, 2026

4 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http bounty-engineer https://bounty-engineer-x402-prod.onrender.com/mcp

Findings

Matches of fixed checks, with the text they matched.

3 warn1 info
  • The server marks "quote_autonomous_purchase" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "quote_autonomous_purchase" says "purchase": a word that usually means money moves, which cannot be taken back.

    What this check looks for
  • The server marks "paid_funding_rates" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "fetch": a word for reading.

    What this check looks for
  • The server marks "paid_json_contract_check" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "validate": a word for reading.

    What this check looks for
  • The input schema at properties.input.description mentions "credentials".

    Matched text

    inputSchema.properties.input.description: "...er send wallet secrets, private keys or credentials"

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

20 tools

Can't be undone 3Claude Code: ask
  • paid_agent_purchase_firewallEvaluate a proposed agent purchase for hard-budget, duplicate-payment, seller/payTo drift and purchase-safety conditions before execution.No findings

    Why it is in this group

    • The name "paid_agent_purchase_firewall" says "purchase": a word that usually means money moves, which cannot be taken back.
    Description, as the server wrote it
    Evaluate a proposed agent purchase for hard-budget, duplicate-payment, seller/payTo drift and purchase-safety conditions before execution. Native MCP x402. Use get_product_proof for the current exact input schema.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • paid_x402_payment_preflightPreflight an x402 seller/payment contract before an autonomous buyer commits funds; checks payment-path risks without authorizing a purchase.No findings

    Why it is in this group

    • The name "paid_x402_payment_preflight" says "payment": a word that usually means money moves, which cannot be taken back.
    Description, as the server wrote it
    Preflight an x402 seller/payment contract before an autonomous buyer commits funds; checks payment-path risks without authorizing a purchase. Native MCP x402. Use get_product_proof for the current exact input schema.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • quote_autonomous_purchaseGiven an agent goal and hard USD budget, return a buyer-controlled value ladder: cheapest relevant proof, recommended value, optional higher-outcome upgrade, and executable purchas…1 finding

    Why it is in this group

    • The name "quote_autonomous_purchase" says "purchase": a word that usually means money moves, which cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "quote_autonomous_purchase" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "quote_autonomous_purchase" says "purchase": a word that usually means money moves, which cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Given an agent goal and hard USD budget, return a buyer-controlled value ladder: cheapest relevant proof, recommended value, optional higher-outcome upgrade, and executable purchase plan. This tool itself is free and never spends funds. Example: {goal:'extract a public webpage',max_price_usd:0.01,preferred_rail:'x402'}.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Changes things 10Claude Code: ask
  • execute_paid_productExecute one selected paid API tool through native MCP x402 v2.No findings

    Why it is in this group

    • The name "execute_paid_product" says "execute": a word for a change.
    Description, as the server wrote it
    Execute one selected paid API tool through native MCP x402 v2. For known product_id and bounded input, the first call only returns PaymentRequired; no paid output is released. With independently authorized budget and validated network, amount and payee, an x402 client retries with params._meta['x402/payment']; only verified paid success includes _meta['x402/payment-response']. Non-idempotent and payment-bearing; do not retry by signing a second transaction after uncertain settlement. Use a dedicated paid_* sibling when a narrower tool is available; use get_product_proof or quote_premium_delivery first if scope or input validity is uncertain.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • paid_funding_loopScreen fresh external funded tasks for payout rail, escrow, deadline and zero-deposit conditions.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Screen fresh external funded tasks for payout rail, escrow, deadline and zero-deposit conditions. Native x402 payment, no API key. Example: {input:{limit:20,rail:'base'}}.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • paid_funding_ratesFetch normalized live perpetual-futures funding rates with venue fallback and market context.1 finding

    Why it is in this group

    • The description's first verb is "fetch": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "paid_funding_rates" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "fetch": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Fetch normalized live perpetual-futures funding rates with venue fallback and market context. Native x402 payment, no API key. Example: {input:{symbol:'BTCUSDT',providers:['binance','bybit']}}.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • paid_json_contract_checkValidate structured JSON against the supported deterministic JSON Schema subset and return exact error pointers.1 finding

    Why it is in this group

    • The description's first verb is "validate": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "paid_json_contract_check" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "validate": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Validate structured JSON against the supported deterministic JSON Schema subset and return exact error pointers. Native x402 payment. Example: {input:{value:{price:25},schema:{type:'object',required:['price'],properties:{price:{type:'number'}}}}}.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • paid_web_extractExtract one public HTML page into clean Markdown, text, links, metadata and source hashes.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Extract one public HTML page into clean Markdown, text, links, metadata and source hashes. Native x402 payment, no API key. Example: {input:{url:'https://example.com'}}.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • qualify_premium_buyerUse when you have a real buyer-authorized budget and a concrete agent workflow.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Use when you have a real buyer-authorized budget and a concrete agent workflow. Matches one-workspace ledger reconciliation to the $149.90 Command Center, cross-workspace settlement controls to the $999.90 Tower ONLY with confirmed multiple workspaces, or high-volume prepaid credits ONLY with lower total declared cash cost. Always use the free input quote first. No contact to other buyers, signature, invoice, automatic purchase or payment. Example: {goal:'reconcile agent seller payment ledger receipts',max_spend_usd:250,workspaces:1}.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • quote_batch_web_intelligenceQuote the fixed cost and validate up to 10 public URLs without fetching them, spending USDC or creating an invoice.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Quote the fixed cost and validate up to 10 public URLs without fetching them, spending USDC or creating an invoice. The paid batch returns provenance-linked snippets, content hashes, titles and optional client-supplied baseline comparisons. Use HTTP POST /v1/batch-web-intelligence after independently confirming the x402 payment challenge; the free quote is never a purchase.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • quote_instant_workZero-cost deterministic computation of the actual buyer-submitted reconciliation or quality task.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Zero-cost deterministic computation of the actual buyer-submitted reconciliation or quality task. Returns output SHA-256 and readiness; never returns the paid full result or spends USDC. Example: {input:{task:'quality',required:['id'],records:[{id:'A'}]}}.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • quote_premium_workloadFree quote for up to 20 tool/call rows under a hard total budget.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Free quote for up to 20 tool/call rows under a hard total budget. Compares one shared-key package against pay-per-call pricing and recommends a prepaid package only when it covers all tools and costs less. Includes smaller and funding-only alternatives; does not buy or create invoices.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • recommend_paid_toolFree single-tool product recommendation by plain-language goal.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Free single-tool product recommendation by plain-language goal. Use for one specific agent task, not to assume budget approval or execute a payment. For multi-workspace settlement, reused receipts and shared agent budgets consider enterprise-commerce-control-tower; for one workspace seller ledger reconciliation consider agent-commerce-command-center. Before authorizing expensive analysis use quote_premium_delivery; for volume discounts use quote_premium_workload. A no-match result means DO_NOT_BUY. Example: {goal:'verify an x402 seller before paying'}.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Only reads 7Claude Code: allow
  • get_commerce_radar_offerBuyer-intent discovery for retailer competitor-price/stock and autonomous product-change feeds.No findings

    Why it is in this group

    • The name "get_commerce_radar_offer" says "get": a word for reading.
    Description, as the server wrote it
    Buyer-intent discovery for retailer competitor-price/stock and autonomous product-change feeds. Returns true $29.90 Starter and $99.90 Pro plans, free real-URL compatibility preflight, PayPal subscription and one-time 30-day Base USDC options. Does NOT create invoices, make transfers, contact third-party agents or claim buyers exist.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_product_proofReturn one product's method, exact price, schema, sample input and autonomous purchase contract without spending funds.No findings

    Why it is in this group

    • The name "get_product_proof" says "get": a word for reading.
    Description, as the server wrote it
    Return one product's method, exact price, schema, sample input and autonomous purchase contract without spending funds. Example: {product_id:'web-extract'}.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_purchase_instructionsReturn the direct endpoint, price, payment network and purchase flow for one Bounty Engineer product.No findings

    Why it is in this group

    • The name "get_purchase_instructions" says "get": a word for reading.
    Description, as the server wrote it
    Return the direct endpoint, price, payment network and purchase flow for one Bounty Engineer product. Does not spend funds. Example: {product_id:'x402-payment-preflight'}.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_workflow_recipeGet published sample input/output, exact credits for a batch, one-time pack options and prepaid HTTP integration.No findings

    Why it is in this group

    • The name "get_workflow_recipe" says "get": a word for reading.
    Description, as the server wrote it
    Get published sample input/output, exact credits for a batch, one-time pack options and prepaid HTTP integration. No payment or own-data execution occurs. Example: {tool:"funding-rates",calls:100}.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_premium_agent_packsUse this free catalog only when an authorized agent needs a high-volume one-time Base USDC credit pack ($99.90–$2,499.90) or high-ticket seller-payment and portfolio x402 analysis.No findings

    Why it is in this group

    • The name "list_premium_agent_packs" says "list": a word for reading.
    Description, as the server wrote it
    Use this free catalog only when an authorized agent needs a high-volume one-time Base USDC credit pack ($99.90–$2,499.90) or high-ticket seller-payment and portfolio x402 analysis. Includes exact prices, proof links and safe per-pack checkout URLs. Before any spend use quote_premium_workload for planned credit usage or quote_premium_delivery for a real ledger/workspace input. For small workloads use list_products or per-call x402 instead. The catalog never signs, issues invoices, subscribes, or buys.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_productsRead-only, free catalog of exact priced x402 tools: JSON/security, funding rates, extraction, seller-payment analysis and agent operations.No findings

    Why it is in this group

    • The name "list_products" says "list": a word for reading.
    Description, as the server wrote it
    Read-only, free catalog of exact priced x402 tools: JSON/security, funding rates, extraction, seller-payment analysis and agent operations. Use list_products with {} to explore ordinary APIs; for $99.90–$2,499.90 one-time credit packs use list_premium_agent_packs, and for a known product use get_purchase_instructions. No purchase or wallet action occurs. Results are catalog entries, not proof of demand.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • quote_premium_deliveryValidate actual caller-supplied Command Center or Control Tower input before authorizing an expensive analysis.1 finding

    Why it is in this group

    • The description's first verb is "validate": a word for reading.

    Findings

    • Info

      The input schema at properties.input.description mentions "credentials".

      Matched text

      inputSchema.properties.input.description: "...er send wallet secrets, private keys or credentials"

      What this check looks for
    Description, as the server wrote it
    Validate actual caller-supplied Command Center or Control Tower input before authorizing an expensive analysis. Returns input hash, counts, deliverable list, posted price and a cheaper standalone alternative when one workspace suffices. Does not return the paid analysis, verify receipts on chain, sign or transfer funds.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.2.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http bounty-engineer https://bounty-engineer-x402-prod.onrender.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__bounty-engineer__list_products",
      "mcp__bounty-engineer__get_commerce_radar_offer",
      "mcp__bounty-engineer__list_premium_agent_packs",
      "mcp__bounty-engineer__quote_premium_delivery",
      "mcp__bounty-engineer__get_purchase_instructions",
      "mcp__bounty-engineer__get_product_proof",
      "mcp__bounty-engineer__get_workflow_recipe"
    ],
    "ask": [
      "mcp__bounty-engineer__quote_batch_web_intelligence",
      "mcp__bounty-engineer__qualify_premium_buyer",
      "mcp__bounty-engineer__quote_premium_workload",
      "mcp__bounty-engineer__recommend_paid_tool",
      "mcp__bounty-engineer__quote_autonomous_purchase",
      "mcp__bounty-engineer__quote_instant_work",
      "mcp__bounty-engineer__paid_web_extract",
      "mcp__bounty-engineer__paid_funding_loop",
      "mcp__bounty-engineer__paid_funding_rates",
      "mcp__bounty-engineer__paid_json_contract_check",
      "mcp__bounty-engineer__paid_x402_payment_preflight",
      "mcp__bounty-engineer__paid_agent_purchase_firewall",
      "mcp__bounty-engineer__execute_paid_product"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as bounty-engineer. Review it before you use it.