mcp-paypal について
mcp-paypal は、PayPal 向けの MCP サーバーで、PayPal REST API をラップしてグローバル決済とペイアウトを扱います。注文、サブスクリプション、紛争に関する 19 のツールを提供します。PayPal 加盟店アカウントを既に持ち、エージェントによる決済やペイアウトを望む LatAm の SaaS やマーケットプレイスを想定しています。サンドボックスと本番環境の両方に対応しています。
主な機能
- 01PayPal 関連のツールを 19 種類提供
- 02注文の作成、承認、キャプチャ、返金に対応
- 03一括ペイアウトとペイアウト項目の取得に対応
- 04サブスクリプションの作成、取得、キャンセルを管理
- 05紛争の取得と Webhook 署名の検証に対応
活用シーン
- 01エージェント経由での PayPal 注文の作成とキャプチャ
- 02一括ペイアウトの実行とステータス確認
- 03サブスクリプションの管理と紛争クレームへの対応
MCP 対応
本プロジェクトは MCP サーバーであり、PayPal REST API の操作を MCP クライアントにツールとして公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @codespar/mcp-paypalPAYPAL_CLIENT_IDPayPal REST app client id (from developer.paypal.com Apps & Credentials).PAYPAL_CLIENT_SECRETシークレットPayPal REST app client secret (OAuth2 client_credentials password).PAYPAL_ENVPayPal environment. 'sandbox' (default, https://api-m.sandbox.paypal.com) or 'live' (https://api-m.paypal.com).ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
19掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| body | object | いいえ | リクエストにマージされる追加の Order create 本文フィールド(application_context など)。 |
| intent | enum | はい | 購入者の承認後すぐに支払いをキャプチャするか、後でキャプチャするために承認します。CAPTURE | AUTHORIZE |
| payment_source | object | いいえ | 省略可能な payment_source オブジェクト(例:{ paypal: { experience_context: { return_url, cancel_url } } } または { card: { ... } })。 |
| purchase_units | array | はい | purchase_unit オブジェクトの配列。各項目には amount: { currency_code, value } が必要です。省略可能:reference_id、description、items、shipping、payee。 |
| paypalRequestId | string | いいえ | 冪等性のための省略可能な PayPal-Request-Id ヘッダー。 |
詳細
@codespar/mcp-paypal
PayPal 用 MCP サーバーです。PayPal REST API を通じて、グローバルな決済と送金を実現します。
対象顧客:PayPal の加盟店アカウントをすでに保有し、エージェント主導のチェックアウト、送金、サブスクリプション、異議申し立てへの対応を必要としている、グローバルに販売する中南米の SaaS 企業やマーケットプレイスです。
ツール(19)
| ツール | 目的 |
|---|---|
create_order | POST /v2/checkout/orders を使用して PayPal 注文を作成します。 |
get_order | GET /v2/checkout/orders/{id} を使用して、ID で PayPal 注文を取得します。 |
capture_order | POST /v2/checkout/orders/{id}/capture を使用して、承認済み注文の支払いを回収します。 |
authorize_order | POST /v2/checkout/orders/{id}/authorize を使用して、承認済み注文の支払いをオーソリします。 |
capture_authorization | POST /v2/payments/authorizations/{id}/capture を使用して、以前にオーソリされた支払いを回収します。 |
refund_capture | POST /v2/payments/captures/{id}/refund を使用して、回収済みの支払いを返金します。 |
void_authorization | POST /v2/payments/authorizations/{id}/void を使用して、未決済のオーソリを無効化(解除)します。 |
get_payment_details | GET /v2/payments/{type}/{id} を使用して、ID で支払いオブジェクトを取得します。 |
create_batch_payout | POST /v1/payments/payouts を使用して、一括送金を作成します。 |
get_payout | GET /v1/payments/payouts/{batch_id} を使用して、ID で一括送金を取得します。 |
get_payout_item | GET /v1/payments/payouts-item/{item_id} を使用して、ID で個別の送金項目を取得します。 |
create_subscription | POST /v1/billing/subscriptions を使用して、請求サブスクリプションを作成します。 |
get_subscription | GET /v1/billing/subscriptions/{id} を使用して、ID でサブスクリプションを取得します。 |
cancel_subscription | POST /v1/billing/subscriptions/{id}/cancel を使用して、アクティブなサブスクリプションをキャンセルします。 |
list_disputes | GET /v1/customer/disputes を使用して、異議申し立ての一覧を取得します。 |
get_dispute | GET /v1/customer/disputes/{id} を使用して、ID で異議申し立てを取得します。 |
accept_dispute_claim | POST /v1/customer/disputes/{id}/accept-claim を使用して、異議申し立ての請求に対する責任を受け入れます。 |
list_webhooks | GET /v1/notifications/webhooks を使用して、アプリに設定されている Webhook の一覧を取得します。 |
verify_webhook_signature | POST /v1/notifications/verify-webhook-signature を使用して、Webhook イベントの署名を検証します。 |
インストール
npm install @codespar/mcp-paypal
環境
PAYPAL_CLIENT_ID="..." # REST app client id
PAYPAL_CLIENT_SECRET="..." # REST app client secret (OAuth2)
PAYPAL_ENV="sandbox" # 'sandbox' (default) or 'live'
エンドポイント:
sandbox->https://api-m.sandbox.paypal.comlive->https://api-m.paypal.com
認証
PayPal REST API は OAuth2 client_credentials を使用します。サーバーは grant_type=client_credentials を指定して /v1/oauth2/token に CLIENT_ID:CLIENT_SECRET(Basic 認証)を POST し、期限切れの 60 秒前までベアラートークンをキャッシュして、必要に応じて更新します。
実行
# stdio (default — for Claude Desktop, Cursor, etc)
npx @codespar/mcp-paypal
# HTTP (for server-to-server testing)
MCP_HTTP=true MCP_PORT=3000 npx @codespar/mcp-paypal
注意事項
- 金額は PayPal REST では次のようなオブジェクトです:
{ "currency_code": "USD", "value": "10.50" }。値は小数を含む文字列です。 - サーバーは、対応するツールについて、REST 本文の任意のフィールドを
bodyの下にそのまま転送します。そのため、PayPal REST リファレンスに記載されているフィールドであれば、MCP のinputSchemaに含まれていなくても指定できます。 - 支払いの回収や返金では、指定された場合に
PayPal-Request-Idヘッダー(冪等性)が転送されます。
エンタープライズ
エージェントによる支払いにガバナンス、予算上限、監査証跡が必要ですか?CodeSpar Enterprise は、これらの MCP サーバーにポリシーエンジン、決済ルーティング、コンプライアンステンプレートを追加します。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。