一个基于模型上下文协议(MCP)的服务器,用于与App Store Connect API进行交互。该服务器提供了管理App Store Connect中的应用、测试者、包ID、设备、应用元数据和功能的工具。
App Store Connect MCP服务器是一个全面的工具,它弥合了人工智能与Apple的App Store Connect生态系统之间的差距。基于模型上下文协议(MCP),此服务器使开发者能够通过对话式AI直接与App Store Connect的数据进行交互,使得应用程序管理、测试版测试和分析比以往任何时候都更加便捷。
关键优势:
适用对象:
无论您是检查应用分析、管理测试者、更新应用描述还是探索开发流水线,这个服务器都将复杂的App Store Connect操作转化为简单的对话命令。
<a href="https://glama.ai/mcp/servers/z4j2smln34"><img width="380" height="200" src="https://gips3.baidu.com/it/u=4190586006,4188630837&fm=3081&app=3081&f=PNG?w=760&h=400" alt="app-store-connect-mcp-server MCP服务器" /></a>
<a href="https://smithery.ai/server/appstore-connect-mcp-server" style="text-decoration: none;">
<img alt="Smithery 安装" src="https://smithery.ai/badge/appstore-connect-mcp-server" />
</a>
应用管理
测试版测试
应用商店版本本地化 ✨ 新功能
包ID管理
设备管理
用户管理
分析与报告
Xcode开发工具
要自动安装App Store Connect服务器到Claude桌面:
npx @smithery/cli install appstore-connect-mcp-server --client claude
npm install @joshuarileydev/app-store-connect-mcp-server
在您的Claude桌面配置文件中添加以下内容:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"app-store-connect": {
"command": "npx",
"args": [
"-y",
"appstore-connect-mcp-server"
],
"env": {
"APP_STORE_CONNECT_KEY_ID": "YOUR_KEY_ID",
"APP_STORE_CONNECT_ISSUER_ID": "YOUR_ISSUER_ID",
"APP_STORE_CONNECT_P8_PATH": "/path/to/your/auth-key.p8",
"APP_STORE_CONNECT_VENDOR_NUMBER": "YOUR_VENDOR_NUMBER_OPTIONAL"
}
}
}
}
APP_STORE_CONNECT_KEY_ID:您的API密钥IDAPP_STORE_CONNECT_ISSUER_ID:您的发行人IDAPP_STORE_CONNECT_P8_PATH:.p8私钥文件的路径要启用销售和财务报告工具,还需要:
APP_STORE_CONNECT_VENDOR_NUMBER:来自App Store Connect的供应商编号注意:销售和财务报告工具(如download_sales_report和download_finance_report)仅在配置了供应商编号时可用。您可以在App Store Connect的“销售和趋势”或“支付和财务报告”下找到您的供应商编号。
list_apps获取App Store Connect中的所有应用列表。
参数:
limit(可选):返回的最大应用数量(默认:100,最大:200)bundleId(可选):按包标识符筛选示例:
"列出我所有的应用"
"显示包标识符为com.example.myapp的应用"
"获取前50个应用"
get_app_info获取特定应用的详细信息。
参数:
appId(必需):应用的IDinclude(可选):包含的相关资源(例如,appClips、appInfos、appStoreVersions、betaGroups、builds)示例:
"获取应用ID123456789的信息"
"显示应用123456789及其测试组和构建"
"获取包括应用商店版本在内的我的应用详细信息"
list_beta_groups列出所有测试组(内部和外部)。
参数:
limit(可选):返回的最大组数(默认:100,最大:200)appId(可选):按应用ID筛选示例:
"显示所有测试组"
"列出应用123456789的测试组"
"获取前20个测试组"
list_group_testers列出特定测试组中的测试者。
参数:
groupId(必需):测试组的IDlimit(可选):返回的最大测试者数量(默认:100,最大:200)示例:
"列出组ABC123中的所有测试者"
"显示组ABC123中的前50个测试者"
add_tester_to_group向测试组添加新的测试者。
参数:
groupId(必需):测试组的IDemail(必需):测试者的电子邮件地址firstName(可选):测试者的名lastName(可选):测试者的姓示例:
"将john@example.com添加到测试组ABC123"
"将John Smith(john@example.com)添加到组ABC123"
remove_tester_from_group从测试组中移除测试者。
参数:
groupId(必需):测试组的IDtesterId(必需):测试者的ID示例:
"从组ABC123中移除测试者XYZ789"
"删除测试者XYZ789从测试组ABC123"
list_beta_feedback_screenshots列出测试反馈截图提交。
参数:
appId(可选):按应用ID筛选bundleId(可选):按包标识符筛选buildId(可选):按构建ID筛选limit(可选):最大结果数(默认:100)includeBuilds(可选):包含构建信息includeTesters(可选):包含测试者信息示例:
"显示应用123456789的测试反馈截图"
"列出包标识符为com.example.app的反馈截图"
"获取带有测试者信息的构建XYZ的反馈"
get_beta_feedback_screenshot获取特定测试反馈截图的详细信息。
参数:
feedbackId(必需):反馈的IDincludeBuilds(可选):包含构建信息includeTesters(可选):包含测试者信息downloadScreenshot(可选):下载截图图像(默认:true)示例:
"获取反馈截图FEEDBACK123"
"显示反馈FEEDBACK123及其测试者详情"
"从反馈FEEDBACK123下载截图"
create_app_store_version为应用创建新的应用商店版本。
参数:
appId(必需):应用的IDplatform(必需):平台(IOS、MAC_OS、TV_OS、VISION_OS)versionString(必需):版本字符串,格式为X.Y或X.Y.Z(例如,'1.0'或'1.0.0')copyright(可选):此版本的版权文本releaseType(可选):应用应如何发布(MANUAL、AFTER_APPROVAL、SCHEDULED)earliestReleaseDate(可选):ISO 8601日期字符串(当releaseType为SCHEDULED时需要)buildId(可选):与此版本关联的构建ID示例:
"为应用123456789创建iOS版本2.0.0"
"为应用123456789创建macOS版本1.5.0,手动发布"
"为应用123456789创建计划于2024-02-01发布的iOS版本2.1.0"
"为应用123456789创建版本1.2.0,构建BUILD456,版权'2024 My Company'"
list_app_store_versions获取特定应用的所有应用商店版本。
参数:
appId(必需):应用的IDlimit(可选):返回的最大版本数(默认:100,最大:200)filter(可选):筛选选项
platform:按平台筛选(IOS、MAC_OS、TV_OS)versionString:按版本字符串筛选(例如,'1.0.0')appStoreState:按状态筛选(例如,READY_FOR_SALE、PREPARE_FOR_SUBMISSION)示例:
"列出应用123456789的所有版本"
"显示应用123456789的iOS版本"
"查找应用123456789的版本2.0.0"
"列出应用123456789的审核版本"
list_app_store_version_localizations获取特定应用商店版本的所有本地化。
参数:
appStoreVersionId(必需):应用商店版本的IDlimit(可选):返回的最大本地化数(默认:100,最大:200)示例:
"列出应用版本VERSION123的所有本地化"
"显示应用商店版本VERSION123的语言版本"
get_app_store_version_localization获取特定本地化的详细信息。
参数:
localizationId(必需):本地化的ID示例:
"获取本地化LOCALE123的详细信息"
"显示法语本地化LOCALE123"
update_app_store_version_localization更新应用商店版本本地化的特定字段。
参数:
localizationId(必需):本地化的IDfield(必需):要更新的字段(description、keywords、marketingUrl、promotionalText、supportUrl、whatsNew)value(必需):字段的新值示例:
"将本地化LOCALE123的描述更新为'惊人的新应用描述'"
"将本地化LOCALE123的关键词更改为'生产力、任务、组织'"
"将本地化LOCALE123的'新内容'文本更新为'错误修复和性能改进'"
create_bundle_id注册一个新的包ID用于应用开发。
参数:
identifier(必需):包ID字符串(例如,'com.example.app')name(必需):包ID的名称platform(必需):平台(IOS、MAC_OS或UNIVERSAL)seedId(可选):您的团队种子ID示例:
"为iOS创建包ID com.mycompany.newapp,命名为'My New App'"
"注册通用包ID com.example.app,称为'Example App'"
list_bundle_ids查找并列出注册到您团队的包ID。
参数:
limit(可选):最大结果数(默认:100,最大:200)sort(可选):排序顺序(name、-name、platform、-platform、identifier、-identifier)filter(可选):按标识符、名称、平台或seedId筛选include(可选):包含相关资源(profiles、bundleIdCapabilities、app)示例:
"列出所有包ID"
"按名称排序显示iOS包ID"
"查找包含'example'的包ID"
get_bundle_id_info获取特定包ID的详细信息。
参数:
bundleIdId(必需):包ID的IDinclude(可选):包含的相关资源fields(可选):要包含的具体字段示例:
"获取包ID BUNDLE123的信息"
"显示包ID BUNDLE113及其功能"
enable_bundle_capability为包ID启用功能。
参数:
bundleIdId(必需):包ID的IDcapabilityType(必需):功能类型(例如,PUSH_NOTIFICATIONS、ICLOUD、GAME_CENTER)settings(可选):功能特定设置示例:
"为包ID BUNDLE123启用推送通知"
"为包BUNDLE123添加iCloud功能"
"为包ID BUNDLE123启用游戏中心"
disable_bundle_capability为包ID禁用功能。
参数:
capabilityId(必需):要禁用的功能ID示例:
"禁用功能CAP123"
"从包ID移除功能CAP123"
list_devices获取注册到您团队的所有设备列表。
参数:
limit(可选):最大结果数(默认:100,最大:200)sort(可选):排序顺序(name、platform、status、udid、deviceClass、model、addedDate)filter(可选):按名称、平台、状态、udid或deviceClass筛选fields(可选):要包含的具体字段示例:
"列出所有设备"
"显示