App Store Connect API工具

STOMP是一个为Apple App Store Connect API提供访问的工具,支持AI助手管理iOS、macOS、tvOS和visionOS应用,包括TestFlight、构建、版本、App Store提交、评论、应用内购买和订阅等功能。

  • by SeriousMonster
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 SeriousMonster/stomp

使用说明

STOMP——应用商店连接的MCP服务器

让Claude、Cursor、Windsurf和其他人工智能编码代理完全访问Apple App Store Connect API-一套精简的日常工具和通用工具 api_request 到达每个终点的逃生舱。

STOMP是什么?

STOMP是一个 模型上下文协议(MCP) 苹果应用商店连接API的服务器。它允许AI助手管理您的iOS、macOS、tvOS和visionOS应用程序——TestFlight、构建、版本、App Store提交、评论、应用内购买和订阅。

STOMP故意运送 小型、高信号的日常工具集 而不是每个端点一个包装器。每个注册的工具都会花费上下文(整个会话都加载其名称、描述和完整的输入模式)并稀释工具选择,因此API的长尾由单个泛型处理 api_request 可以到达的工具 任何 App Store Connect端点——分析、证书、配置文件、Game Center、Xcode Cloud、App Clips、沙盒测试、定价、屏幕截图和其他一切。你不会失去任何能力;你只需停止为你很少调用的140个工具模式付费。

先决条件

  • Node.js 18+
  • 一 Apple开发者帐户 可以访问App Store Connect
  • 一 App Store Connect API密钥 (.p8文件)具有适当的权限

获取API密钥

  1. 登录到…… App Store Connect
  2. 首选 用户与访问 > 集成 > 应用商店连接API
  3. 点击 生成API密钥 (或向您的账户持有人索取)
  4. 选择一个名称,并选择密钥应具有的角色/权限
  5. 点击 生成
  6. 下载.p8文件 --苹果只允许你下载一次,所以把它存放在安全的地方
  7. 注意 密钥ID 如表和 发行人ID 在页面的顶部——你需要两者都有

安装

全局安装:

npm install -g @seriousmonster/app-store-connect-mcp

或者直接运行而不安装:

npx @seriousmonster/app-store-connect-mcp

配置

STOMP需要三个环境变量:

变量 描述
APP_STORE_CONNECT_KEY_ID 来自App Store Connect的密钥ID(例如。, ABC123DEFG)
APP_STORE_CONNECT_ISSUER_ID 发卡机构ID(UUID)
APP_STORE_CONNECT_P8_PATH .p8私钥文件的绝对路径(支持 ~)

Claude 代码

claude mcp add app-store-connect \
  -e APP_STORE_CONNECT_KEY_ID=YOUR_KEY_ID \
  -e APP_STORE_CONNECT_ISSUER_ID=YOUR_ISSUER_ID \
  -e APP_STORE_CONNECT_P8_PATH=~/.keys/AuthKey_YOUR_KEY_ID.p8 \
  -- npx @seriousmonster/app-store-connect-mcp

光标

添加到光标MCP配置(~/.cursor/mcp.json):

{
  "mcpServers": {
    "app-store-connect": {
      "command": "npx",
      "args": ["@seriousmonster/app-store-connect-mcp"],
      "env": {
        "APP_STORE_CONNECT_KEY_ID": "YOUR_KEY_ID",
        "APP_STORE_CONNECT_ISSUER_ID": "YOUR_ISSUER_ID",
        "APP_STORE_CONNECT_P8_PATH": "~/.keys/AuthKey_YOUR_KEY_ID.p8"
      }
    }
  }
}

通用MCP客户端

任何兼容MCP的客户端(Claude Desktop、Cline、Zed等)都可以运行STOMP。设置三个环境变量并运行 npx @seriousmonster/app-store-connect-mcp 作为服务器命令。

可用工具

STOMP为日常应用程序生命周期注册了一套专门的工具。此处未列出的任何内容都可以通过以下方式访问 api_request.

应用

工具 说明
list_apps 列出所有应用程序。按名称或捆绑包ID筛选
get_app 按ID获取特定应用程序的详细信息

应用商店版本

工具 说明
list_app_store_versions 列出应用程序的版本。按版本字符串、平台或状态筛选。
create_app_store_version 创建新版本(设置版本字符串、平台、发布类型)。

本地化

工具 说明
list_version_localizations 列出某个版本的所有本地化。
update_version_localization 更新本地化的描述、关键字、最新动态、促销文本、网址

试飞

工具 说明
list_beta_groups 列出应用程序的测试组。
create_beta_group 创建一个新的测试组。
add_tester_to_beta_group 将测试人员添加到测试组。
remove_tester_from_beta_group 从测试组中删除测试人员。
submit_build_for_beta_review 提交构建以供TestFlight测试版审查。

构建

工具 说明
list_builds 应用程序的列表构建。按版本、状态或到期时间过滤。
add_build_to_beta_group 将版本添加到TestFlight发行版的测试组中。

提交

工具 说明
create_app_store_version_submission 提交一个版本以供应用程序审查。

评论

工具 说明
list_customer_reviews 列出应用程序的客户评论。排序和筛选。
create_review_response 回复客户评论。

货币化(阅读)

工具 说明
list_in_app_purchases 列出应用程序的应用内购买。
list_subscription_groups 列出订阅组(包括 subscriptions 对于整个结构)。
list_subscriptions 列出订阅组中的订阅。

通用的

工具 说明
api_request 向任何App Store Connect API终结点发出任意请求。

这 api_request 安全舱口

这些专用工具涵盖了日常工作流程,但苹果的API表面是巨大的-证书、供应配置文件、定价、分析、Game Center、Xcode Cloud、应用程序剪辑、沙盒测试、应用内购买和订阅创作、屏幕截图、应用程序事件等等。STOMP没有为每个工具提供一个工具(并为每个工具支付上下文成本),而是公开了一个 api_request 可以击中的工具 任何 端点直接。

您提供:

  • 方法 -- GET, POST, PATCH,或 DELETE
  • 路径 --API路径,例如。 /v1/apps, /v2/inAppPurchases/{id}
  • 参数 (可选)--查询参数作为键值对
  • 身体 (可选)——POST/PATCH请求的JSON字符串,遵循Apple的JSON:API格式

身份验证是自动处理的。参见 苹果API文档 对于可用的端点和请求格式。

许可证

麻省理工学院