openkrill

0
0
Source

Enable AI agents to make micropayments via x402 protocol. Use when purchasing browser sessions on Browserbase, scraping with Firecrawl, or any x402-compatible API. Handles wallet creation, funding, and automatic payment flows.

Install

mkdir -p .claude/skills/openkrill && curl -L -o skill.zip "https://mcp.directory/api/skills/download/7196" && unzip -o skill.zip -d .claude/skills/openkrill && rm skill.zip

Installs to .claude/skills/openkrill

About this skill

OpenKrill - x402 Payments Skill

This skill enables AI agents to autonomously make micropayments using the x402 protocol. It handles wallet management, balance checking, and automatic payment flows when APIs return HTTP 402 Payment Required responses.

When to Use This Skill

  • When asked "what services can I purchase?" or "what x402 APIs are available?" - Query the Bazaar first!
  • When purchasing browser automation sessions on Browserbase
  • When performing web scraping tasks with Firecrawl
  • When the agent needs to create an email address for signups or verification
  • When interacting with any x402-compatible API
  • When the user mentions micropayments, crypto payments, or paying for API access
  • When you encounter a 402 Payment Required response
  • When discovering new x402-compatible services via the Bazaar

TIP: When a user or agent asks what services are available for purchase, always start by querying the Bazaar discovery endpoint. It provides a live, up-to-date catalog of 12,000+ x402-compatible services.

Quick: Discover Available Services

# Query the Bazaar to see what's available (no auth required)
curl -s "https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources?type=http&limit=50"

Prerequisites

Before using this skill, ensure:

  1. THIRDWEB_SECRET_KEY environment variable is set with a valid thirdweb project secret key
  2. The wallet has sufficient USDC balance on Base chain (or the target chain)
  3. Network access to thirdweb API endpoints

IMPORTANT: x402 Endpoint URLs & Service Types

Two Types of x402 Support

TypeDescriptionExample
True x402Fully keyless - no API keys needed, just pay and useBrowserbase
Hybrid x402Requires API key/token + payment headerFirecrawl

x402 Endpoint Patterns

ServiceStandard APIx402 EndpointTypeStatus
Browserbaseapi.browserbase.comx402.browserbase.comTrue x402✅ Works
Firecrawlapi.firecrawl.dev/v1/searchapi.firecrawl.dev/v1/x402/searchNon-standard❌ Broken

Discovery tips:

  • Check for x402. subdomain (e.g., x402.browserbase.com)
  • Check for /x402/ in the path (e.g., /v1/x402/search)
  • Hit the x402 root URL for endpoint listing (e.g., curl https://x402.browserbase.com/)

Core Workflow

Step 1: Check or Create Wallet

Use the thirdweb API directly (recommended):

curl -s -X POST https://api.thirdweb.com/v1/wallets/server \
  -H "Content-Type: application/json" \
  -H "x-secret-key: $THIRDWEB_SECRET_KEY" \
  -d '{"identifier": "x402-agent-wallet"}'

The response will include the wallet address. Store this for subsequent operations.

Step 2: Make Payments with fetchWithPayment

Call the thirdweb x402 fetch API directly:

# Browserbase - Create browser session
curl -s -X POST "https://api.thirdweb.com/v1/payments/x402/fetch?url=https://x402.browserbase.com/browser/session/create&method=POST" \
  -H "Content-Type: application/json" \
  -H "x-secret-key: $THIRDWEB_SECRET_KEY" \
  -d '{"browserSettings": {"viewport": {"width": 1920, "height": 1080}}}'

Step 3: Handle the Response

Success: The API returns the session data directly.

Insufficient Funds: If the wallet needs funding, the API returns:

{
  "result": {
    "message": "This endpoint requires 0.002 USDC on chain id 8453...",
    "link": "https://thirdweb.com/pay?chain=8453&receiver=0x...&token=0x..."
  }
}

When you receive a payment link, open it in the user's browser:

  • If browser automation is available (MCP, browser tool, etc.), use it to navigate to the link in a new tab
  • Otherwise, display the link prominently and instruct the user to open it manually

This opens thirdweb's payment page where users can fund the wallet.

API Reference

fetchWithPayment Endpoint

URL: https://api.thirdweb.com/v1/payments/x402/fetch

Method: POST

Query Parameters:

ParameterRequiredDescription
urlYesTarget API URL to call
methodYesHTTP method (GET, POST, etc.)
fromNoWallet address for payment (uses default project wallet if omitted)
maxValueNoMaximum payment amount in wei
assetNoPayment token address (defaults to USDC)
chainIdNoChain ID for payment (e.g., "eip155:8453" for Base)

Headers:

  • x-secret-key: Your thirdweb project secret key (required)
  • Content-Type: application/json

Supported x402 Services

Browserbase

x402 Endpoint: https://x402.browserbase.com
Pricing: $0.12/hour (paid in USDC on Base)

EndpointMethodDescription
/browser/session/createPOSTCreate a browser session
/browser/session/:id/statusGETCheck session status
/browser/session/:id/extendPOSTAdd more time
/browser/session/:idDELETETerminate session
curl -s -X POST "https://api.thirdweb.com/v1/payments/x402/fetch?url=https://x402.browserbase.com/browser/session/create&method=POST" \
  -H "Content-Type: application/json" \
  -H "x-secret-key: $THIRDWEB_SECRET_KEY" \
  -d '{"browserSettings": {"viewport": {"width": 1920, "height": 1080}}}'

Firecrawl (Non-Standard x402 - NOT RECOMMENDED)

x402 Endpoint: https://api.firecrawl.dev/v1/x402/search
Pricing: $0.01/request
Status: ⚠️ Incomplete implementation - cannot be used with thirdweb

WARNING: Firecrawl's x402 implementation is non-standard and currently unusable for automated agents:

  1. Returns 401 Unauthorized instead of 402 Payment Required
  2. Doesn't include payment details (payTo address, asset, amount) in response
  3. Documentation says to use X-Payment: {{paymentHeader}} but doesn't explain how to generate it

Comparison with proper x402 (Browserbase):

  • Browserbase: Returns 402 with x402Version, accepts, payTo, asset → thirdweb can auto-pay
  • Firecrawl: Returns 401 with just {"error":"Unauthorized"} → no payment info provided
EndpointMethodStatus
/v1/x402/searchPOST❌ Non-functional for agents

Recommended alternatives:

  1. Firecrawl MCP - If available in your environment (uses standard API key)
  2. Browserbase + scraping script - True x402, fully keyless
  3. Standard Firecrawl API - With subscription/API key

Reference: Firecrawl x402 docs

Mail.tm (Disposable Email)

Base URL: https://api.mail.tm
Pricing: Free (no x402 payment required)

Mail.tm allows agents to create email addresses for signups and receive verification emails.

EndpointMethodAuthDescription
/domainsGETNoGet available email domains
/accountsPOSTNoCreate an email account
/tokenPOSTNoGet authentication token
/messagesGETYesList all messages
/messages/:idGETYesGet full message content
/meGETYesGet account info

Create Email Account

# 1. Get available domain
DOMAIN=$(curl -s https://api.mail.tm/domains | jq -r '.["hydra:member"][0].domain')

# 2. Create account with unique address
curl -s -X POST https://api.mail.tm/accounts \
  -H "Content-Type: application/json" \
  -d '{"address": "agent-'$(date +%s)'@'"$DOMAIN"'", "password": "SecurePass123!"}'

Get Token and Check Messages

# Get auth token
TOKEN=$(curl -s -X POST https://api.mail.tm/token \
  -H "Content-Type: application/json" \
  -d '{"address": "YOUR_EMAIL", "password": "YOUR_PASSWORD"}' | jq -r '.token')

# List messages
curl -s https://api.mail.tm/messages -H "Authorization: Bearer $TOKEN"

# Read specific message
curl -s https://api.mail.tm/messages/MESSAGE_ID -H "Authorization: Bearer $TOKEN"

Important: Store email credentials (address, password, token) for later use. Consider saving to .agent-emails.json (gitignored).

Error Handling

ErrorCauseSolution
401 UnauthorizedInvalid or missing THIRDWEB_SECRET_KEYCheck environment variable
402 Payment RequiredInsufficient balanceAuto-open payment link (see above)
400 Bad RequestInvalid URL or methodVerify request parameters
404 Not FoundWrong endpointCheck x402-specific endpoint (e.g., x402.browserbase.com)
500 Server Errorthirdweb or target API issueRetry or check service status

Common Mistakes

  1. Using wrong subdomain: api.browserbase.com vs x402.browserbase.com
  2. Using wrong path: /v1/sessions vs /browser/session/create
  3. Not checking for payment links: Always parse response for link field

Discovering x402 Endpoints

There are two ways to discover x402-compatible services:

Method 1: x402 Bazaar (Recommended)

The x402 Bazaar is a machine-readable catalog that helps AI agents discover x402-compatible API endpoints programmatically.

Query the Bazaar Discovery Endpoint

# Using the default facilitator (x402.org)
curl -s "https://x402.org/facilitator/discovery/resources?type=http&limit=20"

# Using CDP facilitator (Coinbase)
curl -s "https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources?type=http&limit=20"

Using the Discovery Script

# Discover available services
npx ts-node scripts/discover-services.ts

# With pagination
npx ts-node scripts/discover-services.ts --limit 50 --offset 0

# Use CDP facilitator
npx ts-node scripts/discover-services.ts --facilitator "https://api.cdp.coinbase.com/platform/v2/x402"

# Output as JSON for programmatic use
npx ts-node scripts/discover-services.ts --json

Response Format

{
  "x402Version": 2,
  "items": [
    {
      "resource": "https://x402.brows

---

*Content truncated.*

You might also like

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

9521,094

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

846846

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

571699

godot

bfollington

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

548492

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

673466

fastapi-templates

wshobson

Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.

514280

Stay ahead of the MCP ecosystem

Get weekly updates on new skills and servers.