Model Context Protocol (MCP)は、AIアプリケーションが外部データソースやAPIに安全に接続できるオープンスタンダードです。Dodo Payments MCPサーバーは、Claude、Cursor、その他のMCP互換クライアントに対して、あなたの支払いインフラストラクチャへの構造化されたアクセスを提供します。
主な機能
支払い操作 : 支払いと返金の作成、取得、管理
サブスクリプション管理 : 定期請求、アップグレード、キャンセルの処理
顧客管理 : 顧客データとポータルアクセスの管理
商品カタログ : 商品、価格、割引の作成と更新
ライセンス管理 : ソフトウェアライセンスの有効化、検証、管理
使用量ベースの請求 : メーター使用量の追跡と請求
インストール
あなたのワークフローに最適なインストール方法を選択してください。
リモートMCPサーバー(推奨)
ローカルのセットアップやインストールなしでホストされたMCPサーバーにアクセスします。これが最も早く始める方法です。
MCPクライアントを設定
特定のクライアント用に提供されたJSON構成をコピーします。CursorまたはClaude Desktopの場合、これをMCP設定に追加します: {
"mcpServers" : {
"dodopayments_api" : {
"command" : "npx" ,
"args" : [ "-y" , "mcp-remote@latest" , "https://mcp.dodopayments.com/sse" ]
}
}
}
認証と設定
OAuthフローが次のことを促します:
Dodo Payments APIキーを入力
環境を選択(テストまたは本番)
MCPクライアントタイプを選択
APIキーを安全に保管してください。開発中はテストモードのキーを使用してください。
セットアップを完了
ログインして承認 をクリックして接続を承認します。接続が完了すると、AIアシスタントはあなたの代わりにDodo Payments APIとインタラクションできます。
NPMパッケージ
NPMを使用してMCPサーバーをローカルでインストールして実行します。
NPX(インストール不要)
MCPクライアント設定
# Set your API key
export DODO_PAYMENTS_API_KEY = "dodo_test_..."
# Run the latest version
npx -y dodopayments-mcp@latest
{
"mcpServers" : {
"dodopayments_api" : {
"command" : "npx" ,
"args" : [ "-y" , "dodopayments-mcp@latest" ],
"env" : {
"DODO_PAYMENTS_API_KEY" : "dodo_test_..."
}
}
}
}
最新のバージョンを常に取得するには@latestを使用するか、安定性のために特定のバージョンにピン留めします@1.0.0。
Docker
一貫したデプロイのためにコンテナ化された環境でMCPサーバーを実行します。
# Pull the latest image
docker pull ghcr.io/dodopayments/mcp:latest
# Run the container
docker run -e DODO_PAYMENTS_API_KEY="dodo_test_..." \
-p 3000:3000 \
ghcr.io/dodopayments/mcp:latest
クライアント設定
お好みのAIクライアントでDodo Payments MCPサーバーを設定します。
Cursor
Claude Desktop
Cline (VS Code)
Zed
その他のクライアント
CursorでDodo Payments MCPサーバーを設定し、支払いデータへの会話アクセスを有効にします。
Cursor設定を開く
Cursor設定 > 機能 > Model Context Protocol に移動するか、Cmd/Ctrl + Shift + Pを押して「MCP設定」を検索します。
設定を編集
設定を編集 をクリックしてmcp_config.jsonファイルを開きます。
Dodo Payments設定を追加
次のいずれかの設定を選択します: リモートサーバー(推奨) {
"mcpServers" : {
"dodopayments" : {
"command" : "npx" ,
"args" : [ "-y" , "mcp-remote@latest" , "https://mcp.dodopayments.com/sse" ]
}
}
}
ローカルNPX {
"mcpServers" : {
"dodopayments" : {
"command" : "npx" ,
"args" : [ "-y" , "dodopayments-mcp@latest" ],
"env" : {
"DODO_PAYMENTS_API_KEY" : "dodo_test_..."
}
}
}
}
保存して再起動
設定ファイルを保存し、Cursorを再起動します。 AIアシスタントにDodo Paymentsデータについて尋ねて接続を確認します。
Claude DesktopでDodo Payments MCPサーバーを設定し、支払いデータへの会話アクセスを有効にします。
設定ファイルを見つける
Claude Desktopの設定ファイルを見つけます:
macOS : ~/Library/Application Support/Claude/claude_desktop_config.json
Windows : %APPDATA%\Claude\claude_desktop_config.json
Linux : ~/.config/Claude/claude_desktop_config.json
設定を編集
テキストエディタでファイルを開き、Dodo Payments設定を追加します: リモートサーバー(推奨) {
"mcpServers" : {
"dodopayments" : {
"command" : "npx" ,
"args" : [ "-y" , "mcp-remote@latest" , "https://mcp.dodopayments.com/sse" ]
}
}
}
ローカルNPX {
"mcpServers" : {
"dodopayments" : {
"command" : "npx" ,
"args" : [ "-y" , "dodopayments-mcp@latest" ],
"env" : {
"DODO_PAYMENTS_API_KEY" : "dodo_test_..."
}
}
}
}
Claude Desktopを再起動
Claude Desktopを閉じて再度開き、変更を適用します。 Claude Desktopで🔌アイコンを探してMCPサーバーが接続されていることを確認します。
Cline (VS Code)でDodo Payments MCPサーバーを設定し、支払いデータへの会話アクセスを有効にします。
Cline設定を開く
Clineの設定ファイルを見つけます:
macOS : ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
Windows : %APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json
Linux : ~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
MCPサーバーを設定
Dodo Payments MCPサーバー設定を追加します: {
"mcpServers" : {
"dodopayments" : {
"command" : "npx" ,
"args" : [ "-y" , "dodopayments-mcp@latest" ],
"env" : {
"DODO_PAYMENTS_API_KEY" : "dodo_test_..."
}
}
}
}
VS Codeを再読み込み
VS Codeウィンドウを再読み込み(Cmd/Ctrl + Shift + P > “ウィンドウを再読み込み”)してMCPサーバー接続を有効にします。
ZedでDodo Payments MCPサーバーを設定し、支払いデータへの会話アクセスを有効にします。
Zed設定を開く
設定 > アシスタント > Model Context Protocol に移動します。
サーバー設定を追加
次の設定を追加します: {
"mcpServers" : {
"dodopayments" : {
"command" : "npx" ,
"args" : [ "-y" , "dodopayments-mcp@latest" ],
"env" : {
"DODO_PAYMENTS_API_KEY" : "dodo_test_..."
}
}
}
}
保存して確認
設定を保存します。MCPサーバーはZedのAIアシスタントで利用可能になるはずです。
他のMCP互換クライアントでDodo Payments MCPサーバーを設定し、支払いデータへの会話アクセスを有効にします。 リモートサーバー(推奨) {
"mcpServers" : {
"dodopayments" : {
"command" : "npx" ,
"args" : [ "-y" , "mcp-remote@latest" , "https://mcp.dodopayments.com/sse" ]
}
}
}
ローカルNPX {
"mcpServers" : {
"dodopayments" : {
"command" : "npx" ,
"args" : [ "-y" , "dodopayments-mcp@latest" ],
"env" : {
"DODO_PAYMENTS_API_KEY" : "dodo_test_..."
}
}
}
}
ツールフィルタリング
AIアシスタントに公開されるAPI操作を制御し、パフォーマンスを最適化し、セキュリティを維持します。
操作タイプでフィルタリング
読み取り専用または書き込み操作へのアクセスを制限します。
# Only expose read operations (GET requests)
npx dodopayments-mcp --operation=read
# Only expose write operations (POST, PUT, DELETE)
npx dodopayments-mcp --operation=write
開発中は--operation=readを使用してデータの誤った変更を防ぎます。
リソースでフィルタリング
特定のAPIリソースにツールを制限します。
# Only expose payment-related tools
npx dodopayments-mcp --resource=payments
# Expose multiple resources
npx dodopayments-mcp --resource=payments --resource=customers
特定のツールを含めるまたは除外する
利用可能な個々のツールを微調整します。
# Include only specific tools
npx dodopayments-mcp --tool=create_payments --tool=list_payments
# Exclude specific tools
npx dodopayments-mcp --no-tool=delete_products
# List all available tools
npx dodopayments-mcp --list
フィルタを組み合わせる
正確な制御のために複数のフィルタを同時に適用します。
# Only payment and subscription read operations
npx dodopayments-mcp --operation=read --resource=payments --resource=subscriptions
高度な使用法
プログラムによる統合
カスタムMCPサーバーを構築するか、既存のものをプログラムで拡張します。
import { server , endpoints , init } from "dodopayments-mcp/server" ;
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js" ;
// Initialize with all default endpoints
init ({ server , endpoints });
// Start the server
const transport = new StdioServerTransport ();
await server . connect ( transport );
カスタムツール開発
独自のツールとビジネスロジックでMCPサーバーを拡張します。
import { server , init } from "dodopayments-mcp/server" ;
import createPayments from "dodopayments-mcp/tools/payments/create-payments" ;
import { zodToJsonSchema } from "zod-to-json-schema" ;
import { z } from "zod" ;
// Define a custom tool
const customTool = {
tool: {
name: 'calculate_payment_total' ,
description: 'Calculate payment total with tax and fees' ,
inputSchema: zodToJsonSchema (
z . object ({
amount: z . number (). describe ( 'Base amount in cents' ),
tax_rate: z . number (). describe ( 'Tax rate as decimal' ),
})
),
},
handler : async ( client , args ) => {
const total = args . amount * ( 1 + args . tax_rate );
return {
content: [{
type: 'text' ,
text: JSON . stringify ({ total , currency: 'usd' }),
}],
};
},
};
// Initialize with custom tools
init ({
server ,
endpoints: [ createPayments , customTool ]
});
セキュリティベストプラクティス
API資格情報を保護し、安全な統合を維持します。
資格情報をバージョン管理にコミットしない APIキーを環境変数または安全なシークレット管理システムに保存します。 # Use environment variables
export DODO_PAYMENTS_API_KEY = "dodo_test_..."
# Use a .env file (add to .gitignore)
echo "DODO_PAYMENTS_API_KEY=dodo_test_..." > .env
定期的にキーをローテーションする 定期的に新しいAPIキーを生成し、Dodo Paymentsダッシュボードを通じて古いものを無効にします。 開発にはテストキーを使用する 本番データに影響を与えないように、開発中は常にテストモードのAPIキーを使用します。
本番環境でツールフィルタリングを適用する 公開される操作をAIアシスタントが必要とするものだけに制限します。 # Production: read-only access
npx dodopayments-mcp --operation=read
# Development: full access
npx dodopayments-mcp
カスタムエンドポイントの認証を実装する リクエストを検証し、カスタムツールハンドラーで認可を強制します。 API使用状況を監視する Dodo Paymentsダッシュボードを通じてMCPサーバーのアクティビティを追跡し、異常なパターンに対してアラートを設定します。
リモートサーバーにはHTTPSを使用する リモートMCPサーバーを常にHTTPSエンドポイントの背後にデプロイします。 レート制限を実装する MCPサーバーとAPIレベルの両方でレート制限を実装して悪用から保護します。 ネットワークアクセスを制限する ファイアウォールルールを設定して、どのクライアントがMCPサーバーに接続できるかを制限します。
トラブルシューティング
APIキーを確認する APIキーが正しく設定され、必要な権限を持っていることを確認します。 # Test your API key
curl -H "Authorization: Bearer dodo_test_..." \
https://api.dodopayments.com/payments
ネットワーク接続を確認する Dodo Payments APIエンドポイントに到達できることを確認します。 クライアントログを確認する 接続の問題を診断するためにMCPクライアントで詳細なログを有効にします。
APIキー環境を確認する テストエンドポイントにはテストキーを、本番エンドポイントには本番キーを使用していることを確認します。 キーの権限を確認する APIキーが試みている操作の権限を持っていることを確認します。 資格情報を再生成する 問題が解決しない場合は、ダッシュボードから新しいAPIキーを生成します。
入力パラメータを検証する AIアシスタントが各ツールに対して正しくフォーマットされたパラメータを提供していることを確認します。 エラーメッセージを確認する APIからのエラーレスポンスを確認し、何が問題だったのか具体的なガイダンスを得ます。 APIを直接テストする curlやPostmanを介してDodo Payments APIを直接呼び出すときに操作が機能することを確認します。
リソース