mcpField
A
appstore-release-mcp

appstore-release-mcp

ローカル
github.com/rabdulsal開発ツール010 週間前に更新

appstore-release-mcp について

appstore-release-mcp は、App Store Connect を通じて iOS と macOS アプリのリリースを進める MCP サーバーです。API によるリリース管理に加え、fastlane の非同期ジョブや署名済み IPA の直接アップロードに対応します。

主な機能

  1. 01App Store Connect 設定の確認
  2. 02ローカルプロジェクトのバージョン更新
  3. 03fastlane の非同期ジョブによるビルドアップロード
  4. 04altool による署名済み IPA のアップロード
  5. 05ストアメタデータの更新
  6. 06ビルドの審査提出とステータス確認

活用シーン

  1. 01fastlane でビルドしたリリースを TestFlight にアップロード
  2. 02fastlane を使わず既存の署名済み IPA をアップロード
  3. 03審査前にリリースメタデータを更新
  4. 04ビルド処理と審査ステータスを追跡

MCP 対応

MCP サーバーは、App Store Connect のステータス、ビルド、バージョン変更、アップロード、メタデータ、審査提出のツールを公開します。ビルドと IPA のアップロードは非同期ジョブとして実行され、状態とログを確認できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"rabdulsal-appstore-release": {
"command": "npx",
"args": [
"-y",
"appstore-release-mcp"
],
"env": {
"APPLE_KEY_ID": "<APPLE_KEY_ID>",
"APPLE_ISSUER_ID": "<APPLE_ISSUER_ID>",
"ASC_KEY_PATH": "<ASC_KEY_PATH>",
"APPLE_KEY_CONTENT": "<APPLE_KEY_CONTENT>",
"APPLE_TEAM_ID": "<APPLE_TEAM_ID>",
"ASC_BUNDLE_ID": "<ASC_BUNDLE_ID>",
"ASC_PROJECT_DIR": "<ASC_PROJECT_DIR>",
"ASC_PLATFORM": "<ASC_PLATFORM>",
"ASC_FASTLANE_LANE": "<ASC_FASTLANE_LANE>",
"ASC_FASTLANE_PLATFORM": "<ASC_FASTLANE_PLATFORM>",
"ASC_UPLOAD_CMD": "<ASC_UPLOAD_CMD>"
}
}
}
}
起動コマンドnpx -y appstore-release-mcp
設定が必要な環境変数
APPLE_KEY_IDシークレットApp Store Connect API key ID
APPLE_ISSUER_IDApp Store Connect API issuer ID
ASC_KEY_PATHシークレットPath to the .p8 App Store Connect API private key (alternative: APPLE_KEY_CONTENT with base64-encoded key)
APPLE_KEY_CONTENTシークレットBase64-encoded .p8 private key content (alternative to ASC_KEY_PATH)
APPLE_TEAM_IDApple Developer team ID (required for builds/uploads)
ASC_BUNDLE_IDBundle identifier of the app to manage, e.g. com.example.myapp
ASC_PROJECT_DIRXcode project root where fastlane runs (default: current working directory)
ASC_PLATFORMApp Store platform: IOS (default), MAC_OS, TV_OS, or VISION_OS
ASC_FASTLANE_LANEFastlane lane used for archive + upload (default: beta)
ASC_FASTLANE_PLATFORMFastlane platform prefix, e.g. mac or ios
ASC_UPLOAD_CMDFull override of the upload command, e.g. 'bundle exec fastlane ios beta'

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmappstore-release-mcp0.1.1

ツール

8

掲載時のツール一覧 · 3 週間前に更新

このツールにパラメーターはありません。

詳細

appstore-release-mcp

iOS および macOS アプリのApp Store リリースサイクル全体を実行する MCP サーバーです。バージョンの更新 → アーカイブと TestFlight へのアップロード → メタデータ → 審査への提出 → ステータス確認を行います。

他との違い: 既存の App Store Connect MCP サーバーは、メタデータ、TestFlight 管理、分析など、REST API をラップしています。しかし、REST API がサポートしていない唯一の手順、つまりバイナリを Apple のサーバーにアップロードすることができるものはありません。このサーバーは API ブラウザーではなく、リリースパイロットとして、次の 2 つの方法を提供します。

  • 直接 ASC REST API(ES256 JWT、node:crypto を使った依存関係ゼロの署名)で、ステータス、ビルド、メタデータ、審査への提出を処理します
  • asc_upload_build — 既存の fastlane レーンでアーカイブ、署名、アップロードを行い、ログのポーリングが可能な非同期ジョブとして実行します(実際のアーカイブには 5~15 分かかるため、MCP のタイムアウト内には収まりません)
  • asc_upload_ipa — 署名済みの .ipa をすでにお持ちですか?(eas build、CI パイプライン、手動での Xcode アーカイブで作成したものなど)xcrun altool で直接アップロードできます。fastlane もローカルでのアーカイブ手順も不要で、すでにお持ちの ASC API キー以外に設定するものはありません
  • project.pbxproj(xcodegen プロジェクトの場合は project.yml も)のローカルでのバージョン更新

要件

  • Xcode コマンドラインツールを備えた macOS(asc_upload_ipa が使用する xcrun altool)
  • ビルドとアップロードを行うレーンを含む fastlane(例:beta)。必要なのは asc_upload_build の場合のみです。asc_upload_ipa だけを使用する場合は不要です
  • App Store Connect API キー(.p8)

セットアップ

  1. ASC API キーを生成します(初回のみ):App Store Connect → Users and Access → Integrations → App Store Connect API → Team Keys → Generate(役割:App Manager)。.p8 をダウンロードします。Apple ではダウンロードできるのは一度だけです。~/.appstoreconnect/private_keys/ に保管してください。

  2. Claude Code に登録します:

claude mcp add appstore \
  -e APPLE_KEY_ID=XXXXXXXXXX \
  -e APPLE_ISSUER_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -e ASC_KEY_PATH=$HOME/.appstoreconnect/private_keys/AuthKey_XXXXXXXXXX.p8 \
  -e APPLE_TEAM_ID=XXXXXXXXXX \
  -e ASC_BUNDLE_ID=com.example.myapp \
  -e ASC_PROJECT_DIR=/path/to/your/xcode/project \
  -- npx appstore-release-mcp

Fastfile で platform :mac を使用する macOS アプリの場合は、-e ASC_PLATFORM=MAC_OS -e ASC_FASTLANE_PLATFORM=mac を追加してください。

  1. 確認します: エージェントに asc_doctor の実行を依頼してください。すべてのチェックが ✓ になるはずです。

ツール

ツール機能
asc_doctor設定、認証情報、fastlane/xcodebuild/altool、アプリレコードを確認します。最初に実行してください
asc_app_statusバージョン、審査ステータス、最近のビルドを 1 回の呼び出しで確認します
asc_list_buildsビルド処理のステータスを確認します(アップロード後、VALID になるまで待ちます)
asc_bump_versionローカルのプロジェクトファイルでビルド番号を更新し、マーケティングバージョンを設定します
asc_upload_buildfastlane のアップロードレーンを非同期ジョブとして実行します。ジョブ ID をすぐに返します
asc_upload_ipa作成済みの .ipa を xcrun altool でアップロードします。非同期ジョブとして実行され、fastlane は不要です
asc_job_statusasc_upload_build または asc_upload_ipa で開始したジョブの状態とログ末尾を確認します
asc_update_metadataREST 経由で説明、キーワード、新機能、プロモーションテキストを更新します
asc_submit_reviewビルドを関連付け、審査提出を作成して送信します

リリース手順

fastlane を使ってローカルでビルドする場合:

asc_doctor                                   # toolchain healthy?
asc_bump_version {marketing_version: "1.1.0"}
asc_upload_build                             # → job id
asc_job_status {job_id}                      # poll until succeeded
asc_list_builds                              # wait for processingState VALID
asc_update_metadata {whats_new: "...", create_version: "1.1.0"}
asc_submit_review {build_id}                 # point of no return
asc_app_status                               # WAITING_FOR_REVIEW

署名済みの .ipa(EAS Build、CI、手動アーカイブで作成したものなど)をすでにお持ちの場合、fastlane は不要です:

asc_doctor
asc_upload_ipa {ipa_path: "./build/app.ipa"} # → job id
asc_job_status {job_id}                      # poll until succeeded
asc_list_builds                              # wait for processingState VALID
asc_update_metadata {whats_new: "...", create_version: "1.1.0"}
asc_submit_review {build_id}
asc_app_status

環境変数

認証情報の名前は意図的に fastlane の app_store_connect_api_key と一致させているため、1 組の認証情報を両方で使用できます。

変数必須備考
APPLE_KEY_IDはいASC API キー ID
APPLE_ISSUER_IDはいASC 発行者 ID
APPLE_KEY_CONTENT / ASC_KEY_PATHいずれか一方base64 でエンコードされた .p8/.p8 ファイルへのパス
APPLE_TEAM_IDasc_upload_build の場合Apple Developer チーム ID(asc_upload_ipa では不要)
ASC_BUNDLE_IDはいアプリのバンドル識別子
ASC_PROJECT_DIR推奨fastlane を実行する Xcode プロジェクトのルート(デフォルト:cwd)
ASC_PLATFORMいいえIOS(デフォルト)、MAC_OS、TV_OS、VISION_OS
ASC_FASTLANE_LANEいいえアップロードレーン名(デフォルト:beta)
ASC_FASTLANE_PLATFORMいいえfastlane のプラットフォームプレフィックス。例:mac または ios
ASC_UPLOAD_CMDいいえ全体を上書きするコマンド。例:bundle exec fastlane ios beta

注意事項

  • ビルドジョブはサーバープロセスの子プロセスです。ビルドの途中で MCP クライアントが切断されると、ジョブは終了します。どちらの場合も、ログは ~/.appstore-mcp/jobs/ に保持されます。
  • asc_submit_review はリリースの後戻りできない処理です。ツールの説明では、事前に人間に確認するようエージェントに指示しています。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。