ReturnCheck について
ReturnCheckは、買い物エージェント向けに購入国での商品返品可否を検証するMCPサーバーです。判定、引用した規約、参照URL、返品期間、信頼度を返し、証拠を確認できない場合はUNKNOWNを返します。
主な機能
- 014種類の返品判定
- 02規約の引用と参照元
- 03返品期間と信頼度
- 04ページテキストやHTMLの入力
- 05証拠未確認時はUNKNOWN
活用シーン
- 01エージェントによる購入前の返品条件確認
- 02入力ページの規約テキスト検証
- 03購入国に応じた返品可否の判定
MCP 対応
Streamable HTTPで`check_return`ツールを提供します。MCPクライアントは商品URLと購入国を渡し、検証用のページ内容も指定できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://returncheck.m-angelmartinez-fer.workers.dev/mcpclaude mcp add --transport http mangelmartinezfer-hue-returncheck https://returncheck.m-angelmartinez-fer.workers.dev/mcp{"mcpServers":{"mangelmartinezfer-hue-returncheck":{"type":"http","url":"https://returncheck.m-angelmartinez-fer.workers.dev/mcp"}}}Cursor で開く{"servers":{"mangelmartinezfer-hue-returncheck":{"type":"http","url":"https://returncheck.m-angelmartinez-fer.workers.dev/mcp"}}}VS Code で開く{"mcpServers":{"mangelmartinezfer-hue-returncheck":{"type":"http","url":"https://returncheck.m-angelmartinez-fer.workers.dev/mcp"}}}{"mcpServers":{"mangelmartinezfer-hue-returncheck":{"serverUrl":"https://returncheck.m-angelmartinez-fer.workers.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
1| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| reason | enum | いいえ | changed_mind | defective | wrong_size_or_model | arrived_late | other |
| merchant | string | いいえ | |
| page_html | string | いいえ | 推奨(page_text の代替)。同じページの生 HTML。page_text よりわずかに優れており、構造化データ(JSON-LD)も読み取れます。 |
| page_text | string | いいえ | 推奨。すでに開いている商品ページまたは返品ページのプレーンテキスト。ページを取得せず、この内容に基づいて検証します。どのストアでも機能し、ブロックされず、JavaScript の問題もなく、処理も速くなります。捏造はしません。検証可能な条項がなければ UNKNOWN を返します(無料)。 |
| product_url | string | はい | 商品ページの URL(http/https)。 |
| seller_name | string | いいえ | |
| buyer_country | string | はい | ISO 3166-1 alpha-2。例:'US'。 |
| delivery_date | string | いいえ | YYYY-MM-DD(任意。期限の判定には指定を推奨)。 |
| purchase_date | string | いいえ | YYYY-MM-DD(任意)。 |
| item_condition | enum | いいえ | unopened | opened | used | defective |
| page_source_url | string | いいえ | 提供された page_text/page_html のページが product_url と異なる場合、そのページの URL。呼び出し元が申告した出所であり、個別に取得して確認するものではありません。 |
| payment_signature | string | いいえ | 任意。x402 支払い認証(base64) — HTTP 経由で送信される PAYMENT-SIGNATURE ヘッダーと同じエンベロープです。アカウント作成や登録なしで、呼び出しごとに支払う場合に使用します。手順:最初は指定せずに呼び出します。無料試用枠を使い切っている場合、structuredContent(x402Version、accepts[])に支払い条件が返されます。その認証に署名し、payment_signature を設定して再度呼び出します。条件は /.well-known/x402 にも公開されています。UNKNOWN 判定が決済されることはありません。認証は使用されないまま期限切れになります。 |
詳細
ReturnCheck — AI ショッピングエージェント向け返品ポリシー検証
ReturnCheck は、この購入に実際に適用される返品ポリシーを検証します。 AI ショッピングエージェント向けに、推測ではなく、検証済みの判定でケースを解決します。
product_url と buyer_country を渡すと、判定結果
(YES / YES_WITH_CONDITIONS / NO / UNKNOWN)に加え、ページから引用したポリシー条項の正確な文面、ソース URL、返品可能期間、信頼度スコアを返します。ページ上の条項を検証できない場合は UNKNOWN を返し、決して捏造しません。
エージェント間コマース向けに構築されており、MCP ツールと x402 対応のマイクロプライシングを提供します(検証済み回答 1 件あたり $0.02。UNKNOWN は無料で、キー不要の無料トライアルも利用できます)。
再現可能な開発者向けデモ
4 種類の判定結果を示す証拠デモ:合成テストケースと記録済みの IKEA US チェック
YES、YES_WITH_CONDITIONS、NO、UNKNOWN の記録済み応答、元のテストソースへのリンク、IKEA の実在販売業者を対象とした事例、および実行可能な例が含まれます。4 種類の判定結果を示すテスト資料は合成データです。実在する販売業者のポリシー文面を呼び出し元が提供しているのは、IKEA の事例のみです。これは独立したベンチマークでも、ライブでの再テストでも、ネイティブな UCP 互換性の主張でもありません。
開発の背景
AI エージェントが商品を購入し始めています。購入する前に、購入を取り消せるかどうかを知る必要があります。しかし現在、「これは返品できますか?」という問いに、機械が信頼して行動に移せる形で答えるものはありません。ReturnCheck は、そのための中立的な検証プリミティブです。あらゆるショッピングエージェントに販売し、どのエージェントとも競合しません。
クイックスタート
MCP(Streamable HTTP) — ツール:check_return
https://returncheck.m-angelmartinez-fer.workers.dev/mcp
HTTP
curl -X POST https://returncheck.m-angelmartinez-fer.workers.dev/v1/check \
-H "content-type: application/json" \
-d '{"product_url":"https://store.example/p/shoe","buyer_country":"US","item_condition":"unopened"}'
商品/ポリシーのページをすでにレンダリングしている場合は、page_html または
page_text として渡してください。ReturnCheck はその内容に基づいて検証し、取得処理を省略します(最も広い範囲をカバーし、サーバー側の読み取りをブロックするサイトを回避できます)。それでも、内容を捏造することはありません。
その内容が別のポリシーページに由来する場合は、HTTP(S) URL を指定した page_source_url
も送信してください。これにより、product_url は商品コンテキストとして維持しながら、指定されたソースを evidence.source_url
とコーパスに記録できます。この URL は呼び出し元が宣言するもので、独立して取得されることはありません。指定しない場合は既存の
product_url フォールバックが引き続き使われます。別のページを指定する場合、従来の呼び出し元はこのフィールドを追加してください。開封済み商品の代替品は、明示的に隣接する一般条項がある場合に限り特定できます。曖昧な条項、カテゴリ固有の条項、または矛盾する条件については、引き続き通常の検証手順が必要です。
x402 有料リクエスト
有料 HTTP ルートは同じエンドポイントです:POST /v1/check。
無料枠を消費せずに最新の x402 条件を確認するには、PAYMENT-SIGNATURE を付けず、リクエストボディなしで POST /v1/check を送信してください。ReturnCheck は最新の 402 チャレンジを返します。この確認リクエストでは {} や実際のチェック用リクエストボディを送信しないでください。
有料リクエストでは、JSON エンベロープを Base64 エンコードし、PAYMENT-SIGNATURE ヘッダーに設定してください。
{
"x402Version": 2,
"accepted": {
"scheme": "exact",
"network": "eip155:8453",
"amount": "20000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"payTo": "0xbF428071027402E9b0cE85e22146EDdc028cEB3b",
"maxTimeoutSeconds": 60,
"extra": { "name": "USD Coin", "version": "2" }
},
"payload": {
"signature": "0x...",
"authorization": {
"from": "0x...",
"to": "0x...",
"value": "20000",
"validAfter": "0",
"validBefore": "...",
"nonce": "0x..."
}
},
"extensions": {
"payment-identifier": {
"info": {
"required": true,
"id": "unique-id-16-to-128-chars"
}
}
}
}
ルール:
acceptedは真偽値ではなく、受け入れ可能な支払い要件オブジェクト全体です。payloadにsignatureとauthorizationを直接含めます。- 正規の識別子パスは
extensions["payment-identifier"].info.idです。 bazaarの検出用エクステンションをPAYMENT-SIGNATUREにコピーしないでください。- 最新の支払い条件については、ライブの 402 チャレンジが正式な情報源です。
- 署名済みリクエストは支払い処理に直接進むため、先に無料枠を使い切る必要はありません。
- 同じエンドポイント、ボディ、識別子、署名、nonce を使って、同じ有料操作を再送してください。有料リクエストの前に認可が期限切れになった場合は、新しい認可に署名してください。その新しい認可を再送に使用します。
pending、unconfirmed、HTTP 500、またはその他の決済結果が不確定な場合は、最初の結果が照合されるまで、2 つ目の認可を作成しないでください。
返される内容
{
"verdict": "YES_WITH_CONDITIONS",
"returnable": true,
"confidence": 0.9,
"policy": { "merchant_return_days": 30, "return_category": "FiniteReturnWindow" },
"evidence": {
"source_url": "https://store.example/policies/refund-policy",
"exact_clause": "Items may be returned within 30 days of delivery for a full refund.",
"verified_on": "2026-08-23"
}
}
料金
| 検証済み回答(YES/NO/条件) | $0.02 |
| UNKNOWN | 無料 |
| API キー不要の無料トライアル | 1 日あたり数回の呼び出し、登録不要 |
エージェント向けの検出
- OpenAPI:
/openapi.json - プラグインマニフェスト:
/.well-known/ai-plugin.json - エージェントマニフェスト:
/agents.json - LLM マニフェスト:
/llms.txt - MCP ツール一覧:
/mcp
決定論的な事前チェック
npm run check を実行すると、登録済みの作業を検証し、回帰テスト一式を実行します。
npm run work:new -- ucp job-name を使用して新しい作業を登録します(支払い、コーパス、成果物のプロファイルも利用できます)。登録済みのジョブはすべて、プッシュとプルリクエストのたびに自動実行されます。恒久的なレビュー手順については AGENTS.md を参照してください。
登録済みのジョブでは、正確な入力に紐づけられたレビュー記録が必須になりました。このチェックでは、変更されたファイルの確認漏れや、ロットをまたぐコーパスの汚染も検出します。デリバリーと履歴メトリクスのプロファイルでは、パッケージ/スナップショットとベンチマークのチェックが行われます。
支払いパッケージ、UCP のエビデンス、またはコーパスの変更をレビューする前に、npm run validate を実行してください。3 つのオフラインプロファイルにより、PASS/FAIL、ブロック対象のエラー、警告、SHA-256 ハッシュ、および後続の AI レビューが必要なフィールドが生成されます。入力コントラクト、制限、コマンドについては preflight/README.md を参照してください。
npm test には事前チェックの回帰テストが含まれています。PASS はデプロイや支払いを承認するものではありません。
設計原則
- 決して捏造しません。 確定的な判定には、ページに照らして文字どおり検証された条項が必ず含まれます。検証できない場合、回答は
UNKNOWNです。 - 変更されないコントラクト(v1.0)。 フィールドは追加のみで、既存のものを壊す変更はありません。
- 米国のデータを優先し、グローバルなアーキテクチャを採用します。 エッジ上で 100%サーバーレスに動作します(Cloudflare Workers + D1 + Workers AI)。
キーワード
返品ポリシー API · 返品の検証 · AI ショッピングエージェント · エージェント型コマース · MCP サーバー · check_return · x402 · エージェント間決済 · E コマースの返品 · 返品可能か · 返金ポリシーチェッカー
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。