<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: goldbean</title>
    <description>The latest articles on DEV Community by goldbean (@goldbean).</description>
    <link>https://dev.to/goldbean</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3948446%2F196f0b5c-992c-4f2b-bcb2-694cdd37f960.png</url>
      <title>DEV Community: goldbean</title>
      <link>https://dev.to/goldbean</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/goldbean"/>
    <language>en</language>
    <item>
      <title>From Free to Paid: Engineering a Monetized MCP Server with 16 AI Tools in Production</title>
      <dc:creator>goldbean</dc:creator>
      <pubDate>Wed, 08 Jul 2026 13:39:50 +0000</pubDate>
      <link>https://dev.to/goldbean/from-free-to-paid-engineering-a-monetized-mcp-server-with-16-ai-tools-in-production-171c</link>
      <guid>https://dev.to/goldbean/from-free-to-paid-engineering-a-monetized-mcp-server-with-16-ai-tools-in-production-171c</guid>
      <description>&lt;p&gt;Last month we launched GoldBean, a pay-per-call MCP server with 100+ AI tools. The most common question I get: &lt;em&gt;'How did you actually build the payment layer?'&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Here's a technical deep dive into how we implemented x402 micropayments on top of an MCP server.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;Most MCP servers are free. That's great for open source, but it creates a tragedy of the commons: nobody maintains them, API costs go unpaid, and quality degrades.&lt;/p&gt;

&lt;p&gt;We wanted to prove that a pay-per-call model could work for AI tool aggregation — where developers pay only for what they use, and the underlying API costs are transparently passed through.&lt;/p&gt;

&lt;h2&gt;
  
  
  Architecture Overview
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Claude Desktop → MCP Client → GoldBean Server
                                    ↓
                              Payment Gateway
                                    ↓
                          x402 (Base USDC) / PayPal / Alipay
                                    ↓
                            Baidu AI / Other Providers
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 1: The MCP Server Skeleton
&lt;/h2&gt;

&lt;p&gt;We built on top of the standard MCP SDK. Each tool gets a &lt;code&gt;price&lt;/code&gt; metadata field:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;ocr&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nx"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Extract text from images&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nx"&gt;price&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;0.01&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;  &lt;span class="c1"&gt;// USD&lt;/span&gt;
  &lt;span class="nx"&gt;inputSchema&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 2: x402 Payment Verification
&lt;/h2&gt;

&lt;p&gt;The x402 protocol is elegant: HTTP 402 Payment Required, natively.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Flow:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;First request&lt;/strong&gt; — no payment header → Server returns 402 + payment details&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Second request&lt;/strong&gt; — client includes &lt;code&gt;X-PAYMENT&lt;/code&gt; header with EIP-3009 signed transfer&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Verification&lt;/strong&gt; — server checks on-chain that the transfer is valid and not replayed&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Execution&lt;/strong&gt; — if payment OK, run the tool and return results&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Key code snippet (Node.js):&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;verifyPayment&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;async &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;paymentHeader&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;transferWithAuth&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;decodePayment&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;paymentHeader&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;valid&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;contract&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;methods&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;validateTransfer&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;transferWithAuth&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;call&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;used&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;db&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`nonce:&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;transferWithAuth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;nonce&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;used&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;throw&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Error&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Replay detected&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;db&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;set&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`nonce:&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;transferWithAuth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;nonce&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;valid&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 3: PayPal and Alipay Fallback
&lt;/h2&gt;

&lt;p&gt;Not everyone wants crypto. We added traditional payment rails:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;PayPal&lt;/strong&gt; — Standard checkout flow, credits added to account&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Alipay&lt;/strong&gt; — QR code payment, same credit system&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Credits are stored server-side and deducted per call. When credits run out, the client gets a 402 response with instructions to top up.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: MCP Tool Registration
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;server&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;setRequestHandler&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;ListToolsRequestSchema&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;async &lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;({&lt;/span&gt;
  &lt;span class="na"&gt;tools&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
    &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;ocr&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Extract text&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;price&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;0.01&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;freeQuota&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;50&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;inputSchema&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="c1"&gt;// ... 15 more tools&lt;/span&gt;
  &lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="p"&gt;}));&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 5: The Free Tier Hook
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Data so far:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;~80% of users stay within free tier&lt;/li&gt;
&lt;li&gt;~15% exceed free tier but don't pay (wait for next day)&lt;/li&gt;
&lt;li&gt;~5% convert to paid&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The free tier is a loss leader, but it builds trust.&lt;/p&gt;

&lt;h2&gt;
  
  
  Challenges We Hit
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Nonce replay attacks&lt;/strong&gt; — Fixed with Redis-backed nonce storage&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Chain reorgs on Base&lt;/strong&gt; — Wait for 2 block confirmations&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Price volatility&lt;/strong&gt; — Daily price cache updates&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Client UX&lt;/strong&gt; — Claude Desktop doesn't show prices, added &lt;code&gt;tool-info&lt;/code&gt; endpoint&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Lessons Learned
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;MCP is the perfect distribution channel for APIs&lt;/li&gt;
&lt;li&gt;x402 micropayments can work when invisible to users&lt;/li&gt;
&lt;li&gt;Free tiers are essential — 80% never pay, but spread the word&lt;/li&gt;
&lt;li&gt;Aggregation &amp;gt; Individual APIs&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Try It Out
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;MCP endpoint&lt;/strong&gt;: &lt;code&gt;https://goldbean-api.xyz/sse&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Docs&lt;/strong&gt;: &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;https://goldbean-api.xyz&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;npm SDK&lt;/strong&gt;: &lt;code&gt;npm install @goldbean/x402-sdk&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Server source&lt;/strong&gt;: &lt;a href="https://github.com/wuzenghai616-lang/goldbean" rel="noopener noreferrer"&gt;https://github.com/wuzenghai616-lang/goldbean&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>mcp</category>
      <category>ai</category>
      <category>web3</category>
      <category>api</category>
    </item>
    <item>
      <title>How We Built a Monetized MCP Server with x402 Micropayments: Technical Deep Dive</title>
      <dc:creator>goldbean</dc:creator>
      <pubDate>Wed, 08 Jul 2026 13:38:01 +0000</pubDate>
      <link>https://dev.to/goldbean/how-we-built-a-monetized-mcp-server-with-x402-micropayments-technical-deep-dive-5g7h</link>
      <guid>https://dev.to/goldbean/how-we-built-a-monetized-mcp-server-with-x402-micropayments-technical-deep-dive-5g7h</guid>
      <description>&lt;p&gt;Last month we launched GoldBean, a pay-per-call MCP server with 100+ AI tools. The most common question I get: &lt;em&gt;'How did you actually build the payment layer?'&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Here's a technical deep dive into how we implemented x402 micropayments on top of an MCP server.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;Most MCP servers are free. That's great for open source, but it creates a tragedy of the commons: nobody maintains them, API costs go unpaid, and quality degrades.&lt;/p&gt;

&lt;p&gt;We wanted to prove that a pay-per-call model could work for AI tool aggregation — where developers pay only for what they use, and the underlying API costs are transparently passed through.&lt;/p&gt;

&lt;h2&gt;
  
  
  Architecture Overview
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Claude Desktop → MCP Client → GoldBean Server
                                    ↓
                              Payment Gateway
                                    ↓
                          x402 (Base USDC) / PayPal / Alipay
                                    ↓
                            Baidu AI / Other Providers
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 1: The MCP Server Skeleton
&lt;/h2&gt;

&lt;p&gt;We built on top of the standard MCP SDK. Each tool gets a &lt;code&gt;price&lt;/code&gt; metadata field:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;ocr&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nx"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Extract text from images&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nx"&gt;price&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;0.01&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;  &lt;span class="c1"&gt;// USD&lt;/span&gt;
  &lt;span class="nx"&gt;inputSchema&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 2: x402 Payment Verification
&lt;/h2&gt;

&lt;p&gt;The x402 protocol is elegant: HTTP 402 Payment Required, natively.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Flow:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;First request&lt;/strong&gt; — no payment header → Server returns 402 + payment details&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Second request&lt;/strong&gt; — client includes &lt;code&gt;X-PAYMENT&lt;/code&gt; header with EIP-3009 signed transfer&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Verification&lt;/strong&gt; — server checks on-chain that the transfer is valid and not replayed&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Execution&lt;/strong&gt; — if payment OK, run the tool and return results&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Key code snippet (Node.js):&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Verify EIP-3009 signed transfer on Base&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;verifyPayment&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;async &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;paymentHeader&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;transferWithAuth&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;decodePayment&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;paymentHeader&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="c1"&gt;// Check on-chain state&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;valid&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;contract&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;methods&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;validateTransfer&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;TransferWithAuth&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;call&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

  &lt;span class="c1"&gt;// Anti-replay: check nonce not used before&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;used&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;db&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`nonce:&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;transferWithAuth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;nonce&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;used&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;throw&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Error&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Replay detected&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="c1"&gt;// Mark nonce as used&lt;/span&gt;
  &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;db&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;set&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`nonce:&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;transferWithAuth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;nonce&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;valid&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 3: PayPal and Alipay Fallback
&lt;/h2&gt;

&lt;p&gt;Not everyone wants crypto. We added traditional payment rails:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;PayPal&lt;/strong&gt; — Standard checkout flow, credits added to account&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Alipay&lt;/strong&gt; — QR code payment, same credit system&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Credits are stored server-side and deducted per call. When credits run out, the client gets a 402 response with instructions to top up.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: MCP Tool Registration
&lt;/h2&gt;

&lt;p&gt;Each tool is registered with both MCP metadata and a price:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;server&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;setRequestHandler&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;ListToolsRequestSchema&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;async &lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;({&lt;/span&gt;
  &lt;span class="na"&gt;tools&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
    &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;ocr&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
      &lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Extract text from images and PDFs&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
      &lt;span class="na"&gt;price&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;0.01&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
      &lt;span class="na"&gt;freeQuota&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;50&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;  &lt;span class="c1"&gt;// free calls per day&lt;/span&gt;
      &lt;span class="na"&gt;inputSchema&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="p"&gt;...&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="c1"&gt;// ... 15 more tools&lt;/span&gt;
  &lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="p"&gt;}));&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The client (Claude Desktop) sees these tools in the tool picker. When a tool is called, the server checks if the user has free quota or valid payment.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 5: The Free Tier Hook
&lt;/h2&gt;

&lt;p&gt;This was crucial. 50 free calls/day lets developers experiment without friction.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Data so far:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;~80% of users stay within free tier&lt;/li&gt;
&lt;li&gt;~15% exceed free tier but don't pay (they just wait for next day)&lt;/li&gt;
&lt;li&gt;~5% convert to paid (still small, but growing)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The free tier is a loss leader, but it builds trust and gets users into the habit of using the tools.&lt;/p&gt;

&lt;h2&gt;
  
  
  Challenges We Hit
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. Nonce replay attacks&lt;/strong&gt;&lt;br&gt;
Early versions didn't properly track nonces. Fixed with Redis-backed nonce storage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Chain reorgs on Base&lt;/strong&gt;&lt;br&gt;
A transfer could be valid in one block but reorged out in the next. We now wait for 2 block confirmations before accepting payment.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Price volatility&lt;/strong&gt;&lt;br&gt;
USDC is stable, but API provider prices change. We added a price cache layer that updates daily from provider rate cards.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Client UX&lt;/strong&gt;&lt;br&gt;
Claude Desktop doesn't show prices in the tool picker. We added a &lt;code&gt;tool-info&lt;/code&gt; custom endpoint that returns pricing info, and we prompt users in the first interaction.&lt;/p&gt;

&lt;h2&gt;
  
  
  Lessons Learned
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;MCP is the perfect distribution channel for APIs&lt;/strong&gt; — No SDKs to maintain, just one endpoint&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;x402 micropayments can work&lt;/strong&gt; — The key is making them invisible to the user&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Free tiers are essential&lt;/strong&gt; — 80% of users never pay, but they spread the word&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Aggregation &amp;gt; Individual APIs&lt;/strong&gt; — One endpoint, one bill, 100+ tools&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Try It Out
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;MCP endpoint&lt;/strong&gt;: &lt;code&gt;https://goldbean-api.xyz/sse&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Docs&lt;/strong&gt;: &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;https://goldbean-api.xyz&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;npm SDK&lt;/strong&gt;: &lt;code&gt;npm install @goldbean/x402-sdk&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Server source&lt;/strong&gt;: &lt;a href="https://github.com/wuzenghai616-lang/goldbean" rel="noopener noreferrer"&gt;https://github.com/wuzenghai616-lang/goldbean&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you're building MCP servers or exploring micropayments for APIs, I'd love to hear your approach in the comments.&lt;/p&gt;

</description>
      <category>mcp</category>
      <category>ai</category>
      <category>web3</category>
      <category>api</category>
    </item>
    <item>
      <title>I Built a Pay-Per-Call MCP Server That Aggregates 100+ AI Tools — Here's What I Learned</title>
      <dc:creator>goldbean</dc:creator>
      <pubDate>Wed, 08 Jul 2026 12:14:02 +0000</pubDate>
      <link>https://dev.to/goldbean/i-built-a-pay-per-call-mcp-server-that-aggregates-100-ai-tools-heres-what-i-learned-3i7f</link>
      <guid>https://dev.to/goldbean/i-built-a-pay-per-call-mcp-server-that-aggregates-100-ai-tools-heres-what-i-learned-3i7f</guid>
      <description>&lt;p&gt;When I first heard about the Model Context Protocol (MCP), I thought: &lt;em&gt;finally, a standard way for AI assistants to call external tools.&lt;/em&gt; But the more I used MCP servers, the more I noticed a gap — most were free community utilities with no monetization model. That's great for open source, but it doesn't incentivize high-quality, maintained endpoints.&lt;/p&gt;

&lt;p&gt;So I built &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;GoldBean&lt;/a&gt; — a pay-per-call MCP server that aggregates 100+ AI tools behind a single endpoint, with micropayments via the x402 protocol.&lt;/p&gt;

&lt;h2&gt;
  
  
  What GoldBean Does
&lt;/h2&gt;

&lt;p&gt;GoldBean exposes 16 MCP tools (with 100+ sub-capabilities) including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;OCR&lt;/strong&gt; — Extract text from images and PDFs (Baidu's engine, 50+ languages)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Text-to-Speech&lt;/strong&gt; — 100K characters per request, multiple voices&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Speech Recognition&lt;/strong&gt; — Audio to text with speaker diarization&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Image Generation&lt;/strong&gt; — Text-to-image with style control&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;LLM Chat&lt;/strong&gt; — Multi-model chat completions&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Translation&lt;/strong&gt; — 200+ language pairs&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Object Recognition&lt;/strong&gt; — Image content analysis&lt;/li&gt;
&lt;li&gt;And 90+ more capabilities&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Pay-Per-Call Model
&lt;/h2&gt;

&lt;p&gt;Here's the pricing breakdown:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tool&lt;/th&gt;
&lt;th&gt;Price per Call&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;OCR&lt;/td&gt;
&lt;td&gt;$0.01&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;LLM Chat&lt;/td&gt;
&lt;td&gt;$0.03&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Image Generation&lt;/td&gt;
&lt;td&gt;$0.03&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TTS&lt;/td&gt;
&lt;td&gt;$0.02&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ASR&lt;/td&gt;
&lt;td&gt;$0.02&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Free tier&lt;/strong&gt;: 50 calls/day, no credit card required.&lt;/p&gt;

&lt;h2&gt;
  
  
  How x402 Micropayments Work
&lt;/h2&gt;

&lt;p&gt;The x402 protocol enables HTTP 402 (Payment Required) natively:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Client sends a request without payment&lt;/li&gt;
&lt;li&gt;Server responds with HTTP 402 + payment details (recipient address, amount, chain)&lt;/li&gt;
&lt;li&gt;Client signs an EIP-3009 transfer and resends with the payment header&lt;/li&gt;
&lt;li&gt;Server verifies the on-chain transaction and fulfills the request&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This happens in milliseconds — the user never leaves the flow. We use Base mainnet for low gas fees, and payments settle in USDC.&lt;/p&gt;

&lt;p&gt;For non-crypto users, we also accept PayPal and Alipay.&lt;/p&gt;

&lt;h2&gt;
  
  
  Connecting to Claude Desktop
&lt;/h2&gt;

&lt;p&gt;Add this to your &lt;code&gt;claude_desktop_config.json&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"mcpServers"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"goldbean"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"command"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"npx"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"args"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"-y"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"@modelcontextprotocol/server-sse"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://goldbean-api.xyz/sse"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Restart Claude Desktop, and you'll see all 16 tools appear in the tool picker.&lt;/p&gt;

&lt;h2&gt;
  
  
  Real-World Use Case
&lt;/h2&gt;

&lt;p&gt;Last week I needed to:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Extract text from a 20-page scanned Chinese PDF&lt;/li&gt;
&lt;li&gt;Translate the summary to English&lt;/li&gt;
&lt;li&gt;Generate a voiceover for the English version&lt;/li&gt;
&lt;li&gt;Create a cover image&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Instead of signing up for 4 different services, I just asked Claude to do it — all through GoldBean. Total cost: &lt;strong&gt;$0.08&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Learned Building This
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. MCP is the perfect distribution channel for APIs.&lt;/strong&gt; Instead of building SDKs for every language, you just expose an MCP endpoint and any AI assistant can use your tools.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Micropayments can work for APIs.&lt;/strong&gt; The key insight is that x402 makes the payment flow invisible — the client SDK handles it automatically. Users don't need to think about crypto.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Free tiers are essential.&lt;/strong&gt; 50 free calls/day lets developers experiment without friction. Most never need to pay.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Aggregation creates value.&lt;/strong&gt; Developers don't want 10 API keys and 10 billing dashboards. One endpoint, one bill.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try It Out
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;MCP endpoint&lt;/strong&gt;: &lt;code&gt;https://goldbean-api.xyz/sse&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Documentation&lt;/strong&gt;: &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;https://goldbean-api.xyz&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;npm SDK&lt;/strong&gt;: &lt;code&gt;npm install @goldbean/x402-sdk&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Also available on&lt;/strong&gt;: &lt;a href="https://mcpize.com" rel="noopener noreferrer"&gt;MCPize&lt;/a&gt; | &lt;a href="https://glama.ai" rel="noopener noreferrer"&gt;Glama&lt;/a&gt; | &lt;a href="https://smithery.ai/server/wuzenghai616/goldbean" rel="noopener noreferrer"&gt;Smithery&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you're building with MCP or exploring micropayments for APIs, I'd love to hear your thoughts in the comments.&lt;/p&gt;

</description>
      <category>mcp</category>
      <category>ai</category>
      <category>api</category>
      <category>web3</category>
    </item>
    <item>
      <title>How to Connect Claude Desktop to 100+ AI Tools Using a Single MCP Server</title>
      <dc:creator>goldbean</dc:creator>
      <pubDate>Wed, 08 Jul 2026 11:13:19 +0000</pubDate>
      <link>https://dev.to/goldbean/how-to-connect-claude-desktop-to-100-ai-tools-using-a-single-mcp-server-4agc</link>
      <guid>https://dev.to/goldbean/how-to-connect-claude-desktop-to-100-ai-tools-using-a-single-mcp-server-4agc</guid>
      <description>&lt;p&gt;If you're using Claude Desktop for coding, research, or content creation, you probably know about MCP (Model Context Protocol) servers. They let Claude call external tools — but most MCP servers only do one thing. Today I'll show you how to connect Claude Desktop to a single MCP server that gives you access to 100+ AI tools, from OCR to text-to-speech to image generation.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is GoldBean?
&lt;/h2&gt;

&lt;p&gt;GoldBean is a pay-per-call MCP server that aggregates AI tools from multiple providers. Instead of managing 10 different API keys and billing dashboards, you connect once and Claude can route tool calls to the right backend service automatically.&lt;/p&gt;

&lt;p&gt;Supported tools include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;OCR (document &amp;amp; image text extraction)&lt;/li&gt;
&lt;li&gt;TTS (text-to-speech)&lt;/li&gt;
&lt;li&gt;ASR (automatic speech recognition)&lt;/li&gt;
&lt;li&gt;Translation&lt;/li&gt;
&lt;li&gt;LLM Chat&lt;/li&gt;
&lt;li&gt;Image recognition &amp;amp; generation&lt;/li&gt;
&lt;li&gt;And 90+ more&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Connecting Claude Desktop
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Open Claude Desktop and go to &lt;strong&gt;Settings&lt;/strong&gt; → &lt;strong&gt;Developer&lt;/strong&gt; → &lt;strong&gt;Edit Config&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Add the following MCP server configuration:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"mcpServers"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"goldbean"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"command"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"npx"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"args"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"-y"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"@modelcontextprotocol/server-sse"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://goldbean-api.xyz/sse"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Restart Claude Desktop. You should see the GoldBean tools appear in the tool picker.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  How Pricing Works
&lt;/h2&gt;

&lt;p&gt;GoldBean uses a pay-per-call model:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Free tier&lt;/strong&gt;: 50 calls per day&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Paid calls&lt;/strong&gt;: As low as $0.01 per request&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Payment methods&lt;/strong&gt;: Base USDC (via x402 protocol), PayPal, or Alipay&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No KYC&lt;/strong&gt; required for crypto payments&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This means you can experiment for free, and only pay when you scale beyond the daily limit.&lt;/p&gt;

&lt;h2&gt;
  
  
  Example Use Case
&lt;/h2&gt;

&lt;p&gt;I recently needed to extract text from a 20-page scanned PDF, generate a voiceover for the summary, and translate it to Spanish. Instead of signing up for three separate services, I just asked Claude to do it — all through the GoldBean MCP server.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try It Out
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;MCP endpoint: &lt;code&gt;https://goldbean-api.xyz/sse&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Full documentation: &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;https://goldbean-api.xyz&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Also available on: &lt;a href="https://mcpize.com" rel="noopener noreferrer"&gt;MCPize&lt;/a&gt; | &lt;a href="https://glama.ai" rel="noopener noreferrer"&gt;Glama&lt;/a&gt; | &lt;a href="https://smithery.ai/servers/wuzenghai616/goldbean" rel="noopener noreferrer"&gt;Smithery&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Have you tried building with MCP servers yet? Drop a comment with your favorite use case.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;This post was written to share a useful developer tool I built. No affiliation with Claude Desktop or Anthropic.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>mcp</category>
      <category>claude</category>
      <category>ai</category>
      <category>api</category>
    </item>
    <item>
      <title>x402 Micropayments for AI Agents: A Step-by-Step Tutorial (2026)</title>
      <dc:creator>goldbean</dc:creator>
      <pubDate>Sat, 04 Jul 2026 05:19:01 +0000</pubDate>
      <link>https://dev.to/goldbean/x402-micropayments-for-ai-agents-a-step-by-step-tutorial-2026-2k6b</link>
      <guid>https://dev.to/goldbean/x402-micropayments-for-ai-agents-a-step-by-step-tutorial-2026-2k6b</guid>
      <description>&lt;h2&gt;
  
  
  What is x402 and Why Should You Care?
&lt;/h2&gt;

&lt;p&gt;You've probably seen &lt;code&gt;HTTP 402 Payment Required&lt;/code&gt; in old HTTP spec docs and wondered what it's for. Turns out, it was waiting for AI agents.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;x402&lt;/strong&gt; is a protocol where an API returns &lt;code&gt;402 Payment Required&lt;/code&gt; with a price instead of denying access. Your AI agent reads the price, attaches a USDC payment (one microtransaction on Base network), and gets the data. No API keys, no monthly subscriptions, no signup flow.&lt;/p&gt;

&lt;p&gt;But the real magic? &lt;strong&gt;AI agents can discover and pay for APIs autonomously&lt;/strong&gt; — no human in the loop.&lt;/p&gt;

&lt;h2&gt;
  
  
  How x402 Works in Practice
&lt;/h2&gt;

&lt;p&gt;Here's the flow:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;1. Agent → API:    GET /data
2. API → Agent:    402 Payment Required — $0.01
3. Agent → Chain:  Signed USDC transfer (Base network)
4. Agent → API:    GET /data (with x402-payment header)
5. API → Agent:    200 OK + response data
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The whole round trip takes about 2 seconds.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Discover x402 Endpoints
&lt;/h2&gt;

&lt;p&gt;Before your agent can call APIs, it needs to find them. The x402 ecosystem has several discovery services:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Circle Agent Marketplace&lt;/strong&gt; (42 services, 644 endpoints):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://agents.circle.com/services
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;402 Index&lt;/strong&gt; (protocol-agnostic directory):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://402index.io
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;BlockRun&lt;/strong&gt; (600+ indexed x402 services):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://blockrun.ai/marketplace
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Most x402 services also expose a &lt;code&gt;/.well-known/x402-bazaar&lt;/code&gt; endpoint listing supported currencies, pricing, and wallet addresses:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-s&lt;/span&gt; https://goldbean-api.xyz/.well-known/x402-bazaar | jq
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Which returns:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"GoldBean API"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"version"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"8.0.0"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"currencies"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"USDC"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"network"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"base"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"decimals"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"contract"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"0x833589fcd6edb6e08f4c7c32d4f71b54bdA02913"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"pricing"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"standard"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"price"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;0.99&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"currency"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"USDC"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"unit"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"per request"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"bulk_100"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"price"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;49&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"currency"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"USDC"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"unit"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"100 requests"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"valid_days"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;30&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"bulk_500"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"price"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;199&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"currency"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"USDC"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"unit"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"500 requests"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"valid_days"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;90&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"payment_methods"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"x402"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"paypal"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"alipay"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"wallet"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"0x7484b0bca25d2ee56e9b0535572d4cf44a047d98"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"network"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"eip155:8453"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"endpoint"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://goldbean-api.xyz"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 2: Pay with x402 via curl
&lt;/h2&gt;

&lt;p&gt;First, check the price by sending a request without payment:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-v&lt;/span&gt; &lt;span class="nt"&gt;-X&lt;/span&gt; POST &lt;span class="s2"&gt;"https://goldbean-api.xyz/paid/baidu-ocr-accurate"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-F&lt;/span&gt; &lt;span class="s2"&gt;"image=@test.jpg"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You'll get a &lt;code&gt;402 Payment Required&lt;/code&gt; with the exact price.&lt;/p&gt;

&lt;p&gt;To pay, sign a USDC transfer on Base network using your wallet. Here's the x402 header format:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;x402-payment: &amp;lt;signed-transaction-hex&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For automated payments, use the Circle SDK:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm i @circle-fin/x402-batching
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;createClientMiddleware&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;@circle-fin/x402-batching/client&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;client&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;createClientMiddleware&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
  &lt;span class="na"&gt;signer&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;myWalletSigner&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nf"&gt;fetch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;https://goldbean-api.xyz/paid/baidu-ocr-accurate&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;method&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;POST&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;body&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;formData&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="p"&gt;...&lt;/span&gt;&lt;span class="nx"&gt;client&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;No API keys. No signup. Just a wallet and USDC.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Build an x402 Agent in Python
&lt;/h2&gt;

&lt;p&gt;Here's a complete AI agent that calls Baidu OCR via x402, running in a loop to process documents:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;
&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="n"&gt;web3&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;Web3&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;

&lt;span class="c1"&gt;# Connect to Base
&lt;/span&gt;&lt;span class="n"&gt;w3&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nc"&gt;Web3&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Web3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;HTTPProvider&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://mainnet.base.org&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;span class="n"&gt;account&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;w3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;eth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;account&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;from_key&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;YOUR_PRIVATE_KEY&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;# USDC contract on Base
&lt;/span&gt;&lt;span class="n"&gt;USDC&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;0x833589fcd6edb6e08f4c7c32d4f71b54bdA02913&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
&lt;span class="n"&gt;usdc&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;w3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;eth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;contract&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;address&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;USDC&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;abi&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;constant&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="bp"&gt;False&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;inputs&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;name&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;_to&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;address&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;name&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;_value&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;uint256&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;],&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;name&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;transfer&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;function&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;}]&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;call_with_x402&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;amount_usdc&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="sh"&gt;"""&lt;/span&gt;&lt;span class="s"&gt;Make an x402 payment and call the API.&lt;/span&gt;&lt;span class="sh"&gt;"""&lt;/span&gt;

    &lt;span class="c1"&gt;# Build USDC transfer (6 decimals)
&lt;/span&gt;    &lt;span class="n"&gt;tx&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;usdc&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;functions&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;transfer&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;0x7484b0bca25d2ee56e9b0535572d4cf44a047d98&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="nf"&gt;int&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;amount_usdc&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="o"&gt;**&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;build_transaction&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;chainId&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;8453&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;gas&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;65000&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;gasPrice&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;w3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;eth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;gas_price&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;nonce&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;w3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;eth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get_transaction_count&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;account&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;address&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
    &lt;span class="p"&gt;})&lt;/span&gt;

    &lt;span class="c1"&gt;# Sign and send
&lt;/span&gt;    &lt;span class="n"&gt;signed&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;account&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;sign_transaction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tx&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;tx_hash&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;w3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;eth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;send_raw_transaction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;signed&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;raw_transaction&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;receipt&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;w3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;eth&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;wait_for_transaction_receipt&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tx_hash&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="c1"&gt;# Call API with payment proof
&lt;/span&gt;    &lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;post&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;headers&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;x402-payment&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;receipt&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;transactionHash&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;hex&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
    &lt;span class="p"&gt;})&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

&lt;span class="c1"&gt;# OCR a batch of documents
&lt;/span&gt;&lt;span class="n"&gt;documents&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;invoice_1.jpg&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;invoice_2.jpg&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;receipt_3.jpg&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;doc&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;documents&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;call_with_x402&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://goldbean-api.xyz/paid/baidu-ocr-accurate&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;image&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nf"&gt;open&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;doc&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;rb&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)},&lt;/span&gt;
        &lt;span class="mf"&gt;0.01&lt;/span&gt;  &lt;span class="c1"&gt;# $0.01 per call
&lt;/span&gt;    &lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;doc&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;: &lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;result&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="s"&gt;words_result&lt;/span&gt;&lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;[])[&lt;/span&gt;&lt;span class="si"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 4: Let AI Agents Discover Your API
&lt;/h2&gt;

&lt;p&gt;If you have an API, you can turn it into an x402 storefront in minutes. Here's what you need:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;A wallet on Base network with USDC&lt;/li&gt;
&lt;li&gt;Add x402 middleware (Circle SDK or custom implementation)&lt;/li&gt;
&lt;li&gt;Serve a &lt;code&gt;/.well-known/x402-bazaar&lt;/code&gt; discovery endpoint
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Minimal x402 middleware for Express&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;createGatewayMiddleware&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;@circle-fin/x402-batching/server&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;gateway&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;createGatewayMiddleware&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
  &lt;span class="na"&gt;sellerAddress&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;0xYOUR_WALLET&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;/data&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nx"&gt;gateway&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;$0.01&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;  &lt;span class="c1"&gt;// Price: $0.01 per call&lt;/span&gt;
  &lt;span class="nx"&gt;handler&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That's it. Three lines and your API becomes discoverable by every x402-aware AI agent in the ecosystem.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why x402 Matters for AI Agents
&lt;/h2&gt;

&lt;p&gt;The Circle Agent Marketplace already lists 42 services with 644 endpoints. BlockRun indexes 600+ services. Every one of them is pay-per-call via x402.&lt;/p&gt;

&lt;p&gt;This is the emerging payment standard for AI agent-to-API communication:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;No signup friction&lt;/strong&gt;: Agents don't fill out forms&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No minimums&lt;/strong&gt;: Pay $0.01 for a single call&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No API key management&lt;/strong&gt;: The wallet is the credential&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cross-platform&lt;/strong&gt;: Works across Base, Solana, and Stripe/Tempo (MPP)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try It Now
&lt;/h2&gt;

&lt;p&gt;The easiest way to experience x402 is to make a single call to an x402-enabled API:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Step 1: Check the price (expect 402)&lt;/span&gt;
curl &lt;span class="nt"&gt;-s&lt;/span&gt; &lt;span class="nt"&gt;-o&lt;/span&gt; /dev/null &lt;span class="nt"&gt;-w&lt;/span&gt; &lt;span class="s2"&gt;"%{http_code}"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="s2"&gt;"https://goldbean-api.xyz/.well-known/x402-bazaar"&lt;/span&gt;
&lt;span class="c"&gt;# → 200 (bazaar endpoint is free)&lt;/span&gt;

&lt;span class="c"&gt;# Step 2: Pick your stack&lt;/span&gt;
&lt;span class="c"&gt;# - curl + Circle SDK for quick testing&lt;/span&gt;
&lt;span class="c"&gt;# - Python + web3.py for automation&lt;/span&gt;
&lt;span class="c"&gt;# - Node.js + x402-batching for production&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;GoldBean API supports x402 alongside PayPal and Alipay — one of the few marketplaces with all three payment rails. Try it at &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;goldbean-api.xyz&lt;/a&gt;.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;GoldBean is a pay-per-call API marketplace supporting x402 (USDC on Base), PayPal, and Alipay. Pricing starts at $0.01/call with bulk discounts available. Companion MCP server: &lt;code&gt;npx goldbean-mcp&lt;/code&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>x402</category>
      <category>micropayments</category>
      <category>tutorial</category>
      <category>web3</category>
    </item>
    <item>
      <title>How to Use Baidu's Unlimited OCR from Anywhere in the World (2026)</title>
      <dc:creator>goldbean</dc:creator>
      <pubDate>Sat, 04 Jul 2026 04:15:06 +0000</pubDate>
      <link>https://dev.to/goldbean/how-to-use-baidus-unlimited-ocr-from-anywhere-in-the-world-2026-4f8d</link>
      <guid>https://dev.to/goldbean/how-to-use-baidus-unlimited-ocr-from-anywhere-in-the-world-2026-4f8d</guid>
      <description>&lt;h2&gt;
  
  
  What is Baidu Unlimited OCR?
&lt;/h2&gt;

&lt;p&gt;Earlier this year, Baidu open-sourced &lt;strong&gt;Unlimited OCR&lt;/strong&gt; under the MIT license — a model that can read dozens of pages of text in a single pass. It handles everything from printed Chinese invoices to handwritten English forms, all without splitting each page individually.&lt;/p&gt;

&lt;p&gt;Sounds amazing, right? There's just one problem.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Catch: You Need a Chinese Phone Number
&lt;/h2&gt;

&lt;p&gt;To use Baidu's cloud APIs directly, you need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A Chinese mainland phone number (实名认证 / real-name verification)&lt;/li&gt;
&lt;li&gt;A Chinese ID or passport scan in some cases&lt;/li&gt;
&lt;li&gt;A WeChat or Alipay account with a Chinese bank card to add funds&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Just search "Baidu OCR API without Chinese phone" on any developer forum and you'll find dozens of threads. Developers from the US, Europe, and Southeast Asia all share the same frustration: the technology is world-class, but the onboarding is region-locked.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Solution: One Curl Command, No Registration
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;&lt;strong&gt;GoldBean API&lt;/strong&gt;&lt;/a&gt; bridges this gap. It gives you instant access to Baidu's full AI suite — no Chinese phone number, no real-name verification, no credit card minimums.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-X&lt;/span&gt; POST &lt;span class="s2"&gt;"https://goldbean-api.xyz/paid/baidu-ocr-accurate"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-F&lt;/span&gt; &lt;span class="s2"&gt;"image=@document.jpg"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That's it. One command, and you get back structured text from your image.&lt;/p&gt;

&lt;h2&gt;
  
  
  Code Example: Processing a Chinese Invoice with Fetch
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;formData&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;FormData&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="nx"&gt;formData&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;append&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;image&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;imageFile&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nf"&gt;fetch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;https://goldbean-api.xyz/paid/baidu-ocr-accurate&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;method&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;POST&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;body&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;formData&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;words_result&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The same pattern works for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;身份证识别 (ID card OCR)&lt;/li&gt;
&lt;li&gt;发票识别 (invoice OCR)&lt;/li&gt;
&lt;li&gt;通用文字识别 (general text OCR)&lt;/li&gt;
&lt;li&gt;表格识别 (table OCR)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Beyond OCR: The Full Baidu AI Suite
&lt;/h2&gt;

&lt;p&gt;GoldBean exposes Baidu's entire AI catalog without any registration friction:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Service&lt;/th&gt;
&lt;th&gt;Endpoint&lt;/th&gt;
&lt;th&gt;Use Case&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;OCR Accurate&lt;/td&gt;
&lt;td&gt;/paid/baidu-ocr-accurate&lt;/td&gt;
&lt;td&gt;High-accuracy text extraction&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Translation&lt;/td&gt;
&lt;td&gt;/paid/baidu-translate&lt;/td&gt;
&lt;td&gt;200+ language pairs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TTS&lt;/td&gt;
&lt;td&gt;/paid/baidu-tts&lt;/td&gt;
&lt;td&gt;Text-to-speech (Chinese + English)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ASR&lt;/td&gt;
&lt;td&gt;/paid/baidu-asr&lt;/td&gt;
&lt;td&gt;Speech-to-text recognition&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ERNIE Bot&lt;/td&gt;
&lt;td&gt;/paid/baidu-llm-chat&lt;/td&gt;
&lt;td&gt;Baidu's flagship LLM&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Image Recognition&lt;/td&gt;
&lt;td&gt;/paid/baidu-image-recognition&lt;/td&gt;
&lt;td&gt;Object/scene detection&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Face Detection&lt;/td&gt;
&lt;td&gt;/paid/baidu-face-detect&lt;/td&gt;
&lt;td&gt;Face analysis &amp;amp; detection&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;NLP&lt;/td&gt;
&lt;td&gt;/paid/baidu-nlp&lt;/td&gt;
&lt;td&gt;Sentiment, grammar, entity extraction&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Three Payment Methods: Pick What Works for You
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. x402 (USDC micro-payments)&lt;/strong&gt; — Each API call costs $0.01-0.08, deducted in real-time. No subscription, no minimum balance. Perfect for experimenters and small projects.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. PayPal&lt;/strong&gt; — Standard pay-as-you-go. Top up with your PayPal account.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Alipay&lt;/strong&gt; — For users who prefer Alipay.&lt;/p&gt;

&lt;p&gt;GoldBean is one of the few API marketplaces that supports all three payment rails simultaneously.&lt;/p&gt;

&lt;h2&gt;
  
  
  What You Can Build
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;A cross-border invoicing app that extracts Chinese invoice data automatically&lt;/li&gt;
&lt;li&gt;A travel assistant that translates menus and signs via OCR + translation&lt;/li&gt;
&lt;li&gt;A compliance tool that reads Chinese ID cards and passports&lt;/li&gt;
&lt;li&gt;An accessibility tool that converts Chinese text to speech&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try It Now
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# OCR a document&lt;/span&gt;
curl &lt;span class="nt"&gt;-X&lt;/span&gt; POST &lt;span class="s2"&gt;"https://goldbean-api.xyz/paid/baidu-ocr-accurate"&lt;/span&gt; &lt;span class="nt"&gt;-F&lt;/span&gt; &lt;span class="s2"&gt;"image=@test.jpg"&lt;/span&gt;

&lt;span class="c"&gt;# Translate a phrase&lt;/span&gt;
curl &lt;span class="nt"&gt;-X&lt;/span&gt; POST &lt;span class="s2"&gt;"https://goldbean-api.xyz/paid/baidu-translate"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Content-Type: application/json"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s1"&gt;'{"text": "\u4f60\u597d\u4e16\u754c", "from": "zh", "to": "en"}'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;No signup. No Chinese phone number. Just your API key and a payment method.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;GoldBean API is a pay-per-use AI API marketplace. Prices range from $0.01 to $0.08 per call depending on the service. Visit &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;goldbean-api.xyz&lt;/a&gt; for the full catalog.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>baidu</category>
      <category>ocr</category>
      <category>api</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How to Use Baidu Unlimited OCR from Anywhere in the World (2026)</title>
      <dc:creator>goldbean</dc:creator>
      <pubDate>Sat, 04 Jul 2026 04:10:50 +0000</pubDate>
      <link>https://dev.to/goldbean/how-to-use-baidu-unlimited-ocr-from-anywhere-in-the-world-2026-3hem</link>
      <guid>https://dev.to/goldbean/how-to-use-baidu-unlimited-ocr-from-anywhere-in-the-world-2026-3hem</guid>
      <description>&lt;h1&gt;
  
  
  How to Use Baidu Unlimited OCR from Anywhere in the World (2026)
&lt;/h1&gt;

&lt;p&gt;Last week, Baidu open-sourced &lt;strong&gt;Unlimited-OCR&lt;/strong&gt; under the MIT license — a model that can transcribe dozens of pages in a single forward pass, using a novel "glance attention" mechanism inspired by how humans copy documents.&lt;/p&gt;

&lt;p&gt;This is exciting for document digitization and form processing. But there's a catch many international developers don't realize: &lt;strong&gt;registering for Baidu AI APIs from outside China is a real obstacle.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The Pain Point
&lt;/h2&gt;

&lt;p&gt;To use Baidu's OCR through their official API, you need:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;A &lt;strong&gt;Chinese phone number&lt;/strong&gt; for SMS verification&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Real-name authentication&lt;/strong&gt; (身份证实名认证)&lt;/li&gt;
&lt;li&gt;A &lt;strong&gt;Chinese bank card or Alipay account&lt;/strong&gt; for deposits&lt;/li&gt;
&lt;li&gt;Minimum pre-payment of ¥100+ (+) before your first call&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If you're a developer in the US, Europe, or Southeast Asia — or really anywhere without a 中国手机号 — this is a showstopper. Even with a VPN, the Baidu AI platform requires Chinese ID for paid tiers.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Baidu Unlimited-OCR Actually Is
&lt;/h2&gt;

&lt;p&gt;Unlimited-OCR is an open-source model (MIT license) that processes entire multi-page documents in one pass. It achieves 96%+ accuracy on Chinese text using a transformer architecture with a "glance attention" mechanism — the model maintains a context of previously transcribed regions so it doesn't re-scan everything on each page.&lt;/p&gt;

&lt;p&gt;Key specs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Processes dozens of document pages in one forward pass&lt;/li&gt;
&lt;li&gt;MIT licensed — fully open source&lt;/li&gt;
&lt;li&gt;96%+ accuracy on Chinese printed text&lt;/li&gt;
&lt;li&gt;Supports English, Japanese, and mixed-language documents&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The model weights are on GitHub, but running it yourself requires significant GPU resources. Many developers prefer an API-based approach.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Workaround: GoldBean
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;GoldBean&lt;/a&gt; is a pay-per-use API marketplace that wraps Baidu's AI APIs behind a simple REST interface. The key differentiator: &lt;strong&gt;you don't need a Chinese phone number or ID to use it.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Try it with curl:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ash&lt;br&gt;
curl -X POST https://goldbean-api.xyz/paid/baidu-ocr \&lt;br&gt;
  -H "Content-Type: application/json" \&lt;br&gt;
  -H "x-api-key: YOUR_KEY" \&lt;br&gt;
  -d '{"image": "https://example.com/doc.jpg"}'&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;In Python:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;python&lt;br&gt;
import requests&lt;br&gt;
resp = requests.post(&lt;br&gt;
    "https://goldbean-api.xyz/paid/baidu-ocr",&lt;br&gt;
    json={"image": "https://example.com/doc.jpg"},&lt;br&gt;
    headers={"x-api-key": "YOUR_KEY"}&lt;br&gt;
)&lt;br&gt;
print(resp.json()["words_result"])&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Pricing vs Baidu Direct
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Baidu Direct&lt;/th&gt;
&lt;th&gt;GoldBean&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Registration&lt;/td&gt;
&lt;td&gt;Chinese phone + ID&lt;/td&gt;
&lt;td&gt;Email only&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Min deposit&lt;/td&gt;
&lt;td&gt;¥100 ()&lt;/td&gt;
&lt;td&gt;(free tier)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Per call&lt;/td&gt;
&lt;td&gt;¥0.02-0.05&lt;/td&gt;
&lt;td&gt;.01-0.02&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Payment&lt;/td&gt;
&lt;td&gt;Alipay/WeChat (CN only)&lt;/td&gt;
&lt;td&gt;USDC, PayPal, Alipay&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Free tier&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;td&gt;50 calls/day&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Global&lt;/td&gt;
&lt;td&gt;China VPN often needed&lt;/td&gt;
&lt;td&gt;Works worldwide&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Beyond OCR
&lt;/h2&gt;

&lt;p&gt;GoldBean also offers Baidu Translation, TTS, NLP, Face Detection, and PaddleOCR-VL — all through the same no-hassle registration. 120+ endpoints in total.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try it:&lt;/strong&gt; &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;goldbean-api.xyz&lt;/a&gt; — no phone number, no ID, no deposit. 50 free calls/day.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Have you tried Baidu's Unlimited-OCR? Drop your experience below.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;GoldBean (GB) — Wishing You Good Fortune &amp;amp; Prosperity 🫘&lt;/em&gt;&lt;/p&gt;

</description>
      <category>baidu</category>
      <category>ocr</category>
      <category>opensource</category>
      <category>api</category>
    </item>
    <item>
      <title>GoldBean OCR + Translation Pipeline: Processing Chinese Documents in 10 Lines of Python</title>
      <dc:creator>goldbean</dc:creator>
      <pubDate>Sun, 28 Jun 2026 10:15:51 +0000</pubDate>
      <link>https://dev.to/goldbean/goldbean-ocr-translation-pipeline-processing-chinese-documents-in-10-lines-of-python-140k</link>
      <guid>https://dev.to/goldbean/goldbean-ocr-translation-pipeline-processing-chinese-documents-in-10-lines-of-python-140k</guid>
      <description>&lt;p&gt;Ever struggled with Chinese document processing? Between expensive services and complex SDKs, it's a pain. Let me show you how GoldBean API handles this in 10 lines of Python.&lt;/p&gt;

&lt;h2&gt;
  
  
  What You'll Need
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;A GoldBean API key (free tier: 1000 requests/month)&lt;/li&gt;
&lt;li&gt;Python 3.7+&lt;/li&gt;
&lt;li&gt;An image URL or local file with Chinese text&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 1: OCR (Extract Chinese Text)
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;

&lt;span class="n"&gt;API_BASE&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://goldbean-api.xyz/paid&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
&lt;span class="n"&gt;API_KEY&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;your-key-here&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;  &lt;span class="c1"&gt;# Get yours at https://goldbean-api.xyz
&lt;/span&gt;
&lt;span class="c1"&gt;# OCR an image with Chinese text
&lt;/span&gt;&lt;span class="n"&gt;image_url&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://example.com/chinese-doc.jpg&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
&lt;span class="n"&gt;ocr_resp&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;post&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;API_BASE&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;/ocr&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;image_url&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;image_url&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;api_key&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;API_KEY&lt;/span&gt;
&lt;span class="p"&gt;}).&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

&lt;span class="n"&gt;chinese_text&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;ocr_resp&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;""&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Extracted: &lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;chinese_text&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="si"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;...&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 2: Translate (Chinese → English)
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="c1"&gt;# Translate the extracted Chinese text
&lt;/span&gt;&lt;span class="n"&gt;translation&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;post&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;API_BASE&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;/translate&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;chinese_text&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;source&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;zh&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;target&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;en&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;api_key&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;API_KEY&lt;/span&gt;
&lt;span class="p"&gt;}).&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

&lt;span class="n"&gt;english_text&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;translation&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;translated_text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;""&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Translated: &lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;english_text&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="si"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;...&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 3: TTS (Read It Aloud)
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="c1"&gt;# Convert Chinese text to speech
&lt;/span&gt;&lt;span class="n"&gt;tts&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;post&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;API_BASE&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;/tts&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;chinese_text&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;voice&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;baidu-zh&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;api_key&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;API_KEY&lt;/span&gt;
&lt;span class="p"&gt;}).&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Audio URL: &lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;tts&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="s"&gt;audio_url&lt;/span&gt;&lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Full Pipeline in One Script
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;process_chinese_doc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;image_url&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;api_key&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="n"&gt;base&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://goldbean-api.xyz/paid&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="n"&gt;headers&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Content-Type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;application/json&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="c1"&gt;# OCR
&lt;/span&gt;    &lt;span class="n"&gt;ocr&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;post&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;base&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;/ocr&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;image_url&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;image_url&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;api_key&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;api_key&lt;/span&gt;&lt;span class="p"&gt;}).&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
    &lt;span class="n"&gt;text&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;ocr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;""&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="c1"&gt;# Translate
&lt;/span&gt;    &lt;span class="n"&gt;trans&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;post&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;base&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;/translate&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;text&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;source&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;zh&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;target&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;en&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;api_key&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;api_key&lt;/span&gt;&lt;span class="p"&gt;}).&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

    &lt;span class="c1"&gt;# Analyze sentiment
&lt;/span&gt;    &lt;span class="n"&gt;sentiment&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;post&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;base&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;/sentiment&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;text&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;api_key&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;api_key&lt;/span&gt;&lt;span class="p"&gt;}).&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;original_text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;text&lt;/span&gt;&lt;span class="p"&gt;[:&lt;/span&gt;&lt;span class="mi"&gt;500&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;translation&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;trans&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;translated_text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;""&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;sentiment&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;sentiment&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;sentiment&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;unknown&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;# Try it with a sample
&lt;/span&gt;&lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;process_chinese_doc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://i.imgur.com/sample-chinese-doc.jpg&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;YOUR_API_KEY&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;dumps&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;result&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;indent&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;ensure_ascii&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;False&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Why GoldBean?
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;GoldBean&lt;/th&gt;
&lt;th&gt;Baidu Direct&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Pricing&lt;/td&gt;
&lt;td&gt;$0.01/call&lt;/td&gt;
&lt;td&gt;$100 deposit + usage&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Payment&lt;/td&gt;
&lt;td&gt;Pay-as-you-go&lt;/td&gt;
&lt;td&gt;Prepaid account&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Setup&lt;/td&gt;
&lt;td&gt;API key only&lt;/td&gt;
&lt;td&gt;SDK + auth&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Free tier&lt;/td&gt;
&lt;td&gt;1000 req/month&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Try it:&lt;/strong&gt; &lt;a href="https://goldbean-api.xyz/docs" rel="noopener noreferrer"&gt;https://goldbean-api.xyz/docs&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;em&gt;GoldBean — $0.01 per call, no monthly fees, no deposits. 120+ endpoints in 26 categories.&lt;/em&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;💡 Have you tried GoldBean? Get 50 free API calls/day at &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;goldbean-api.xyz&lt;/a&gt; — no credit card needed. Questions? Drop a comment below!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;🫘 GoldBean — Pay-per-Use AI API Marketplace. Wishing You Good Fortune &amp;amp; Prosperity.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>python</category>
      <category>ocr</category>
      <category>api</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>AI Agent 自动化交易</title>
      <dc:creator>goldbean</dc:creator>
      <pubDate>Sun, 21 Jun 2026 06:26:11 +0000</pubDate>
      <link>https://dev.to/goldbean/ai-agent-zi-dong-hua-jiao-yi-32ka</link>
      <guid>https://dev.to/goldbean/ai-agent-zi-dong-hua-jiao-yi-32ka</guid>
      <description>&lt;h1&gt;
  
  
  AI Agent 自动化交易：用 GoldBean MCP + x402 搭建零人力交易机器人 🤖💰
&lt;/h1&gt;

&lt;h2&gt;
  
  
  痛点
&lt;/h2&gt;

&lt;p&gt;手动盯盘、手动下单、手动结算 — 交易员每天 80% 的时间花在重复操作上。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;如果 Agent 能自动监控价格、自动搜索新闻、自动执行交易呢？&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;这就是 GoldBean MCP 要解决的问题。&lt;/p&gt;

&lt;h2&gt;
  
  
  什么是 GoldBean MCP？
&lt;/h2&gt;

&lt;p&gt;GoldBean MCP Server 提供 10 个生产级 AI API，专为 autonomous agents 设计：&lt;/p&gt;

&lt;p&gt;| 工具 | 用途 | 调用费用 |&lt;/p&gt;

&lt;h2&gt;
  
  
  |
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;💡 Have you tried GoldBean? Get 50 free API calls/day at &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;goldbean-api.xyz&lt;/a&gt; — no credit card needed. Questions? Drop a comment below!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;🫘 GoldBean — Pay-per-Use AI API Marketplace. Wishing You Good Fortune &amp;amp; Prosperity.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>mcp</category>
      <category>agents</category>
      <category>fintech</category>
      <category>x402</category>
    </item>
    <item>
      <title>GoldBean Just Got Listed in public-apis (39.8k⭐) &amp; awesome-mcp-servers — Here's How</title>
      <dc:creator>goldbean</dc:creator>
      <pubDate>Sat, 20 Jun 2026 09:37:50 +0000</pubDate>
      <link>https://dev.to/goldbean/goldbean-just-got-listed-in-public-apis-398k-awesome-mcp-servers-heres-how-1gae</link>
      <guid>https://dev.to/goldbean/goldbean-just-got-listed-in-public-apis-398k-awesome-mcp-servers-heres-how-1gae</guid>
      <description>&lt;p&gt;I launched &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;GoldBean&lt;/a&gt; — an x402 micropaid API marketplace — a few weeks ago. Today, it's been listed in two of the largest GitHub curated lists:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;&lt;a href="https://github.com/public-apis/public-apis" rel="noopener noreferrer"&gt;public-apis/public-apis&lt;/a&gt;&lt;/strong&gt; (39,800+ stars)&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;&lt;a href="https://github.com/punkpeye/awesome-mcp-servers" rel="noopener noreferrer"&gt;punkpeye/awesome-mcp-servers&lt;/a&gt;&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;⏳ &lt;strong&gt;MCPize&lt;/strong&gt; — onboarding in progress&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here's the play-by-play of how each listing happened and what I learned.&lt;/p&gt;




&lt;h2&gt;
  
  
  📍 public-apis — The Big One
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What It Is
&lt;/h3&gt;

&lt;p&gt;The most-starred API directory on GitHub (39.8k⭐). If your API is here, thousands of developers will discover it.&lt;/p&gt;

&lt;h3&gt;
  
  
  How It Happened
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/dajiaohuang" rel="noopener noreferrer"&gt;@dajiaohuang&lt;/a&gt;, a researcher from NUS Singapore, discovered GoldBean and &lt;strong&gt;volunteered&lt;/strong&gt; to submit a PR (#6357). He saw the value in the x402 pay-per-call model and took the initiative.&lt;/p&gt;

&lt;p&gt;Within a few days, the PR was merged and GoldBean appeared in the &lt;a href="https://github.com/public-apis/public-apis" rel="noopener noreferrer"&gt;README&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Lesson Learned
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Build something genuinely useful, and the community will promote it for you.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This wasn't a cold email or spam. Someone found the API, liked it, and submitted it. The best listing strategy is a product that solves a real problem.&lt;/p&gt;




&lt;h2&gt;
  
  
  📍 awesome-mcp-servers — The MCP Gateway
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What It Is
&lt;/h3&gt;

&lt;p&gt;The go-to directory for MCP servers — tools that AI Agents (Claude, Cursor, Cline, etc.) can use directly.&lt;/p&gt;

&lt;h3&gt;
  
  
  How It Happened
&lt;/h3&gt;

&lt;p&gt;The first PR I submitted (#7439) is still open. But someone else submitted PR #8212 independently, and the repo maintainer &lt;strong&gt;punkpeye&lt;/strong&gt; merged it after confirming: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"Added the Glama score badge — your server passes all checks."&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is now visible in the &lt;a href="https://github.com/punkpeye/awesome-mcp-servers" rel="noopener noreferrer"&gt;README&lt;/a&gt; with a Glama score badge.&lt;/p&gt;

&lt;h3&gt;
  
  
  Lesson Learned
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;When your product is discoverable, you don't control who submits it to which directory — and that's a good sign.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Having multiple independent submissions is stronger than a single curated PR.&lt;/p&gt;




&lt;h2&gt;
  
  
  📍 MCPize — The Platform Native to x402
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What It Is
&lt;/h3&gt;

&lt;p&gt;A marketplace where MCP servers are listed and can charge by usage — the perfect fit for x402 micropaid APIs.&lt;/p&gt;

&lt;h3&gt;
  
  
  Current Status
&lt;/h3&gt;

&lt;p&gt;MCPize is processing our listing. The emails have arrived:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ Welcome email&lt;/li&gt;
&lt;li&gt;✅ Quality check passed ("1 thing to improve" flagged)&lt;/li&gt;
&lt;li&gt;✅ Getting started guide&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This one is still in progress but shows promise.&lt;/p&gt;




&lt;h2&gt;
  
  
  🛠 What I Did for the Listings
&lt;/h2&gt;

&lt;p&gt;Actually, very little:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Built a working product&lt;/strong&gt; — 120+ API endpoints, pay-per-call via x402&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Made it easy to discover&lt;/strong&gt; — &lt;code&gt;npx goldbean-mcp&lt;/code&gt; installs in 1 command&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Submitted PRs&lt;/strong&gt; — A few manual PRs to relevant directories&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The rest happened organically&lt;/strong&gt; — someone else found it and submitted it&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  📊 Current Status Board
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Directory&lt;/th&gt;
&lt;th&gt;Status&lt;/th&gt;
&lt;th&gt;Stars&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;public-apis&lt;/td&gt;
&lt;td&gt;✅ Listed&lt;/td&gt;
&lt;td&gt;39.8k⭐&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;awesome-mcp-servers&lt;/td&gt;
&lt;td&gt;✅ Listed&lt;/td&gt;
&lt;td&gt;—&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;MCPize&lt;/td&gt;
&lt;td&gt;⏳ Onboarding&lt;/td&gt;
&lt;td&gt;—&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;awesome-agentic-commerce #301&lt;/td&gt;
&lt;td&gt;⏳ Open PR&lt;/td&gt;
&lt;td&gt;—&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Awesome-MCP-ZH #297&lt;/td&gt;
&lt;td&gt;⏳ Open PR&lt;/td&gt;
&lt;td&gt;—&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;awesome-ocr #150&lt;/td&gt;
&lt;td&gt;⏳ Open PR&lt;/td&gt;
&lt;td&gt;—&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;awesome-x402-mcp-services #20&lt;/td&gt;
&lt;td&gt;⏳ Open PR&lt;/td&gt;
&lt;td&gt;—&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  🏆 What This Means for GoldBean Users
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;Social proof&lt;/strong&gt; — 39.8k⭐ repo vetted this API&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Glama score badge&lt;/strong&gt; — automated quality check passed&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;More discovery&lt;/strong&gt; — developers browsing these lists will find GoldBean&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Free daily tier&lt;/strong&gt; — still offering 50 free calls/day, no wallet needed&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🫘 Try GoldBean
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx goldbean-mcp
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;No signup. No API key. Just install and ask your AI agent to use it.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;em&gt;GoldBean (GB) — Wishing You Good Fortune &amp;amp; Prosperity 🫘 祝您吉祥如意&lt;/em&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;💡 Have you tried GoldBean? Get 50 free API calls/day at &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;goldbean-api.xyz&lt;/a&gt; — no credit card needed. Questions? Drop a comment below!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;🫘 GoldBean — Pay-per-Use AI API Marketplace. Wishing You Good Fortune &amp;amp; Prosperity.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>goldbean</category>
      <category>api</category>
      <category>opensource</category>
      <category>x402</category>
    </item>
    <item>
      <title>GoldBean Just Landed on MCPize + Stripe — 146 APIs, Pay-Per-Call, No Monthly Fees</title>
      <dc:creator>goldbean</dc:creator>
      <pubDate>Fri, 19 Jun 2026 00:51:59 +0000</pubDate>
      <link>https://dev.to/goldbean/goldbean-just-landed-on-mcpize-stripe-146-apis-pay-per-call-no-monthly-fees-13en</link>
      <guid>https://dev.to/goldbean/goldbean-just-landed-on-mcpize-stripe-146-apis-pay-per-call-no-monthly-fees-13en</guid>
      <description>&lt;h2&gt;
  
  
  🚀 GoldBean on MCPize: The Backstory
&lt;/h2&gt;

&lt;p&gt;Yesterday I successfully deployed &lt;strong&gt;GoldBean API&lt;/strong&gt; on &lt;a href="https://mcpize.com/mcp/goldbean" rel="noopener noreferrer"&gt;MCPize&lt;/a&gt;, the new MCP server marketplace. Combined with Stripe Connect for payouts, this makes GoldBean one of the most complete x402 API marketplaces out there.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Changed
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;MCPize Marketplace&lt;/strong&gt; — GoldBean is now listed at &lt;code&gt;mcpize.com/mcp/goldbean&lt;/code&gt; with auto-generated MCP server (&lt;code&gt;goldbean.mcpize.run&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Stripe Connect&lt;/strong&gt; — Integrated for developer payouts, 146 API routes auto-discovered&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Free Tier&lt;/strong&gt; — 1,000 calls/month free, then pay-per-call from $0.01&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  The Full Stack
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;Tech&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;APIs&lt;/td&gt;
&lt;td&gt;Baidu OCR, NLP, TTS, ASR, Translation, ERNIE LLM + 140 more&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Payment&lt;/td&gt;
&lt;td&gt;x402 (HTTP 402) + Stripe + Alipay + PayPal&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Discovery&lt;/td&gt;
&lt;td&gt;MCPize, Smithery.ai, Glama.ai&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gateway&lt;/td&gt;
&lt;td&gt;goldbean.mcpize.run (edge functions)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Why This Matters for MCP
&lt;/h2&gt;

&lt;p&gt;The MCP ecosystem has a monetization problem. Everyone builds MCP servers, but nobody pays for them. GoldBean solves this with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;x402 micropayments&lt;/strong&gt; — HTTP 402 response prompts the client to pay $0.01 automatically&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No API key registration&lt;/strong&gt; — Just send an &lt;code&gt;x-user-id&lt;/code&gt; header with your wallet address&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;USDC on Base&lt;/strong&gt; — 2-second settlement, no gas fees for the caller&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try It
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Browse APIs: &lt;a href="https://goldbean-api.xyz/debug" rel="noopener noreferrer"&gt;goldbean-api.xyz/debug&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;MCPize listing: &lt;a href="https://mcpize.com/mcp/goldbean" rel="noopener noreferrer"&gt;mcpize.com/mcp/goldbean&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Pricing: free tier (5 endpoints) + basic ($0.01/call) + standard ($0.02/call)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Happy building! 🫘
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;💡 Have you tried GoldBean? Get 50 free API calls/day at &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;goldbean-api.xyz&lt;/a&gt; — no credit card needed. Questions? Drop a comment below!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;🫘 GoldBean — Pay-per-Use AI API Marketplace. Wishing You Good Fortune &amp;amp; Prosperity.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>mcp</category>
      <category>api</category>
      <category>webdev</category>
      <category>opensource</category>
    </item>
    <item>
      <title>The Cheapest Chinese OCR API in the World — $0.01 per Call, Built on x402</title>
      <dc:creator>goldbean</dc:creator>
      <pubDate>Thu, 18 Jun 2026 06:54:45 +0000</pubDate>
      <link>https://dev.to/goldbean/the-cheapest-chinese-ocr-api-in-the-world-001-per-call-built-on-x402-4lfm</link>
      <guid>https://dev.to/goldbean/the-cheapest-chinese-ocr-api-in-the-world-001-per-call-built-on-x402-4lfm</guid>
      <description>&lt;h1&gt;
  
  
  The Cheapest Chinese OCR API in the World — $0.01 per Call, Built on x402
&lt;/h1&gt;

&lt;p&gt;Chinese OCR is dramatically harder than English OCR. While English has only 26 characters, Chinese has over 50,000 characters in the Unicode set — with thousands in common daily use. Many characters look nearly identical, differing by a single stroke. This complexity means most OCR providers charge premium rates for Chinese recognition, often $0.10-$0.50 per 1,000 calls, or require hefty monthly subscriptions that lock you into long-term commitments.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GoldBean API&lt;/strong&gt; flips this model entirely. It offers Chinese OCR at just &lt;strong&gt;$0.01 per call&lt;/strong&gt;, no subscription required, pay-per-use via the &lt;strong&gt;x402 protocol&lt;/strong&gt;. That's right — one cent per image, powered by one of the best Chinese OCR engines available, delivered through a modern payment protocol that AI agents can use autonomously.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Tech Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Backend&lt;/strong&gt;: Node.js / Express running on Cloudflare Workers for global low-latency access&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;OCR Engine&lt;/strong&gt;: Baidu OCR — widely recognized as best-in-class for Chinese character recognition, supporting printed text, handwriting, and document layouts&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Payment&lt;/strong&gt;: x402 protocol (HTTP 402 + USDC on Base) — each API call triggers an instant micro-transaction&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Free Tier&lt;/strong&gt;: 20 free credits for testing — pay nothing to try it out&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Live Demo&lt;/strong&gt;: &lt;a href="https://wuzenghai616-lang.github.io/goldbean/" rel="noopener noreferrer"&gt;https://wuzenghai616-lang.github.io/goldbean/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Why x402 Changes Everything
&lt;/h2&gt;

&lt;p&gt;Traditional API monetization requires you to enter a credit card, commit to a monthly plan, and hope you don't exceed your quota. The x402 protocol turns this on its head:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;AI agents can pay autonomously&lt;/strong&gt; — no human credit card required. An AI agent calls the API, receives an HTTP 402 response with payment instructions, settles the micro-transaction in seconds, and gets the result.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Settlement in seconds&lt;/strong&gt; — USDC on Base means near-instant settlement, no waiting for bank transfers or credit card holds.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No subscription lock-in&lt;/strong&gt; — pay exactly for what you use. One call, one cent. No monthly minimums, no annual contracts.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Transparent pricing&lt;/strong&gt; — the cost is fixed and known upfront. $0.01 per OCR call, always.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Code Example
&lt;/h2&gt;

&lt;p&gt;Calling the OCR endpoint is straightforward with any HTTP client:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Call OCR with just an API key&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nf"&gt;fetch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;https://goldbean-api.xyz/paid/baidu-ocr&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;method&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;POST&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;headers&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Content-Type&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;application/json&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;x-user-id&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;YOUR_API_KEY&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
  &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="na"&gt;body&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;JSON&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;stringify&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
    &lt;span class="na"&gt;image&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;imageBase64&lt;/span&gt;
  &lt;span class="p"&gt;})&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;data&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;words_result&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The API accepts base64-encoded images and returns JSON with recognized text, positions, and confidence scores. It's that simple.&lt;/p&gt;




&lt;h2&gt;
  
  
  Getting Started
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Register&lt;/strong&gt; at &lt;a href="https://goldbean-api.xyz/paid/user/register" rel="noopener noreferrer"&gt;https://goldbean-api.xyz/paid/user/register&lt;/a&gt; to get your free credits&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Try the live OCR demo&lt;/strong&gt;: &lt;a href="https://wuzenghai616-lang.github.io/goldbean/" rel="noopener noreferrer"&gt;https://wuzenghai616-lang.github.io/goldbean/&lt;/a&gt; — upload an image and see the results instantly&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Browse all 146+ endpoints&lt;/strong&gt; at &lt;a href="https://mcpize.com/mcp/goldbean" rel="noopener noreferrer"&gt;https://mcpize.com/mcp/goldbean&lt;/a&gt; — GoldBean isn't just OCR; it's a whole marketplace of AI APIs priced at $0.01-$0.05 per call&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  Call to Action
&lt;/h2&gt;

&lt;p&gt;Try it free today. No credit card, no commitment. If you're building an AI agent that needs to process Chinese text, or you're just tired of subscription-based API pricing, GoldBean's x402-powered OCR is the most affordable option available.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Build with it. Pay only when you scale.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;em&gt;This is Article #2 in the "Monetizing AI APIs with x402" series. Check out the series for more deep dives into autonomous AI payments and micro-transaction APIs.&lt;/em&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;💡 Have you tried GoldBean? Get 50 free API calls/day at &lt;a href="https://goldbean-api.xyz" rel="noopener noreferrer"&gt;goldbean-api.xyz&lt;/a&gt; — no credit card needed. Questions? Drop a comment below!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;🫘 GoldBean — Pay-per-Use AI API Marketplace. Wishing You Good Fortune &amp;amp; Prosperity.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ocr</category>
      <category>chinese</category>
      <category>api</category>
      <category>python</category>
    </item>
  </channel>
</rss>
