vend-api-merchant について
vend-api-merchant は、ウェブやネットワーク情報を取得する従量課金 API 群です。Nano と x402 v2 のチャレンジで決済し、登録や API キーなしで利用できます。
主な機能
- 01ウェブ本文と Markdown の抽出
- 02ウェブ検索とリンク確認
- 03ドメイン、IP、Nano アカウント情報
- 04YouTube 字幕と PDF テキスト抽出
- 05AI 求人と arXiv 論文の検索
活用シーン
- 01LLM 向けのウェブコンテンツ抽出
- 02リンクの状態とリダイレクト確認
- 03IP の位置情報とドメイン情報の照会
- 04AI 求人や arXiv 論文の検索
MCP 対応
入力には MCP 対応についての記載がありません。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://extract.paypercall.dev/mcpclaude mcp add --transport http dev-paypercall-extract-vend-api-merchant https://extract.paypercall.dev/mcp{"mcpServers":{"dev-paypercall-extract-vend-api-merchant":{"type":"http","url":"https://extract.paypercall.dev/mcp"}}}Cursor で開く{"servers":{"dev-paypercall-extract-vend-api-merchant":{"type":"http","url":"https://extract.paypercall.dev/mcp"}}}VS Code で開く{"mcpServers":{"dev-paypercall-extract-vend-api-merchant":{"type":"http","url":"https://extract.paypercall.dev/mcp"}}}{"mcpServers":{"dev-paypercall-extract-vend-api-merchant":{"serverUrl":"https://extract.paypercall.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
Vend — 自律型 API マーチャント
Nano(XNO)で決済する、呼び出しごとに課金される API です。登録も API キーも不要です。x402 v2 チャレンジ付きの HTTP 402 を利用するだけです。
エンドポイント
| エンドポイント | 価格(XNO) | 機能 |
|---|---|---|
GET /api/v1/extract?url= | 0.0001 | 任意のウェブページから、整形済みのテキスト/Markdown を抽出します |
GET /api/v1/check-link?url= | 0.0001 | HTTP ステータス、応答時間、リダイレクトチェーンを確認します |
GET /api/v1/status?url= | 0.0001 | URL のステータス、リダイレクト、TLS の有効期限、コンテンツの変化を確認します |
GET /api/v1/domain-info?domain= | 0.0005 | DNS、WHOIS、SSL、HTTP ヘッダーなど、ドメインの詳細情報を取得します |
GET /api/v1/web-search?q= | 0.0001 | DuckDuckGo でウェブ検索し、タイトル、URL、スニペットを取得します |
GET /api/v1/geoip?ip= | 0.0001 | IP ジオロケーション情報(国、都市、座標、ISP、ASN)を取得します |
GET /api/v1/youtube-transcript?url= | 0.0005 | YouTube 動画の字幕とタイムスタンプ付き文字起こしを取得します |
GET /api/v1/nano-info?account= | 0.0005 | Nano アカウント情報(残高、代表者、ブロック数、フロンティア、ウェイト、保留中の送金)を取得します |
GET /api/v1/youtube-transcript?url= | 0.0005 | YouTube 動画の字幕/文字起こしを取得します |
GET /api/v1/select?url=&selector= | 0.0001 | ページから CSS セレクターで構造化フィールド(価格、見出し、リンクなど)を抽出します |
GET /api/v1/links?url= | 0.0001 | ページ上のすべてのアンカーリンクを構造化 JSON として抽出します(クロール、監査、サイトマップ) |
GET /api/v1/pdf-extract?url= | 0.0005 | PDF の URL からテキストをページごとに構造化して抽出し、LLM で利用できる形式にします |
GET /api/v1/ai-jobs?q= | 0.0002 | フィルターを使って、募集中の AI/AI 関連求人 19,800 件以上を検索します |
GET /api/v1/arxiv-paper?arxiv_id= | 0.0001 | ID または検索語から、整形済みの arXiv 論文メタデータ(タイトル、著者、主カテゴリ、要旨、公開日、DOI、PDF リンク)を取得します |
購入者向けクイックガイド
BUYERS_GUIDE.md — curl、Python、JavaScript、ウォレットの手順を含む、詳細なステップごとのガイドです。
要約すると、任意のエンドポイントを呼び出す → 402 を受け取る → Nano を送金する → ブロックハッシュを指定して再試行します。
仕組み(購入者のフロー)
1. GET /api/v1/extract?url=https://example.com
→ HTTP 402 with x402 payment challenge
2. Send 0.0001 XNO to nano_1yo6c1t64ahfjdw1dxizmbbnpdmbrckwhw9phbg5pdkeubrizga4qhnjmnx7
→ Get back a 64-char block hash
3. GET /api/v1/extract?url=https://example.com -H "X-PAYMENT: <block-hash>"
→ HTTP 200 with the extracted text
Python の例
import httpx
# Step 1: Probe unpaid
resp = httpx.get("https://search.paypercall.dev/api/v1/web-search?q=nano")
assert resp.status_code == 402
challenge = resp.json()
# Step 2: Extract payment info
accept = challenge["accepts"][0]
print(f"Pay {challenge['price_xno']} XNO to {accept['payTo'][:15]}...")
# Step 3: Send Nano payment, get block hash (use your wallet)
# Step 4: Retry with payment
result = httpx.get(
"https://search.paypercall.dev/api/v1/web-search?q=nano",
headers={"X-PAYMENT": "your-64-char-block-hash"}
)
print(result.json())
エラー処理を含む、完全に動作するスクリプトについては examples/python-buyer.py を参照してください。
準拠状況
すべてのエンドポイントが Stelar x402 Doctor において 100.0/A に合格しています。
- extract: https://api.stelardigital.com/doctor?url=https://extract.paypercall.dev/api/v1/extract
- check-link: https://api.stelardigital.com/doctor?url=https://check.paypercall.dev/api/v1/check-link
- domain-info: https://api.stelardigital.com/doctor?url=https://domain.paypercall.dev/api/v1/domain-info
- web-search: https://api.stelardigital.com/doctor?url=https://search.paypercall.dev/api/v1/web-search
- geoip: https://api.stelardigital.com/doctor?url=https://geoip.paypercall.dev/api/v1/geoip
- nano-info:
https://extract.paypercall.dev/api/v1/nano-info(nano.paypercall.dev の DNS は現在も停止中のデプロイ先を指しているため、告知されている URL はすべてこのホストを指定しています)
ヘッダーと本文の両方に x402 v2 チャレンジを含みます。エンドポイントごとのサブドメインを使用します。すべてのエンドポイントで Bazaar 入力スキーマを提供します。
ディスカバリー
- x402 マニフェスト:
https://extract.paypercall.dev/.well-known/x402(check、domain、search にもあります) - OpenAPI 仕様:
https://extract.paypercall.dev/openapi.json(check、domain、search にもあります) - agent-tools.cloud: https://agent-tools.cloud/services/extract-paypercall-dev-sub822
ローカルでの実行
# Our package is not on PyPI yet (the `vend` name on PyPI is an unrelated packaging tool).
# Run from this repo instead:
uv sync
export VEND_WALLET_ADDRESS="nano_..."
uv run python -m vend
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。