Paydirt MCP

Paydirt MCP

Enables coding agents to install and manage Paydirt's iOS SDK for user feedback, trial cancellation, and subscription cancellation, with Slack integration and app building.

Category
访问服务器

README

Paydirt MCP

CI npm License: MIT

MCP Registry name: io.github.Paydirt-AI/paydirt-mcp

The agent-native installer and control plane for Paydirt, an iOS SDK for regular feedback, trial cancellation, and subscription cancellation.

Paydirt MCP lets a coding agent create forms, place them in an iOS app, connect Slack, build and launch the host app, leave a Debug-only test form open for immediate verification, and read raw feedback. Paydirt supports native StoreKit, RevenueCat, Superwall, app-owned billing, and apps without subscriptions.

A generic installation creates and wires both trial cancellation and paid subscription cancellation. Slack OAuth creates a new #paydirt-cancellation-feedback channel and assigns every installed form automatically. If that name is taken, Paydirt creates the next numbered name; manual channel selection is only the fallback when requested or blocked by workspace policy.

Install in Codex

codex mcp add paydirt -- npx -y paydirt-mcp@latest

Restart Codex after adding the server. Then ask:

Install Paydirt in this iOS app for regular feedback, trial cancellation, and subscription cancellation. Detect the existing subscription setup, preserve any existing feedback form and its behavior, connect every Paydirt form to my Slack feedback channel, edit the app, build it, and give me an exact test path.

To remove the server later:

codex mcp remove paydirt

Install in Claude Code

claude mcp add paydirt -- npx -y paydirt-mcp@latest

The public Paydirt Claude plugin marketplace is also included in this repository. After the public repository is available:

/plugin marketplace add Paydirt-AI/paydirt-mcp
/plugin install paydirt@paydirt-plugins

The plugin bundles both the Paydirt installation workflow and the pinned MCP server configuration.

Other MCP hosts can launch the same stdio command:

{
  "mcpServers": {
    "paydirt": {
      "command": "npx",
      "args": ["-y", "paydirt-mcp@latest"]
    }
  }
}

Requires Node.js 18 or newer.

Authentication

Authentication is an explicit, headless-safe two-step flow:

  1. The agent calls paydirt_begin_setup. It immediately receives an authorization_url, session_id, and exact finish_arguments. The MCP process never launches a browser, sleeps, or polls.
  2. Open authorization_url in any browser and sign in to Paydirt.
  3. The agent calls paydirt_finish_setup with the returned arguments. A pending call returns immediately; call it again only after authorization is complete.

paydirt_setup remains as a compatibility alias: call it without session_id to begin and with session_id to finish.

Credentials are saved locally at ~/.paydirt/credentials.json with owner-only permissions. They are not written to an app repository or sent anywhere except api.paydirt.ai. For ephemeral environments, set PAYDIRT_AUTH_TOKEN instead.

Natural agent workflows

Add a form at an in-app action

Ask:

Add a feedback form titled “Export Feedback” after a successful export and send it to #product-feedback.

The agent should use paydirt_add_feedback_form. It reuses an existing custom form with the same normalized title, preserves the requested placement, resolves Slack when possible, and returns the exact Swift presentation call. A remote form is not considered installed until the agent edits and builds the host app.

Supported triggers are user taps, successful in-app actions, screen appearance, and app-owned custom conditions.

Install cancellation feedback

The agent inspects the app before setup and selects the existing subscription source of truth:

  • Native StoreKit uses Paydirt's built-in StoreKit integration.
  • RevenueCat and Superwall use host-app adapters, avoiding duplicate package dependencies.
  • App-owned billing emits Paydirt's provider-independent cancellation event.
  • Apps without subscriptions can install manual feedback alone.

The agent must preserve all existing host-app feedback forms, buttons, screens, handlers, destinations, and side effects. It may only add or change regular feedback when the user explicitly requests that exact placement. If a requested cancellation bridge is blocked, the agent reports the narrow provider blocker, preserves the existing app behavior, and completes every unaffected requested form.

An older RevenueCat version is not a blocker. The agent keeps the installed version and adapts the copied source adapter to the customer-info or purchaser-info API already compiling in the app. Newer optional metadata may be omitted, or Paydirt can be called from the app's existing confirmed RevenueCat cancellation path.

Deliver to Slack and coding agents

Slack receives one message after a conversation finishes, containing the exact raw questions and answers. An optional AI summary may follow the raw conversation. Coding-agent tools expose responses read-only; Paydirt does not automatically take action on feedback.

Tools

Tool Purpose
paydirt_begin_setup Start non-blocking browser authorization
paydirt_finish_setup Check authorization once and return the installation contract
paydirt_setup Backward-compatible begin/finish alias
paydirt_add_feedback_form Create/reuse a named form and return its host-app placement contract
paydirt_list_apps, paydirt_create_app, paydirt_get_app, paydirt_update_app Manage apps
paydirt_list_forms, paydirt_create_form, paydirt_get_form, paydirt_update_form, paydirt_toggle_form, paydirt_delete_form Manage forms
paydirt_get_responses Read raw conversations using a stable cursor
paydirt_get_summary, paydirt_ask Read optional AI analysis
paydirt_connect_slack, paydirt_slack_status, paydirt_list_slack_channels, paydirt_set_form_channel Connect and configure Slack delivery
paydirt_health_check Verify API connectivity and credentials

Development

npm ci
npm test
npm pack --dry-run

The repository intentionally contains only the public MCP client. Paydirt's API, dashboard, infrastructure, and operational configuration remain private.

Official MCP Registry metadata lives at .mcp/server.json. It describes the current npm stdio package; Paydirt does not claim a remote MCP transport until a public HTTPS endpoint is deployed and verified.

See SUPPORT.md for support, SECURITY.md before reporting a vulnerability, and CONTRIBUTING.md before opening a pull request.

License

MIT

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选