メインコンテンツへ移動
AIチュートリアル

Mağaza MCPでApp Store ConnectとGoogle Playを管理

Mağaza MCPのインストール方法、AppleとGoogleの認証情報を安全に接続する方法、自然言語で両ストアを検索する方法、サブスクリプションの比較、購入状況の診断、高度なAPI操作へのアクセス方法、読み取り専用の安全対策の有効化について説明します。

Mağaza MCPでApp Store ConnectとGoogle Playを管理

Mağaza MCPとは?

Mağaza MCPは、1回のインストールでApp Store ConnectとGoogle Playの両方にAIアシスタントからアクセスできる、オープンソースのModel Context Protocolサーバーです。個別の統合を切り替えることなく、iOSおよびAndroidのストアデータを調査、比較、管理する必要がある開発者やアプリ運営者向けに設計されています。

このサーバーはお使いのマシン上でローカルに実行され、AppleおよびGoogleと直接通信します。仲介サービスはありません。Appleのツールにはappstore__、Google Playのツールにはplay__、両ストア共通または一般的なAPIツールにはmagaza__のプレフィックスが付きます。

特に優れているのは、1回の操作で両ストアにまたがる質問に回答できる点です。たとえば、アシスタントにApp StoreとGoogle Playで同じサブスクリプションのトルコ価格を比較させたり、対応するiOSアプリとAndroidアプリを組み合わせたり、両ストアにまたがるアプリ内購入の設定問題を調査させたりできます。

主な機能

  • 2つのストアに対応する1つのMCPサーバー:App Store Connect、Google Play、または両方に接続できます。
  • ストア横断ワークフロー:サブスクリプションの比較、アプリの統合概要の作成、両プラットフォームにおけるアプリ内購入設定の診断が可能です。
  • 27の目的別ツール:両ストアを有効にしたインストールでは、一般的なストア操作とAPIへの一般アクセスに対応する27個のツールが提供されます。
  • 完全なAPIカバレッジ:App Store Connect API v4.5、Android Publisher API v3、Play Developer Reporting API v1beta1から1,440の操作を検索して実行できます。
  • 低いコンテキスト負荷:1,440個すべての操作を個別のMCPツールとして公開する代わりに、検索およびディスパッチツールを通じてAPIカタログ全体にアクセスします。
  • ローカルでの認証情報保存:利用可能な場合はmacOS Keychainに認証情報を保存し、Keychainを使用できないシステムではアクセス権を制限したファイルにフォールバックします。
  • 書き込み時の確認:データを変更する操作には、明示的なonayla=trueの確認が必要です。
  • 読み取り専用モード:モデルのツール一覧から書き込みツールを完全に削除できます。
  • テレメトリなし:分析データ、エラーレポート、利用データを送信しません。

前提条件

パッケージを実行する前に、Node.js 18以降をインストールしてください。また、接続する各ストアに適した認証情報が必要です。

App Store Connectの要件

App Store Connect APIキーを作成し、セットアップ中にKey ID、Issuer ID、.p8ファイルを使用できるようにしておきます。ほとんどの操作にはApp Managerロールで十分です。ユーザーおよびアクセス管理のエンドポイントや、一部の分析レポートには、より高い権限が必要になる場合があります。

キーはApp Store Connect APIキーでなければなりません。StoreKitキーやプッシュ通知キーを代わりに使用することはできません。

Google Playの要件

  1. Play Console → Users and permissionsからサービスアカウントを招待し、対象のアプリケーションへのアクセス権を付与します。
  2. 関連付けられたGoogle CloudプロジェクトでAndroid Publisher APIとPlay Developer Reporting APIの両方を有効にします。

Reporting APIはクラッシュ指標だけでなく、アプリケーションの検出にも必要です。Android Publisher APIには、アカウントで利用可能なすべてのアプリケーションを一覧表示するエンドポイントがありません。

契約、税務情報、銀行情報は、これらのAPIを通じて読み取ることができません。Appleは、App Store Connect APIキー経由でこれらの情報を公開していません。

Mağaza MCPのインストール

次の1コマンドで対話型インストーラーを起動します。

npx magaza-mcp kur

ウィザードでは、次の手順を案内します。

  1. App Store Connect、Google Play、または両方のストアを選択します。
  2. App Store ConnectのKey IDとIssuer IDを入力し、.p8ファイルへのパスを指定します。
  3. Google PlayサービスアカウントのJSONファイルへのパスを指定します。
  4. MCP設定をインストールする、検出されたAIクライアントを選択します。
  5. サーバーを読み取り専用モードで動作させるかどうかを選択します。

インストーラーは保存前に、実際のAPIリクエストでAppleとGoogleの認証情報を検証します。認証情報がAIクライアントの設定ファイルに書き込まれることはありません。設定には、MAGAZALARを通じて有効化するストアなどの情報だけが含まれます。

macOSでは認証情報がKeychainに保存されます。Keychainを利用できない場合、プロジェクトは0600権限のファイルにフォールバックします。

対応MCPクライアント

インストーラーはClaude Code、Claude Desktop、Antigravity、Cursor、Windsurf、Codexに対応しています。magaza-mcpエントリのみを更新し、無関係な設定を保持したうえで、書き込み前に.magaza-mcp-yedekバックアップを作成し、アトミックに書き込みます。

セットアップ後、新しいMCPサーバーを読み込めるよう、開いているクライアントアプリケーションを再起動してください。

インストールの確認

ステータスコマンドとツール一覧コマンドを使用して結果を確認します。

npx magaza-mcp durum
npx magaza-mcp durum --json
npx magaza-mcp araclar
npx magaza-mcp surum
npx magaza-mcp yardim

durumは接続されているストアを報告し、araclarはインストールされたツールを一覧表示します。✎の付いたツールはストアデータを変更できます。

基本的な使い方

Mağaza MCPは、MCP互換アシスタントへの自然言語リクエストを通じて使用することを想定しています。クライアントを再起動したら、まず簡単なインベントリリクエストから始めます。

両方のストアにある自分のアプリケーションを一覧表示し、それぞれが現在どこで公開されているかを示してください。

両方のストアを接続すると、magaza__genel_bakis はアプリケーション一覧を統合し、対応する iOS と Android の製品を組み合わせ、片方のストアにしか存在しないアプリケーションを分離します。

サブスクリプション価格を比較する

特定の国のサブスクリプションを比較するようアシスタントに依頼できます。

トルコの App Store と Google Play で、Note Keeper の月額サブスクリプションはいくらですか?違いはありますか?

magaza__abonelik_karsilastir ツールは、製品識別子、請求期間、国別価格を比較します。また、国コードを各ストアが必要とする形式に変換します。

購入に関する問題を診断する

支払い済みなのにプレミアムアクセスを受け取っていない顧客には、次のように依頼します。

顧客から、支払ったのにプレミアムアクセスが有効になっていないと報告がありました。両方のストアで購入設定を確認し、考えられる原因をまとめてください。

magaza__iap_teshis ツールは、製品が公開されているか、該当する国に価格が設定されているか、新規購読者が利用できる Google Play のベースプランが存在するかを確認します。Play の購入トークンを指定すると、診断の一環としてそのトークンを検証できます。

App Store Connect を確認する

App Store 専用ツールでは、アプリケーション、リリース、TestFlight ビルド、レビュー、サブスクリプショングループ、サブスクリプション価格、アプリ内課金、TestFlight グループ、売上レポートを一覧表示できます。リクエストの例:

  • 現在、審査で止まっている App Store のバージョンはどれですか?
  • 昨日アップロードした TestFlight ビルドの処理は完了しましたか?
  • 過去 1 週間の星 1 つと星 2 つのレビューをまとめてください。
  • このアプリケーションの日次売上レポートをダウンロードしてください。

ストアのメタデータやレビューへの返信も変更できますが、これらの操作には明示的な確認が必要です。

Google Play を確認する

Google Play ツールは、アプリケーション、リリーストラック、レビュー、サブスクリプション、ベースプランの価格、買い切り型商品、購入検証、取り消し済み購入、Android vitals のクラッシュ率に対応しています。リクエストの例:

  • 本番トラックにあるバージョンはどれで、ユーザーの何パーセントに配信されていますか?
  • 過去 14 日間でクラッシュ率は上昇しましたか?
  • この購入トークンは有効ですか?サブスクリプションはまだ有効ですか?
  • 利用可能な期間の返金済みまたは取り消し済みの購入を表示してください。

Google は、該当する API を通じておおむね直近 1 週間分のレビューのみを公開しています。取り消し済み購入のデータは過去 30 日間に限られます。

書き込み操作を安全に実行する

appstore__yorum_yanitla、appstore__metin_guncelle、play__yorum_yanitla などのツールはストアのデータを変更できます。これらは最初のリクエストですぐには実行されません。代わりに、サーバーが実行予定のアクションと想定されるリクエスト本文を返します。

提案内容を確認したら、次の値を指定して承認し、アシスタントに操作を再実行させます。

onayla=true

この確認ゲートは、MCP クライアントのインターフェースだけに依存せず、サーバー側で強制されます。

読み取り専用モードを有効にする

監査、レポート作成、または慎重な実験を行う場合は、サーバーを読み取り専用モードで起動します。

npx magaza-mcp --salt-okunur

次の設定も使用できます。

SALT_OKUNUR=1

両方のストアを接続した場合、読み取り専用モードでは公開されるツールの数が 27 個から 24 個に減ります。書き込み専用ツールは表示されなくなるため、モデルから見たり呼び出したりできません。一般的な magaza__cagir ディスパッチャーは読み取り操作にも必要なため引き続き利用できますが、読み取り専用モードでは書き込み操作を拒否します。

完全な API カタログを使用する

専用ツールは一般的なワークフローをカバーしますが、Mağaza MCP では 1,440 個の API 操作にもアクセスできます。すべての操作をモデルのコンテキストに配置する代わりに、3 つの汎用ツールを提供します。

  • magaza__endpoint_ara は接続されたストアの API カタログを検索し、一致する操作名、HTTP メソッド、パス、パラメーターを返します。
  • magaza__sema は操作のリクエスト本文スキーマを表示します。POST または PATCH リクエストの前に特に役立ちます。
  • magaza__cagir は選択した操作を呼び出し、パスパラメーターを自動的に設定します。

高度なプロンプトの例:

接続されているストアの API で、このリソースを管理するエンドポイントを検索してください。書き込みを試みる前にリクエストスキーマを表示してください。

カタログは、Apple の公式 App Store Connect OpenAPI 仕様と、Google の Android Publisher および Play Developer Reporting のディスカバリードキュメントから生成されます。非推奨の Apple 操作が機能への唯一の経路である場合は引き続き検索できますが、概要の先頭に [ESKİMİŞ] と表示され、検索結果では下位に順位付けされます。

ツールの分離を理解する

サーバーは、いくつかの設計ルールによってストアの混在を防ぎます。

  • すべてのストア固有ツールには明示的なプレフィックスがあります。
  • appstore__ プレフィックスのツールが Google Play を呼び出すことはなく、play__ ツールが Apple を呼び出すこともありません。
  • 選択されていないストアのツールはメモリに読み込まれず、モデルにも表示されません。
  • クロスストアツールは、両方のストアが有効な場合にのみ存在します。
  • ディスパッチツールが受け付ける magaza 引数は、インストール時に設定されたストアに限定されます。

両方のストアを設定したインストールでは 27 個のツールが読み込まれます。App Store のみのインストールでは 14 個、Play のみのインストールでは 13 個が読み込まれます。これにより、MCP コンテキストが設定済みの環境に対応した状態になります。

高度なセキュリティのヒント

  • 認証情報をチャットに貼り付けないでください: 自分で npx magaza-mcp kur を実行し、ローカルウィザードを通じて認証情報のパスを入力してください。
  • 分析には読み取り専用モードを使用してください: リリース、レビュー、価格、購入、またはヘルス情報だけが必要な場合に有効にしてください。
  • 提案された書き込みをすべて確認してください: onayla=true を承認する前に、アプリケーション、リソース、ロケール、リクエスト本文を確認してください。
  • 権限は最小限にしてください: 必須のエンドポイントが明示的により強い権限を必要とする場合を除き、AppleではApp Managerを使用し、Googleサービスアカウントは関連するアプリケーションに限定してください。
  • システム時刻を正確に保ってください: Apple JWTの有効期間は20分のため、時計が大きくずれていると認証に失敗する可能性があります。

サーバーはパスパラメーターを検証してエンコードし、. や .. などのトラバーサル試行を拒否し、絶対URLのホストを検証します。ネットワーク通信は、AppleのAPI、Android Publisher API、Play Developer Reporting API、GoogleのOAuthトークンエンドポイントに限定されています。

トラブルシューティング

Appleが401を返す

Key ID、Issuer ID、.p8 ファイルが同じApp Store Connect APIキーに属していることを確認してください。時刻が不正確なJWTは拒否される可能性があるため、マシンの時計を確認してください。また、そのファイルがStoreKitキーやプッシュ通知キーではないことも確認してください。

Appleが403を返す

APIキーに、その操作に必要なロールが付与されていない可能性があります。App Managerでほとんどのワークフローに対応できますが、ユーザー管理や一部のレポートには追加の権限が必要です。ロールにかかわらず、契約、税務、銀行情報をAPI経由で取得することはできません。

Google Playが403を返す

サービスアカウントがPlay Consoleに招待され、対象アプリケーションへのアクセス権を持っていることを確認してください。権限の変更が反映されるまで数分かかる場合があります。また、CloudプロジェクトでAndroid Publisher APIとPlay Developer Reporting APIが有効になっていることも確認してください。

失敗が従来の inappproducts エンドポイントに関するものであれば、アプリケーションがGoogleの新しい商品モデルを使用している可能性があります。play__urunler ツールは、まず oneTimeProducts を試し、必要に応じて従来のモデルにフォールバックすることでこれに対応します。

トラック情報の表示に時間がかかる

Google Playは、編集セッションを通じてリリーストラック情報を提供します。読み取りツールはセッションを作成してデータを読み取り、コミットせずに終了するため、ストアに変更は加えられません。この処理には追加のHTTPリクエストが必要なため、時間がかかる場合があります。

開発環境のセットアップ

プロジェクト自体を開発するには、リポジトリをクローンして依存関係をインストールします。

git clone https://github.com/tunaarikaya/magaza-mcp.git
cd magaza-mcp
npm install
npm run build
npm run kontrol
npm run dev

npm run build はTypeScriptソースをコンパイルし、npm run kontrol はファイルを出力せずに型チェックを実行し、npm run dev はウォッチモードでのコンパイルを開始します。

spec/ 配下にある3つの仕様ファイルからAPIカタログを再生成するには、次を実行します。

node scripts/uret-katalog.mjs

生成された操作カタログは src/katalog/ 配下に書き込まれます。操作一覧を手動で管理することは想定されていません。

まとめ

Mağaza MCPは、MCP互換アシスタントからApp Store ConnectとGoogle Playを一元的に運用する実用的な方法を提供します。ストア間ツールにより、価格比較、アプリケーション一覧、購入に関する診断が簡素化され、検索可能な完全なAPIカタログによって、あまり一般的でない操作にも対応できます。ローカルでの認証情報管理、確認ゲート、読み取り専用モード、テレメトリーがないことにより、ストアへのアクセスを制御下に置く必要があるワークフローに適しています。