0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude に有料 API を自律で叩かせたら API キー管理が消えた話【MCP × pay-per-call】

0
Last updated at Posted at 2026-05-15

この記事で紹介する pay-per-call-mcp は今すぐ試せます(Demo Mode はアカウント不要)。

この記事でわかること

  • pay-per-call-mcp の概要と Demo Mode(サインアップ不要)の使い方
  • Claude Desktop から有料 API を USDC で自律課金させる仕組み
  • list_servicescall_service の基本フロー
  • KYA(Know-Your-Agent)スペンドリミットによる過剰課金の防止
  • 国税庁インボイスチェック・gBizINFO など日本向けサービスの活用例

はじめに

Claude などの AI エージェントに「Tavily で検索して」「この会社の情報を調べて」と頼みたい場面がよくあります。でも実際にやろうとすると、すぐに壁にぶつかります。

有料 API を叩かせるには、API キーをエージェントに渡すしかない。

これが地味に辛い。

問題の整理

サービスごとに API キーが必要

Tavily、Serper、Hunter.io、gBizINFO——それぞれに登録して、それぞれの API キーを管理して、それぞれの課金プランを把握しないといけない。エージェントに使わせたいサービスが増えるたびに同じことを繰り返す。

エージェントに API キーを渡すと漏洩リスクがある

API キーをそのまま環境変数に入れると、エージェントが何かの拍子に check_env() を呼んだり、ログに吐いたりするリスクがあります。また「エージェントが暴走して API を叩きまくる」のを止める仕組みも自前で作ることになる。

使った分だけ課金したい

月額 $49 のサブスクを契約しても、週に数回しか使わない。1 回あたり数セントで済む処理に月額課金は割に合わない。


解決策:pay-per-call-mcp の仕組み

この課題を解決するために LemonCake という仕組みを作りました。

コアのアイデアはシンプルです。

エージェントには API キーではなく「Pay Token(JWT)」を渡す。

あなた                  Claude                  有料 API
  │                       │                        │
  ├─ Pay Token 発行 ────▶  │                        │
  │   上限: $2.00         │                        │
  │   有効期限: 1h        │                        │
  │                       ├─ /api/proxy 呼び出し ─▶ │
  │                       │   Authorization: Bearer <pay_token>
  │                       │                        │
  │                       │  ◀─ レスポンス + 課金 ─┤
  │                       │                        │
  │                       ├─ (残高ゼロ)             │
  │                       │   402 Payment Required  │
  │                       ✗   エージェント停止      │

Pay Token の特徴

パラメータ 説明
limitUsdc この Token が使える上限額 "2.00"
expiresIn 有効期限 "1h"
serviceId 呼び出し可能なサービス "svc_tavily"

上限を超えたら 402 Payment Required が返ってエージェントは止まります。エージェントに本物の API キーが渡ることは一切ありません。

MCP サーバーとして動く

pay-per-call-mcpModel Context Protocol (MCP) サーバーとして実装されています。Claude Desktop や Cursor に npx 1 行で繋がります。


セットアップ

Claude Desktop への接続

~/Library/Application Support/Claude/claude_desktop_config.json に追記します。

{
  "mcpServers": {
    "pay-per-call": {
      "command": "npx",
      "args": ["-y", "pay-per-call-mcp"],
      "env": {
        "LEMON_CAKE_BUYER_JWT": "eyJhbGci..."
      }
    }
  }
}

Demo Mode で今すぐ試せる

アカウントも API キーも不要です。 環境変数を何も設定せずに起動すると、自動で Demo Mode になります。

{
  "mcpServers": {
    "pay-per-call": {
      "command": "npx",
      "args": ["-y", "pay-per-call-mcp"]
    }
  }
}

Demo Mode では以下が動きます:

  • demo_search — Wikipedia を検索(実データ)
  • demo_fx — 為替レートを取得(open.er-api)
  • demo_echo — httpbin でリクエストの中身を確認

課金なし、登録なし、即試せます。


実際に Claude に使わせてみる

Claude に以下のように話しかけます:

LemonCake の demo_search で "AI agent payments" を検索して、
デモ残高の確認もあわせてやって

Claude が自動で MCP ツールを呼び出します:

  1. setup — 現在の設定・モードを確認
  2. list_services — 利用可能なサービス一覧を取得
  3. call_service — demo_search を呼び出し
  4. check_balance — 残高確認

レスポンス例

{
  "status": 200,
  "chargeId": "ch_demo_abc123",
  "amountUsdc": "0.000",
  "x402Receipt": {
    "scheme": "lemoncake-pay-token-v1",
    "x402Compatible": true,
    "chain": "off-chain (LemonCake Pay Token)",
    "asset": "USDC",
    "amount": "0.000"
  }
}

対応サービス一覧

サービス カテゴリ 用途
Tavily 検索 AI 向け高品質検索
Serper 検索 Google 検索 API
Hunter.io メール ドメインからメール探索
gBizINFO 日本企業情報 法人番号・企業基本情報
国税庁インボイス API 税務 適格請求書発行事業者確認
e-Gov 行政 法令・行政文書検索

KYA(Know Your Agent)上限設定

{
  "balanceUsdc": "47.50",
  "kyaTier": "tier_1",
  "dailyLimitUsdc": "10.00",
  "sessionLimitUsdc": "2.00"
}

Pay Token の limitUsdc と KYA 上限の小さい方が実際の上限になります。二重の安全弁です。


まとめ

  • API キーを渡さない — エージェントには Pay Token(JWT)だけ渡す
  • 使った分だけ課金 — USDC での pay-per-call、月額サブスク不要
  • 自動停止 — 予算超過で 402、即時 revoke で 422
  • MCP で繋がるnpx 1 行、設定 JSON を数行追加するだけ
  • まず Demo Mode で試せる — アカウント不要

試してみたい方はこちらから(Demo Mode はすぐ使えます):

フィードバックや「このサービスを対応してほしい」などあれば、GitHub Issues か contact@aievid.com まで気軽にどうぞ。


試したい人へ

英語の Glama Playground が苦手な人は、以下のコマンドで日本のターミナルから動かせます:

npx -y pay-per-call-mcp@latest
# → 8 つのデモ API がすぐ使えます

設定不要、課金なし、サインアップ不要。

よくある質問

Q. Demo Mode では何ができますか?

A. 環境変数を何も設定しなければ自動で Demo Mode になります。Wikipedia 検索・為替レート取得・httpbin echo の 3 サービスが無料で動作します。実際の API フローを確認するのに最適です。

Q. API キーを何個も管理しなくてよくなるのですか?

A. はい。pay-per-call-mcp を使うと、Serper・Hunter・Tavily などの各 API キーは LemonCake 側で管理されます。エージェントには Pay Token 1 本だけ渡せば OK です。

Q. 課金上限を設定できますか?

A. Pay Token に limitUsdc(上限 USDC 額)・scope(利用可能サービス)・expiresAt(有効期限)を JWT クレームとして埋め込めます。エージェントはこの上限を物理的に超えられません。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?