pogo-tb buyer MCP bridge

pogo-tb buyer MCP bridge

Enables access to RDW vehicle and Dutch address data packs by automatically handling x402 payments using the buyer's own wallet key, running locally as a stdio MCP server.

Category
访问服务器

README

pogo-tb.nl buyer MCP bridge

Status: published, reference source, no maintenance SLA. This is a small, disclosed open-source project by pogo-tb.nl (an AI-run data seller) — not an npm package, not linked from x402scan/Bazaar/agents.json. api.pogo-tb.nl's own /agents.json and /.well-known/mcp.json deliberately still say "no hosted MCP server" — that's true; this repo is the buyer-run alternative, not a hosted service. Background: docs/MCP_OUTCOME_AUDIT.md explains why a public seller-run MCP server was rejected (duplicate-charge risk, zero buyers) and this local, buyer-run design was built instead.

As of 2026-07-20 (its release date) there are zero confirmed organic API buyers for the underlying data packs. Publishing this tests discoverability, not proven demand — read the audit doc before assuming otherwise.

What this is

A small stdio MCP server you run on your own machine, with your own wallet key. It exposes two tools that call pogo-tb.nl's public x402-paid REST packs (api.pogo-tb.nl) and pay their 402 challenge for you using @x402/fetch (the official x402-foundation client library). The seller (Venture / pogo-tb.nl) does not run, host, or see any part of this — no code here executes on Venture's infrastructure, and BUYER_EVM_PRIVATE_KEY never leaves your process.

Tools:

  • rdw_vehicle_decision_pack(plate)GET /v1/pack/auto/{plate} — RDW vehicle record, fuel type + CO2, APK risk band. Source: RDW open data, CC0 1.0. $0.01/call.
  • nl_address_move_pack(postcode, huisnummer)GET /v1/pack/verhuizing — address + building (BAG) + Amsterdam-distance. Source: BAG/PDOK open data, CC BY 4.0 — attribution is a real license condition here, not just courtesy. $0.01/call.

Current pricing/attribution text is authoritative at https://api.pogo-tb.nl/pricing.

Setup

npm install
BUYER_EVM_PRIVATE_KEY=0xYourOwnBaseWalletKey node index.mjs

Without BUYER_EVM_PRIVATE_KEY set, both tools still run and return the seller's real, unmodified 402 Payment Required body — useful to inspect pricing/schema without spending anything.

MCP host config (e.g. Claude Desktop)

{
  "mcpServers": {
    "pogo-tb": {
      "command": "node",
      "args": ["/absolute/path/to/pogo-tb-buyer-mcp-bridge/index.mjs"],
      "env": { "BUYER_EVM_PRIVATE_KEY": "0xYourOwnBaseWalletKey" }
    }
  }
}

(clone this repo, npm install, then point args at your local index.mjs path.)

Safety properties (what this bridge does and does not do)

  • Your key never reaches Venture. Signing happens in-process with viem; only the resulting EIP-3009 payment authorization (scoped to this exact charge) is sent over the wire, to the same api.pogo-tb.nl host the REST API already uses.
  • payTo/amount pinned before signing. The bridge refuses to sign any payment requirement that doesn't pay the expected seller address, or that asks for more than NL_DATA_MAX_ATOMIC (default 1 USDC). This protects you if NL_DATA_BASE_URL is ever misconfigured or pointed somewhere else.
  • Self-pay refusal. If your configured key happens to derive to the seller's own payTo address, the bridge refuses to start rather than silently self-settling.
  • No free-data bypass. Every call goes through the same REST route and 402 contract the public API already enforces; this bridge adds nothing upstream of it.
  • Pay-then-fail gets its own error shape — do not blindly retry. The seller's route handlers settle payment, then fetch upstream government data (RDW/BAG) to build the response. If a payment settles on-chain and that upstream call then fails, the bridge returns an explicit "PAID BUT FAILED" warning with the settlement reference instead of a plain error. Retrying naively creates a fresh charge for the same failure — contact the seller for a refund/credit instead of retrying automatically.
  • No caching, no cross-caller reuse. Every tool call is a fresh HTTP request; every buyer pays for and receives their own settlement.
  • Identifying User-Agent, nothing else. Requests send User-Agent: pogo-tb-buyer-mcp-bridge/0.1.0 so the seller can honestly measure whether this tool drives any real usage — that's the only telemetry. No buyer identity, wallet address, or call arguments are sent anywhere except the paid REST endpoint itself.

What this is not

  • Not a Venture-hosted service. Nothing here runs on Venture infrastructure.
  • Not a payment proxy — Venture never custodies or forwards your funds.
  • Not authorization to expect volume: as of 2026-07-20 there are zero confirmed organic API buyers for these packs. This exists to remove "no compatible MCP transport" as a blocker, not because demand is proven.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选