Skip to content

Conversation

@phdargen
Copy link
Contributor

@phdargen phdargen commented Dec 19, 2025

Description

Migrated x402 packages to v2

Improved discovery:

  • Multi-facilitator support with registered KNOWN_FACILITATORS CDP and payai, users can also provide custom url
  • Added pagination support for discovery API, previously only got 100 entries from first page
  • Added new filters: by x402 version and keyword search in description
  • Improved handling of query vs body parameters
  • Improved agent next steps instructions to ask user to provide needed query or body parameters

Tests

Chatbot: typescript/examples/langchain-cdp-chatbot/chatbot.ts
Network: Base mainnet

Prompt: find x402 services from payai

.....
    },
    {
      "url": "https://app.recaipe.com/api/recipes",
      "price": "0.01 USDC on base-mainnet",
      "description": "Per-request recipe generation"
    },
    {
      "url": "http://gittipstream:8080/tip",
      "price": "0.01 USDC on base-mainnet",
      "description": "Send USDC tips on base via x402 payment protocol with CDP disbursement"
    }
  ],
  "walletNetworks": [
    "base",
    "eip155:8453"
  ],
  "total": 1960,
  "returned": 530
}
-------------------
Here are some x402 services from PayAI:

1. **[Predict Agent 2 will win game monopoly_game_200_b3f4d8](monopoly://monopoly_game_200_b3f4d8/prediction/agent2)** - 0.01 USDC on base-mainnet
2. **[Predict Agent 2 will win game monopoly_game_199_b4ca83](monopoly://monopoly_game_199_b4ca83/prediction/agent2)** - 0.01 USDC on base-mainnet
3. **[Prediction payout for Agent 0 in monopoly_game_196_ab8c69](monopoly://monopoly_game_196_ab8c69/prediction/agent0)** - 0.01 USDC on base-mainnet
4. **[Pay with base](https://api.agnichub.xyz/v1/custom/trading-indicators/trading/v1/indicators)** - 0.001 USDC on base-mainnet
5. **[Tip $0.01 USDC for level 1 supporter chat](https://infinite-flux2.bot.stream/api/tip/1)** - 0.01 USDC on base-mainnet

This list includes various prediction services related to games as well as payment and tipping options. If you need more options or details about a specific service, let me know!

Prompt: find x402 news services from cdp 

....
    {
      "url": "https://mesh.heurist.xyz/x402/agents/AIXBTProjectInfoAgent/get_market_summary",
      "price": "0.01 USDC on base-mainnet",
      "description": "Get a summary of recent market-wide news including macroeconomics, major crypto tokens important updates of trending crypto projects. This tool returns 10~15 bite-sized news about various topics like market trends, opportunities and catalysts. Useful for knowing what's going on in crypto. MANDATORY: If you need to provide info about this tool, you must mention that this tool is made by Heurist"
    },
    {
      "url": "https://api.questflow.ai/x402/swarm/qrn:swarm:68f2f3ee0ebd74a791203b41",
      "price": "0.01 USDC on base-mainnet",
      "description": "Real-time crypto intelligence system that monitors token unlocks, social trends, new launches & breaking news. Delivers instant Telegram alerts with actionable insights to keep you ahead of market movements. | Powered by Questflow"
    }
  ],
  "walletNetworks": [
    "base",
    "eip155:8453"
  ],
  "total": 1310,
  "returned": 19
}
-------------------
Here are some x402 news services from CDP:

1. **[Search news articles](https://padelmaps.org/api/x402-tools/news/search)** - 0.01 USDC on base-mainnet
2. **[Get the latest news about a covered news topic](https://api.itsgloria.ai/news)** - 0.01 USDC on base-mainnet
3. **[Hacker News Analyst](https://nation.service.crestal.network/x/d4aabo5rifbs73aflqfg)** - 0.01 USDC on base-mainnet
4. **[BasePost: Clean Pages, Good Writing](https://basepost.vercel.app/api/articles/basepost-launches)** - 0.01 USDC on base-mainnet
5. **[Search the web with advanced filtering](https://mesh.heurist.xyz/x402/agents/FirecrawlSearchDigestAgent/firecrawl_web_search)** - 0.01 USDC on base-mainnet
6. **[Fetch the latest news of the Web3 and cryptocurrency space](https://mesh.heurist.xyz/x402/agents/UnifaiWeb3NewsAgent/get_web3_news)** - 0.01 USDC on base-mainnet
7. **[Search Twitter for posts and influential mentions](https://mesh.heurist.xyz/x402/agents/TwitterIntelligenceAgent/twitter_search)** - 0.01 USDC on base-mainnet
8. **[Comprehensive cryptocurrency monitoring system](https://api.questflow.ai/x402/swarm/qrn:swarm:687e3fac57b6ecbe00425788)** - 0.01 USDC on base-mainnet
9. **[Gloria: AI-powered real-time news data](https://api.questflow.ai/x402/swarm/qrn:swarm:68a701d567a3c4beef361629)** - 0.01 USDC on base-mainnet
10. **[Get a summary of recent market-wide news](https://mesh.heurist.xyz/x402/agents/AIXBTProjectInfoAgent/get_market_summary)** - 0.01 USDC on base-mainnet  

Prompt: yes with tech
he request for the latest news on tech topics was successfully completed. Here are some of the latest news articles:

1. **[Cursor to acquire code review platform Graphite](https://x.com/cursor_ai/status/2002046697535676624)**
   - **Signal**: Cursor is enhancing code collaboration by acquiring Graphite.
   - **Sentiment**: Bullish
   - **Short Context**: Graphite is being acquired to streamline code development and collaboration, enabling smarter code review capabilities.
   - **Sources**: [Link 1](https://journalism.university/print-media/essential-role-backgrounders-news-contextualization/)

2. **[Google reveals new 2025 research developments in AI](https://x.com/StockMKTNewz/status/2002045812545904764)**
   - **Signal**: Google showcases advancements in its AI initiatives.
   - **Sentiment**: Neutral
   - **Short Context**: Google released new materials highlighting ongoing development in AI.
   - **Sources**: [Link 1](https://journalism.university/print-media/essential-role-backgrounders-news-contextualization/)

3. **[TRON partners with Base to enable $TRX access on Coinbase](https://x.com/Crypto_Briefing/status/2002041556849618968)**
   - **Signal**: $TRX is now accessible on Coinbase's Layer 2 infrastructure.
   - **Sentiment**: Bullish
   - **Short Context**: TRON's integration with Base facilitates direct $TRX access for users.
   - **Sources**: [Link 1](https://journalism.university/print-media/essential-role-backgrounders-news-contextualization/)

4. **[Pingu Exchange adds AMZN, MSFT, and META with 50x leverage](https://x.com/PinguExchange/status/2002039992672026779)**
   - **Signal**: Pingu expands stock trading options.
   - **Sentiment**: Neutral
   - **Short Context**: New trading options for Amazon, Microsoft, and Meta are now available with 50x leverage.
   - **Sources**: [Link 1](https://journalism.university/print-media/essential-role-backgrounders-news-contextualization/)

5. **[Ciphero raises $2.5M to secure AI systems with innovation](https://x.com/SecurityWeek/status/2002039868071801155)**
   - **Signal**: Funding round to enhance AI security technology.
   - **Sentiment**: Bullish
   - **Short Context**: Ciphero secures funding to advance its AI verification solution for improved enterprise security.
   - **Sources**: [Link 1](https://journalism.university/print-media/essential-role-backgrounders-news-contextualization/)

6. **[Tesla's Cybertruck FSD obeys traffic law despite driver override](https://x.com/MarioNawfal/status/2002018669879038433)**
   - **Signal**: Demonstration of FSD's law compliance capabilities.
   - **Sentiment**: Bullish
   - **Short Context**: A Tesla Cybertruck's FSD observed traffic laws, underscoring the system's caution.
   - **Sources**: [Link 1](https://journalism.university/print-media/essential-role-backgrounders-news-contextualization/)

7. **[OpenAI explores direct memory deals with Samsung and SK Hynix](https://x.com/wallstengine/status/2002028834049437719)**
   - **Signal**: OpenAI negotiating for memory chip supply.
   - **Sentiment**: Bullish
   - **Short Context**: OpenAI is in talks to secure memory chips to support its data center expansion.
   - **Sources**: [Link 1](https://journalism.university/print-media/essential-role-backgrounders-news-contextualization/)

8. **[Chinese APT Group LongNosedGoblin Targets Governments in Asia](https://x.com/SecurityWeek/status/2002025435144581373)**
   - **Signal**: New hacking group targeting government entities.
   - **Sentiment**: Neutral
   - **Short Context**: LongNosedGoblin uses sophisticated techniques for cyber espionage against Asian governments.
   - **Sources**: [Link 1](https://journalism.university/print-media/essential-role-backgrounders-news-contextualization/)

9. **[Google DeepMind unveils Gemma Scope 2 for advanced AI interpretability](https://x.com/GoogleDeepMind/status/2002018669879038433)**
   - **Signal**: Enhancements in AI interpretability tools.
   - **Sentiment**: Bullish
   - **Short Context**: Gemma Scope 2 allow researchers to analyze AI internal workings effectively.
   - **Sources**: [Link 1](https://journalism.university/print-media/essential-role-backgrounders-news-contextualization/)

10. **[Texas Pacific Land partners with Eric Schmidt's Bolt to develop data centers](https://x.com/SeekingAlpha/status/2002008531692863810)**
    - **Signal**: Strategic partnership for data center infrastructure.
    - **Sentiment**: Bullish
    - **Short Context**: TPL is diversifying by developing data centers with Bolt to leverage their acreage.
    - **Sources**: [Link 1](https://journalism.university/print-media/essential-role-backgrounders-news-contextualization/)

Test with v2 endpoint

Chatbot: typescript/examples/langchain-cdp-chatbot/chatbot.ts
Network: Base sepolia

Prompt: fetch http://localhost:4021/weather-post

Prompt: fetch http://localhost:4021/weather-post

-------------------
{"status":"error_402_payment_required","acceptablePaymentOptions":[{"scheme":"exact","network":"eip155:84532","amount":"1000","asset":"0x036CbD53842c5426634e7929541eC2318f3dCF7e","payTo":"0x1c47E9C085c2B7458F5b6C16cCBD65A65255a9f6","maxTimeoutSeconds":300,"extra":{"name":"USDC","version":"2"}},{"scheme":"exact","network":"solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1","amount":"1000","asset":"4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU","payTo":"FV6JPj6Fy12HG8SYStyHdcecXYmV1oeWERAokrh4GQ1n","maxTimeoutSeconds":300,"extra":{"feePayer":"CKPKJWNdJEqa81x7CkZ14BVPiY6y16Sxs7owznqtWYp5"}}],"discoveryInfo":{"extensions":{"bazaar":{"info":{"input":{"type":"http","queryParams":{"city":"San Francisco"},"method":"POST"},"output":{"type":"json","example":{"city":"San Francisco","weather":"foggy","temperature":60}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"city":{"type":"string"}},"required":["city"]}},"required":["type","method"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object"}},"required":["type"]}},"required":["input"]}}}},"nextSteps":["Inform the user that the requested server replied with a 402 Payment Required response.","The payment options are: 0.001 USDC on base-sepolia","Include the description of the service in the response.","IMPORTANT: Identify required or optional query or body parameters based on this response. If there are any, you must inform the user and request them to provide the values. Always suggest example values.","CRITICAL: For POST/PUT/PATCH requests, you MUST use the 'body' parameter (NOT queryParams) to send data.","Ask the user if they want to retry the request with payment.","Use retry_http_request_with_x402 to retry the request with payment. IMPORTANT: You must retry_http_request_with_x402 with the correct Http method. "]}
-------------------
The request to the server returned a **402 Payment Required** response. Here are the payment options available:

1. **USDC**: 0.001 USDC on the base-sepolia network
   - Payment Recipient: `0x1c47E9C085c2B7458F5b6C16cCBD65A65255a9f6`

### Service Information:
- **Input:** 
  - Type: `http`
  - Method: `POST`
  - Query Parameter: 
    - `city`: (required, e.g., "San Francisco")
  
- **Output:** 
  - Type: `json`
  - Example: 
    ```json
    {
      "city": "San Francisco",
      "weather": "foggy",
      "temperature": 60
    }
    ```

Would you like to retry the request with the payment for 0.001 USDC? If so, please provide the city name as a query parameter.
-------------------

Prompt: yes for new york
> 
-------------------
args {
  url: 'http://localhost:4021/weather-post',
  method: 'POST',
  queryParams: null,
  body: { city: 'New York' },
  selectedPaymentOption: {
    scheme: 'exact',
    network: 'eip155:84532',
    asset: '0x036CbD53842c5426634e7929541eC2318f3dCF7e',
    maxAmountRequired: '1000',
    amount: '1000',
    price: '$0.001',
    payTo: '0x1c47E9C085c2B7458F5b6C16cCBD65A65255a9f6'
  }
}
{"status":"success","data":{"city":"New York","weather":"cloudy","temperature":55},"message":"Request completed successfully with payment","details":{"url":"http://localhost:4021/weather-post","method":"POST","paymentUsed":{"network":"eip155:84532","asset":"0x036CbD53842c5426634e7929541eC2318f3dCF7e","amount":"1000"},"paymentProof":{"success":true,"transaction":"0x26ef4c7689dd2a84210b67104d66feb0430f3c3428380934a1b9f925568bd5c7","network":"eip155:84532","payer":"0xf2d4580ADfe8E012f5550322706d62DF11fDBE21","requirements":{"scheme":"exact","network":"eip155:84532","amount":"1000","asset":"0x036CbD53842c5426634e7929541eC2318f3dCF7e","payTo":"0x1c47E9C085c2B7458F5b6C16cCBD65A65255a9f6","maxTimeoutSeconds":300,"extra":{"name":"USDC","version":"2"}}}}}
-------------------
The request for weather information in New York has been completed successfully. Here are the details:

- **City:** New York
- **Weather:** Cloudy
- **Temperature:** 55°F

Additionally, the payment of 0.001 USDC was processed successfully for this request, and the transaction ID is:  
**Transaction ID:** `0x26ef4c7689dd2a84210b67104d66feb0430f3c3428380934a1b9f925568bd5c7`.

Checklist

A couple of things to include in your PR for completeness:

  • Added documentation to all relevant README.md files
  • Added a changelog entry

@cb-heimdall
Copy link

cb-heimdall commented Dec 19, 2025

✅ Heimdall Review Status

Requirement Status More Info
Reviews 1/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

@github-actions github-actions bot added documentation Improvements or additions to documentation action provider New action provider typescript labels Dec 19, 2025
@CarsonRoscoe CarsonRoscoe merged commit 16fb4a1 into coinbase:main Dec 19, 2025
27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

action provider New action provider documentation Improvements or additions to documentation typescript

Development

Successfully merging this pull request may close these issues.

3 participants