402-LAB について
402-LABは、設定した予算と販売者の範囲内でエージェントがx402サービスを見つけ、呼び出しごとに支払うためのMCP購入側です。販売者向け決済ゲートウェイとブラウザー委任プロトタイプも含み、オンチェーン機能の一部は未配備・未監査です。
主な機能
- 01x402 Bazaarでサービスを検索
- 02呼び出しごとのUSDC決済
- 03予算・単価上限・販売者許可リストの適用
- 04販売者向け決済ゲートウェイ
- 05ブラウザー委任プロトタイプ
活用シーン
- 01有料ツールへのエージェント支出を制限
- 02既存APIにx402決済ゲートウェイを追加
- 03商品をプレビューし予算内購入をローカルで模擬
MCP 対応
購入側はMCP サーバーとして、Claude DesktopやCursorなどのクライアントにx402 Bazaarでの検索と、設定範囲内の決済を提供します。ブラウザー委任プロトタイプとは別の経路です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
402-LAB — バイブコーディングで作った製品をエージェントに販売
ライブ: https://handsel-mandate-demo.vercel.app(Base メインネット、実際の USDC)。現在販売している商品は国税庁の事業者登録状況照会で、1回の呼び出しにつき 0.02 USDC、x402 Bazaar に掲載されています。利用案内。
3つの部分で構成されています。
- 販売者側
demo/— 公式 x402 SDK で作られた決済ゲートです。当社の商品(demo/tools/nts.js)を販売し、販売者の既存 API の前にもそのまま設置できます(demo/upstream.js、Seller Studio のエクスポート +UPSTREAM_SECRET)。402 レスポンスには Bazaar の発見メタデータが含まれます。運用・デプロイ・確認手順 - 購入者側
mcp/— 402-LAB MCP サーバーです。「1ドル以内で」と委任すると、Claude Desktop・Cursor・Chrome 拡張機能が x402 Bazaar で商品を探し、予算内でのみ決済して結果だけを返します。上限・1件あたりの上限・ネットワーク・販売者許可リストをサーバーが強制します。npm run mcp。設定と権限モデル - 広報・運用 — 広報文と動画制作、販売申し込みフォーム。
クイックスタート:npm ci && npm test、npm run demo(ローカルシミュレーション、キー不要)、npm run mcp(購入者ウォレット)。
購入者向け MCP のインストール(リポジトリ不要)
{ "mcpServers": { "402-lab": { "command": "npx", "args": ["-y", "github:Kairose-master/handsel-mandate"],
"env": { "BUYER_PRIVATE_KEY": "0x...", "NETWORK": "eip155:84532", "MANDATE_MAX_USDC": "1" } } } }
Claude Desktop では、npm run build:mcpbで作成したdist/402-lab.mcpbをダブルクリックしてインストールします(キーはインストール画面で入力)。レジストリ・Smithery・mcp.so・Cursor ディレクトリ・x402 エコシステムへの提出ファイルと手順はdocs/directories.mdにあります。
最初の成功の基準は、外部販売者のツールを外部の購入者が実際に使うことです。これまでの決済は内部ウォレットによる2件のみであり、購入者の流入や売上を保証するものではありません。
Handsel Mandate — ブラウザー委任プロトタイプ
以下は、402-LAB の基盤となったオンチェーン委任経路です。runtime/buyer.jsは固定の販売者エンドポイントに接続され、Base Sepolia と、別個の Base メインネット用コントラクトアーティファクトに対応しました。メインネット用アーティファクトは、まだデプロイ・インストール・セキュリティレビューが行われておらず、公開中のライブ決済サービスとの実際の互換性も確認されていません。 MCP 購入者経路とは別のものです。
Seller Studio · 販売者向けドラフト
バイブコーディングで作成したツールの商品説明・呼び出し例・価格を整理し、x402 連携設定をエクスポートするローカルスタジオを追加しました。node scripts/seller-studio.jsを実行してから、http://127.0.0.1:4173を開いてください。依存関係のインストールは不要です。商品プレビュー・予算制限付きの模擬購入・JSON のダウンロードに対応しています。実際の API 呼び出し・決済・Bazaar への登録・公開販売は行いません。範囲と次の連携ステップ。
人が予算・許可するツール・有効期限を指定し、ブラウザーエージェントがその範囲内で模擬購入を行う Chrome MV3 拡張機能のドラフトです。
v0.5:オンチェーンの制限付き権限 + BlockFlow + x402。 Coinbase Smart Account に、ネットワークごとのMandateValidatorをコントラクト所有者としてインストールします。人が承認した総予算・1件あたりの上限・受取人・有効期限・エージェント・BlockFlow のバインディングをチェーンに記録し、エージェントが決済金額を先に予約した場合に限り、その EIP-3009 決済を許可します。メインネットはallowMainnet: trueと owner CLI の--confirm-mainnetの両方が指定されている場合にのみ有効になります。
新しい Session モードには所有者キーがなく、エージェントは任意の送金や新たな委任の発行を行えません。取り消しがチェーン上で確定すると、未決済の予約も無効になります。レシートは RPC の USDC Transfer + AuthorizationUsed nonce と照合します。Sepolia 経路も公開チェーンへのインストール・決済はまだ実行していません。メインネットへの移植版もデプロイ・セキュリティレビュー前です。インストール・検証の範囲を確認してください。以前の full-owner モードは既存の設定でのみ残されており、同じセキュリティ保証は提供しません。
x402 署名は、予算を予約する前にDAMBI 互換の事前ポリシーゲートを通過する必要があります。エージェント実行では、allow / evaluated / enforcingの判定のみ許可されます。
インストール
- このリポジトリを clone または Download ZIP で取得します。
- Chrome の
chrome://extensions→ 開発者モード → パッケージ化されていない拡張機能を読み込む →extension/を選択します。 - ツールバーの Handsel アイコンをクリックするとサイドパネルが開きます。拡張機能のオプションからも同じ画面を開けます。
- 委任状の目標・総予算・1件あたりの上限・期間・許可するツールを確認して有効にします。
- デモエージェントを実行します。検索に 0.03、文書抽出に 0.05 の模擬 USDC を使用し、レシートを残します。
- 総予算を 0.05、1件あたりの上限を 0.05 に設定すると、検索後の抽出がブロックされます。最初の呼び出しは実行され、タスク全体はアトミックではありません。
別のエージェント拡張機能への接続
examples/agent-extension/もパッケージ化されていない拡張機能として読み込みます。その拡張機能の ID を Handsel の接続欄に保存してから、新しい委任状を有効にしてください。デモ拡張機能のポップアップに Handsel 拡張機能の ID を入力すると、拡張機能間メッセージで購入をリクエストできます。
対応 API:status、catalog、purchase(mandateId、requestId、serviceId)。応答は{ok,result}または{ok:false,error}です。アクセスできるのは接続された拡張機能1つのみです。接続先を変更すると、既存の委任は取り消されます。外部エージェントは委任の作成・接続先の変更・権限の拡大を行えません。
ブラウザー内蔵 AI や Aside 系の製品に自動接続されるわけではありません。その製品が拡張機能のメッセージ/API 接続に対応している場合に、アダプターを追加できます。一般の Web ページに支出 API を公開することはありません。
테스트
Node 22+에서 npm ci 후 npm test. BlockFlow 통합 테스트까지 실행하려면 BlockFlow 저장소를 ../BlockFlow에 clone하거나 BLOCKFLOW_ROOT=/absolute/path/to/BlockFlow npm test를 사용합니다. 테스트는 실제 BlockFlow 컴파일, Coinbase Smart Account의 EIP-1271 래핑 서명, x402 payload의 AA payer 주소를 확인합니다. Chrome/체인 실제 설치 검증은 아래 체크리스트로 별도 수행합니다.
- 아이콘 클릭 → 사이드패널 열림
- 생성 → 데모 구매 → 재시작 후 예산/영수증 유지
- 만료/회수/건당/총예산 초과 차단
- 연결되지 않은 데모 확장 호출 거절
- 연결 후 데모 확장 호출 성공
- 두 패널 동시 호출에도 총예산 초과 없음
구현 경계
- 정수 micro-USDC로 금액 계산, service worker의 직렬 큐로 상태 갱신, request ID로 중복 차감 방지.
- 서비스 가격은 고정 로컬 카탈로그에서 읽습니다. 외부 요청이 가격을 지정할 수 없습니다.
- 목표의 의미나 API 품질은 검증하지 않습니다. 자연어를 금융 권한으로 자동 컴파일하지 않습니다.
- 내보낸 JSON은 서명되지 않은 데모 기록이며 법률상 위임장 또는 온체인 권한이 아닙니다.
- 저장소의 코드/영수증은 공개되지 않고 확장 로컬 저장소에만 기록됩니다. 동기화/원격 분석 없음.
통합 구조
위임 입력 → BlockFlow 검증·산출물 바인딩 → 사람이 온체인 grant → 에이전트 reserve → EIP-1271 x402 결제 → RPC 영수증 대조 순서입니다. 컴파일러 커밋·작업트리·정책·컨트랙트 바이트코드·소유자 슬롯을 검사하고 불일치하면 차단합니다.
BlockFlow는 워크플로 구조를 검증합니다. 예산 제약은 별도로 작성한 MandateValidator가 집행하며, BlockFlow가 임의 BPMN 전체를 지출 모듈로 자동 변환하는 것은 아닙니다. endpoint와 자연어 목표는 온체인 결제 의미로 강제되지 않습니다.
다음 단계
남은 검증은 실제 Base Sepolia USDC와 facilitator를 이용한 배포·정산, 별도 보안 검토, 사람 지갑 승인 UI입니다. 현재 승인은 로컬 human-only CLI이고 구매마다 예약 가스가 발생합니다. 임의 UserOperation에 대한 session 권한이나 범용 ERC-7579 모듈을 주장하지 않습니다.
References: Chrome Side Panel, Messaging, x402 Bazaar.
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。