Paydirt について
Paydirt MCPは、コーディングエージェントがiOSアプリにPaydirtのフィードバックフォームを導入・管理できるサーバーです。解約や機能提案の回答をSlackまたはエージェントに届け、回答や概要を読み取り専用で参照できます。
主な機能
- 01iOSプロジェクトへのPaydirt SDK導入
- 02フィードバックフォームの作成・管理
- 03回答のSlackまたはエージェントへの振り分け
- 04回答とフィードバックダイジェストの参照
- 05サブスクリプション解約フィードバック
活用シーン
- 01iOSアプリに機能提案・解約フォームを追加
- 02解約と機能提案を別々のSlackチャンネルへ振り分け
- 03コーディングエージェントのワークフローで回答を確認
MCP 対応
Paydirtのセットアップ、アプリ・フォーム管理、Slack振り分け、回答取得、フィードバック概要のツールを提供します。ホスト型Streamable HTTPエンドポイントとローカルstdioサーバーに対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
23掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| app_name | string | いいえ | セットアップ時に再利用または作成するアプリの優先名 |
| bundle_id | string | いいえ | セットアップ時に照合する iOS の優先 bundle ID |
| use_cases | array | いいえ | インストールする、確認済みのフィードバック体験です。推奨プランは Suggest a Feature と、サブスクリプションがある場合のトライアルおよび有料解約です。 |
| session_id | string | いいえ | 最初の呼び出しで返されたセットアップセッションです。指定すると、この呼び出しは paydirt_finish_setup と同様に動作します。 |
| app_description | string | いいえ | セットアップの作成または修復時に保存する任意のアプリ説明 |
| uses_revenuecat | boolean | いいえ | 非推奨の互換性入力です。subscription_provider を使用してください。 |
| feature_placement | string | いいえ | 開発者が確認した Suggest a Feature の配置場所です。settings や after_successful_export などを指定します。デフォルトは settings です。 |
| form_plan_confirmed | boolean | いいえ | 開発者が解約、Suggest a Feature、またはカスタマイズしたフォームプランを確認した場合に限り、true に設定します。確認がない場合、セットアップは簡潔な確認プロンプトを返し、認証を開始しません。 |
| subscription_provider | enum | いいえ | ホストアプリで検出されたサブスクリプションの信頼できる情報源です。セットアップ前に特定できなかった場合に限り、auto を使用します。auto | none | storekit | revenuecat | superwall | custom |
| subscription_product_ids | array | いいえ | ネイティブ StoreKit の自動更新プロダクト ID です。完全な storekit 統合に必須です。 |
詳細
Paydirt MCP
MCP Registry 名:io.github.Paydirt-AI/paydirt-mcp
Paydirt のエージェントネイティブなインストーラー兼コントロールプレーンです。Paydirt は、機能の提案、トライアルの解約、サブスクリプションの解約に対応する iOS SDK です。
Paydirt MCP を使うと、チャットからコーディングエージェントに iOS アプリへ Paydirt を追加させることができます。フォームを提案して作成し、SDK キーをプロジェクトに書き込み、アプリをビルドして起動し、起動時に Debug セットアップチェックを表示します。また、回答を Slack とエージェントに振り分け、生のフィードバックを読み取ります。Paydirt は、ネイティブの StoreKit、RevenueCat、Superwall、アプリ独自の課金、およびサブスクリプションのないアプリに対応しています。
インストール
いずれかを選んでください。ホステッドサーバーが推奨の方法です。一度 Google でサインインすれば、キーを貼り付ける必要はありません。
Claude Code プラグイン(インストールスキルを同梱):
/plugin marketplace add Paydirt-AI/paydirt-mcp
/plugin install paydirt@paydirt-plugins
Claude Code、ホステッドサーバー:
claude mcp add --transport http paydirt https://mcp.paydirt.ai/mcp
Codex、ホステッドサーバー:
codex mcp add paydirt --url https://mcp.paydirt.ai/mcp
代替方法、ローカル stdio(任意の MCP ホストで利用可能。Node.js 18 以降が必要です):
npx -y paydirt-mcp
{
"mcpServers": {
"paydirt": {
"command": "npx",
"args": ["-y", "paydirt-mcp"]
}
}
}
現在の Codex デスクトップ版では、新しく追加した MCP サーバーが表示されるまで再起動が必要な場合があります。これはツール検出を更新するための一度限りの操作であり、Paydirt の要件ではありません。
初回実行
次のように伝えます。
このアプリに Paydirt を追加してください。解約時のフィードバックと機能の提案を設定してください。
- 接続します。 エージェントホストがブラウザーのタブを開きます。Google で続行し、[許可]を選択してください。タブにはエージェントに戻るよう表示されます。キーは不要です。
- 提案を確認します。 エージェントがプロジェクトを調べ、実際の解約フローがあるファイルを明記したうえで、サブスクリプションの解約、トライアルの解約、機能の提案をまとめたメッセージを1件送信します。回答の送信先は Slack とエージェントです。「はい」と返信するか、Slack のみ、こちらのみを選ぶか、フォームを削除してください。サブスクリプションがない場合は、解約時のフィードバックを開始する手段がまだないことを伝え、機能の提案のみをおすすめします。確認するまで何も作成されません。
- ライブデモを行います。 エージェントがアプリとフォームを作成し、送信先を保存します。Slack を選んだ場合は、作業を続けながら Slack のリンクを共有します。SDK を追加してキーをプロジェクトに書き込み、初回起動時に表示される Debug セットアップチェックを追加し、アプリをビルドして起動します。
- Slack への振り分けを設定します。 Slack の[許可]画面を操作すると、エージェントがチャンネルの一覧を表示し、たとえば解約と機能のアイデアを別々のチャンネルに振り分ける案をチャットで提案します。確認すると、振り分けが保存されます。
- 最初の回答を受け取ります。 音声またはテキストでテスト回答を1件送信してください。エージェントはすでに
paydirt_wait_for_responseで待機しており、回答が届くと通知します。
既存のフィードバック画面と購入フローは保持されます。コーディングエージェントに回答を送る場合は、日次の読み取り専用ブリーフも利用できます。
ローカル stdio サーバーでは、paydirt_begin_setup がサインインのみを行う authorization_url を返し、paydirt_finish_setup が同じインストール契約を返します。MCP プロセスがブラウザーを開いたり、スリープしたり、ポーリングしたりすることはありません。時間制限付きで待機するのは paydirt_wait_for_response のみで、最大90秒です。paydirt_setup は互換性のためのエイリアスとして引き続き利用できます。
ローカル認証情報は、所有者のみがアクセスできる権限で ~/.paydirt/credentials.json に保存されます。アプリのリポジトリに書き込まれたり、api.paydirt.ai 以外に送信されたりすることはありません。一時的な環境では、代わりに PAYDIRT_AUTH_TOKEN を設定してください。
日次フィードバックブリーフ
paydirt_get_feedback_digest は、スケジュールされたタスク向けの読み取り専用期間サマリーを返します。完了した回答の合計数、機能の提案、トライアルの解約、サブスクリプションの解約、その他のフィードバック、直前の同じ長さの期間からの変化、簡潔なハイライトが含まれます。回答がない日も、ゼロ件であることが明示されます。ダイジェストによってコーディングタスクが作成されたり、アプリが自動で変更されたりすることはありません。
自然なエージェントのワークフロー
アプリ内アクションの位置にフォームを追加する
次のように依頼します。
エクスポート成功後に「Export Feedback」というタイトルのフィードバックフォームを追加し、#product-feedback に送信してください。
エージェントは paydirt_add_feedback_form を使用します。同じ正規化済みタイトルの既存のカスタムフォームを再利用し、指定された配置を維持し、可能な場合は Slack を解決して、正確な Swift の表示呼び出しを返します。エージェントがホストアプリを編集してビルドするまでは、リモートフォームはインストール済みとは見なされません。
サポートされるトリガーは、ユーザーのタップ、アプリ内アクションの成功、画面の表示、アプリが所有するカスタム条件です。
キャンセル時のフィードバックをインストールする
エージェントはセットアップの前にアプリを調べ、既存のサブスクリプションの信頼できる情報源を選択します。
- ネイティブの StoreKit を使用する場合は、Paydirt の組み込み StoreKit 統合を使用します。
- RevenueCat を使用する場合は、インストーラー管理の互換性ソースと、使い慣れた
Paydirt.enableRevenueCatIntegration(...)呼び出しを使用し、パッケージの依存関係が重複しないようにします。 - ネイティブの StoreKit は、Superwall がペイウォールのみを担うアプリを含め、一般的な App Store のサブスクリプションに対応します。
- アプリが所有する課金では、Paydirt のプロバイダーに依存しないキャンセルイベントを送信します。
- サブスクリプションのないアプリでは、手動フィードバックのみをインストールできます。
エージェントは、ホストアプリにある既存のすべてのフィードバックフォーム、ボタン、画面、ハンドラー、送信先、副作用を維持する必要があります。通常のフィードバックを追加または変更できるのは、ユーザーがその配置を明示的に依頼した場合のみです。依頼されたキャンセル連携がブロックされた場合、エージェントは該当するプロバイダーの制約を具体的に報告し、既存のアプリの動作を維持したうえで、影響を受けない依頼済みフォームをすべて完成させます。
古い RevenueCat のバージョンでもブロック要因にはなりません。エージェントはインストール済みのバージョンを維持し、インストーラー管理の統合ソースを、アプリですでにコンパイルできる customer-info または purchaser-info API に合わせて調整します。新しいオプションのメタデータは省略できます。または、Paydirt を、アプリ内に既にある RevenueCat のキャンセル確認パスから呼び出せます。
Slack およびコーディングエージェントに送信する
会話が終了すると、正確な質問と回答をそのまま含むメッセージが Slack に 1 件送信されます。その後に、オプションの AI による要約を続けることもできます。コーディングエージェントのツールが公開するのは読み取り専用の回答であり、Paydirt がフィードバックに基づいて自動的に操作することはありません。
ツール
| ツール | 用途 |
|---|---|
paydirt_begin_setup | ブラウザー認証をブロックせずに開始します |
paydirt_finish_setup | 認証を 1 回確認し、インストール契約を返します |
paydirt_setup | 後方互換性のための開始/完了エイリアスです |
paydirt_add_feedback_form | 名前付きフォームを作成または再利用し、ホストアプリへの配置契約を返します |
paydirt_list_apps、paydirt_create_app、paydirt_get_app、paydirt_update_app | アプリを管理します |
paydirt_list_forms、paydirt_create_form、paydirt_get_form、paydirt_update_form、paydirt_toggle_form、paydirt_delete_form | フォームを管理します |
paydirt_get_responses | 安定したカーソルを使って、生の会話を読み取ります |
paydirt_get_summary、paydirt_ask | オプションの AI 分析を読み取ります |
paydirt_set_delivery | 回答の送信先を保存します。Slack、コーディングエージェント、またはその両方です |
paydirt_connect_slack、paydirt_slack_status、paydirt_list_slack_channels、paydirt_set_slack_channels | Slack を接続し、キャンセルと機能アイデアの送信先を設定します |
paydirt_set_form_channel | 個別のカスタムフォームの送信先を設定します |
paydirt_wait_for_response | 最初のテスト回答を最大 90 秒待ちます |
paydirt_health_check | API の接続と認証情報を確認します |
開発
npm ci
npm test
npm pack --dry-run
このリポジトリには、意図的にパブリックな MCP クライアントのみを含めています。Paydirt の API、ダッシュボード、インフラストラクチャ、運用設定は非公開のままです。
Official MCP Registry のメタデータは .mcp/server.json にあります。npm の stdio パッケージと、ホスト型 Streamable HTTP エンドポイント https://mcp.paydirt.ai/mcp が記載されています。
サポートについては SUPPORT.md を、脆弱性を報告する前に SECURITY.md を、プルリクエストを作成する前に CONTRIBUTING.md をご確認ください。
ライセンス
ホスト型トランスポート
同じパッケージには、認証済みの Streamable HTTP サーバーも含まれています。
https://mcp.paydirt.ai/mcp をご覧ください。デプロイ、
OAuth の設定、セッションの分離、リリースの検証については HOSTED.md をご確認ください。検出メタデータは
https://mcp.paydirt.ai/.well-known/oauth-protected-resource/mcp にあります。
ヘルスエンドポイントやメタデータエンドポイントに到達できるだけでは、認証済みのツール使用を検証したことにはなりません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。