Skill: eronmmer/bloomfilter (version 1.0.2)

--- name: bloomfilter description: Search, register, and manage domains via Bloomfilter x402 API - pay with USDC on Base homepage: https://bloomfilter.xyz metadata: clawdbot: emoji: 🌐 requires: env: - EVM_PRIVATE_KEY primaryEnv: EVM_PRIVATE_KEY --- # Bloomfilter - Domain Registration API Base URL: `https://api.bloomfilter.xyz` Paid endpoints use the x402 payment protocol. The API returns HTTP 402 with payment details - your x402-compatible HTTP client handles payment automatically. EVM_PRIVATE_KEY is used locally by the agent's x402 HTTP client (@x402/axios or @x402/fetch) to sign EIP-3009 TransferWithAuthorization messages for USDC payments and to sign EIP-4361 SIWE messages for authentication. The private key never leaves the local machine and is never sent to any server. All cryptographic signing happens client-side in the agent runtime. DNS and account endpoints require authentication via SIWE (Sign-In With Ethereum). Authenticate once, then pass the JWT as a Bearer token. ## Authentication (SIWE) GET /auth/nonce -> Returns { nonce, domain, uri, chainId, version, expiresIn } POST /auth/verify Body: { "message": "<EIP-4361 SIWE message>", "signature": "0x..." } -> Returns { accessToken, refreshToken, walletAddress } POST /auth/refresh Body: { "refreshToken": "..." } -> Returns new { accessToken, refreshToken } POST /auth/revoke (requires Bearer token) -> Revokes all sessions for the authenticated wallet ## Domain Search & Pricing (free, no auth) GET /domains/search?query=example&tlds=com,io,xyz -> Returns availability and pricing for each TLD. The tlds parameter is optional. GET /domains/pricing -> Returns pricing for all supported TLDs GET /domains/pricing/:tld -> Returns pricing for a single TLD (e.g., /domains/pricing/com) ## Domain Registration (x402 - dynamic pricing) POST /domains/register Body: { "domain": "example.com", "years": 1 } years defaults to 1 if omitted. Optional: "dns_records": [{ "type": "A", "host": "@", "value": "1.2.3.4" }] Supported dns_records types: A, AAAA, CNAME, MX, TXT, SRV, CAA Each record also accepts optional "ttl" (300-86400, default 3600) and "priority" (for MX/SRV) -> First call returns 402 with exact price. Retry with x402 payment to complete. -> Returns 201 on success, or 202 with a job ID for async provisioning. POST /domains/renew Body: { "domain": "example.com", "years": 1 } years defaults to 1 if omitted. -> Same two-phase x402 flow as registration. ## Domain Info (free, no auth) GET /domains/:domain -> Returns domain status, expiry, nameservers, lock/privacy state. Note: Only works for domains registered through Bloomfilter. ## Job Status (free, no auth) GET /domains/status/:jobId -> Poll for async registration status. Returns 200 (done), 202 (pending), or 500 (failed). ## DNS Management (requires Bearer token) Mutations cost $0.10 USDC each (x402). Listing is free. IMPORTANT: Always add, update, or delete DNS records one at a time (sequentially, not in parallel). After registering a new domain, wait at least 30 seconds before adding DNS records — the DNS zone may not be ready immediately. GET /dns/:domain -> List all DNS records POST /dns/:domain Body: { "type": "A", "host": "@", "value": "1.2.3.4" } Optional: "ttl" (300-86400, default 3600), "priority" (for MX/SRV) Supported types: A, AAAA, CNAME, MX, TXT, NS, SRV, CAA PUT /dns/:domain/:recordId Body: { "host": "@", "value": "5.6.7.8" } At least one field required. Optional: host, value, ttl, priority. DELETE /dns/:domain/:recordId -> Deletes the record ## Account (requires Bearer token, free) GET /account -> Account summary (wallet, domain count, total spent) GET /account/domains?limit=50&offset=0 -> Paginated list of owned domains GET /account/transactions?limit=50&offset=0 -> Paginated transaction history ## Notes - All paid requests require an x402-compatible HTTP client with USDC on Base (chain ID 8453) - WHOIS privacy is enabled by default on all registrations - Docs: https://docs.bloomfilter.xyz ## External Endpoints | URL | Data Sent | Purpose | | ----------------------------- | ------------------------------------------- | ------------------------------------------- | | https://api.bloomfilter.xyz/* | Domain queries, DNS records, wallet address | Domain search, registration, DNS management | No data is sent anywhere else. All requests go to the Bloomfilter API only. ## Security & Privacy - Your EVM_PRIVATE_KEY never leaves your local machine — it is used locally to sign x402 payment authorizations and SIWE messages - The API receives your wallet address (derived from the key) but never the private key itself - WHOIS privacy is enabled by default on all registrations — your identity is never exposed in public WHOIS records - All API communication is over HTTPS ## Trust This skill connects to `api.bloomfilter.xyz` to register ICANN domains and manage DNS records. Payments are made in USDC on Base via the x402 protocol. Your private key stays local. Install only if you trust Bloomfilter (https://bloomfilter.xyz) as a domain registration provider.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)