MCP YouTube Transcript
An MCP server retrieving transcripts of YouTube videos
作者による説明(英語の原文)
Google Play Console, App Store Connect and AdMob via official APIs: releases, reviews, vitals, ads
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
GOOGLE_PLAY_SERVICE_ACCOUNT, ASC_KEY_ID, ASC_ISSUER_ID, ASC_PRIVATE_KEY_PATH, ASC_VENDOR_NUMBER, ADMOB_PUBLISHER_ID必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"app-console": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GOOGLE_PLAY_SERVICE_ACCOUNT",
"-e",
"ASC_KEY_ID",
"-e",
"ASC_ISSUER_ID",
"-e",
"ASC_PRIVATE_KEY_PATH",
"-e",
"ASC_VENDOR_NUMBER",
"-e",
"ADMOB_PUBLISHER_ID",
"ghcr.io/alekla0126/app-console-mcp:0.3.0"
],
"env": {
"GOOGLE_PLAY_SERVICE_ACCOUNT": "your-value",
"ASC_KEY_ID": "your-value",
"ASC_ISSUER_ID": "your-value",
"ASC_PRIVATE_KEY_PATH": "your-value",
"ASC_VENDOR_NUMBER": "your-value",
"ADMOB_PUBLISHER_ID": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add app-console --env GOOGLE_PLAY_SERVICE_ACCOUNT=your-value --env ASC_KEY_ID=your-value --env ASC_ISSUER_ID=your-value --env ASC_PRIVATE_KEY_PATH=your-value --env ASC_VENDOR_NUMBER=your-value --env ADMOB_PUBLISHER_ID=your-value -- docker run -i --rm -e GOOGLE_PLAY_SERVICE_ACCOUNT -e ASC_KEY_ID -e ASC_ISSUER_ID -e ASC_PRIVATE_KEY_PATH -e ASC_VENDOR_NUMBER -e ADMOB_PUBLISHER_ID ghcr.io/alekla0126/app-console-mcp:0.3.0動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"app-console": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GOOGLE_PLAY_SERVICE_ACCOUNT",
"-e",
"ASC_KEY_ID",
"-e",
"ASC_ISSUER_ID",
"-e",
"ASC_PRIVATE_KEY_PATH",
"-e",
"ASC_VENDOR_NUMBER",
"-e",
"ADMOB_PUBLISHER_ID",
"ghcr.io/alekla0126/app-console-mcp:0.3.0"
],
"env": {
"GOOGLE_PLAY_SERVICE_ACCOUNT": "your-value",
"ASC_KEY_ID": "your-value",
"ASC_ISSUER_ID": "your-value",
"ASC_PRIVATE_KEY_PATH": "your-value",
"ASC_VENDOR_NUMBER": "your-value",
"ADMOB_PUBLISHER_ID": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"app-console": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GOOGLE_PLAY_SERVICE_ACCOUNT",
"-e",
"ASC_KEY_ID",
"-e",
"ASC_ISSUER_ID",
"-e",
"ASC_PRIVATE_KEY_PATH",
"-e",
"ASC_VENDOR_NUMBER",
"-e",
"ADMOB_PUBLISHER_ID",
"ghcr.io/alekla0126/app-console-mcp:0.3.0"
],
"env": {
"GOOGLE_PLAY_SERVICE_ACCOUNT": "your-value",
"ASC_KEY_ID": "your-value",
"ASC_ISSUER_ID": "your-value",
"ASC_PRIVATE_KEY_PATH": "your-value",
"ASC_VENDOR_NUMBER": "your-value",
"ADMOB_PUBLISHER_ID": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
GOOGLE_PLAY_SERVICE_ACCOUNT envASC_KEY_ID envASC_ISSUER_ID envASC_PRIVATE_KEY_PATH envASC_VENDOR_NUMBER envADMOB_PUBLISHER_ID envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月8日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント Alekla0126 で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.3.0)がレジストリに届いたのは10 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにDockerも必要です。
同じカテゴリには:MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
An MCP server retrieving transcripts of YouTube videos
GA4 MCP server for AI agents: schema discovery, server-side aggregation, analysis-ready defaults.
AI video summarizer: summarize and transcribe YouTube, Bilibili, TikTok and podcast videos.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Google Play Console, App Store Connect and AdMob from your terminal or from Claude — no browser.
Español
Driving store consoles through a browser agent burns tokens on screenshots and page snapshots and breaks whenever the UI changes. This project talks to the official APIs instead and answers in a few lines of plain text. Every tool exists twice, with identical output:
appconsole ...) for you, your scripts and CI.It ships as three Claude Code plugins (Google Play, App Store Connect, AdMob), each with its MCP server and a skill that teaches Claude the safe workflows. It also comes built into Alchemist Coder, the open-source desktop app for Claude Code and Codex: every agent there gets these tools for the services you have set up.
$ appconsole play vitals com.example.app
com.example.app (data up to 2026-10-19): crash: 0.31% 28-day user-perceived (ok, threshold 1.09%) newest versions (last 28 d): v42 0.12% (35% of users) · v41 0.44% (60% of users) anr: 0.52% 28-day user-perceived (ABOVE THRESHOLD, threshold 0.47%) newest versions (last 28 d): v42 0.21% (35% of users) · v41 0.70% (60% of users)
$ appconsole admob report --days 7 --by format --currency USD AdMob 2026-10-20 to 2026-10-26 by format: 128.40 USD (+9% vs previous 7 d: 117.80), 61210 impressions interstitial: 71.10 USD, 9340 impr, eCPM 7.61, match 88%, show 31% banner: 39.75 USD, 47880 impr, eCPM 0.83, match 95%, show 52%
Google Play (play) | App Store Connect (appstore) | AdMob (admob) |
|---|---|---|
apps list apps the key can see | apps list apps | accounts publisher accounts |
listing / update-listing title, short, full description, new languages | listing / update-listing name, subtitle, keywords, description, promo text, what's new | apps apps and ad unit ids |
tracks releases per track | versions versions and review state | report earnings, eCPM, match/show rate, CTR by app, ad unit, country, format, app/SDK/OS version, why ads are limited, ad source or mediation group, vs. previous period |
upload .aab/.apk to any track (staged or draft) | create-version new editable version | campaign-report promotion campaigns: installs, cost, CPI |
promote between tracks | builds processing state, export compliance | ad-sources networks and their adapters' settings |
rollout change %, complete, halt, resume | submit attach build + submit to App Review | mediation-groups / ad-unit-mappings ✱ |
reviews / reply | release release an approved manual-release version | create-app / create-ad-unit ✱ |
vitals crash and ANR rates (Google's 28-day numbers) | reviews / reply | map-ad-unit / create-mediation-group / update-mediation-group ✱ |
products subscriptions, base plans, prices | sales downloads, IAP units, proceeds per app | ab-experiment start or stop a mediation A/B test ✱ |
search-rank public search position | search-rank public search position | |
images / upload-images screenshots and graphics | screenshots / upload-screenshots per device and locale | |
users / grant / revoke users, service accounts and app permissions | products subscriptions and in-app purchases | |
data-safety send the Data safety form (CSV) |
✱ AdMob's limited access: Google has to enable your publisher id for these methods (ask your AdMob account manager or AdMob support) and the token needs the admob.monetization scope (appconsole admob login --monetization). Until then they explain what to ask for.
Safe by default. Every tool that changes something is a dry run unless you pass confirm=true (--confirm in the CLI). Google Play dry runs build the change in a draft edit and let Google validate it before discarding it, so you see real errors before anything is published. MCP tools carry readOnlyHint/destructiveHint annotations so clients can auto-approve reads and ask before writes.
You need uv (it fetches Python and the dependencies).
/plugin marketplace add Alekla0126/app-console-mcp
/plugin install google-play@app-console /plugin install app-store-connect@app-console /plugin install admob@app-console
Install only the ones you use. Each plugin asks for its credentials (paths and ids; you can leave them empty and use appconsole config instead), adds its MCP server and skill, and puts appconsole on the PATH of Claude's Bash tool.
{
"mcpServers": { "google-play": { "command": "uvx", "args": ["--from", "git+https://github.com/Alekla0126/app-console-mcp", "appconsole", "mcp", "play"], "env": { "GOOGLE_PLAY_SERVICE_ACCOUNT": "/path/to/service-account.json" } }, "app-store-connect": { "command": "uvx", "args": ["--from", "git+https://github.com/Alekla0126/app-console-mcp", "appconsole", "mcp", "appstore"] }, "admob": { "command": "uvx", "args": ["--from", "git+https://github.com/Alekla0126/app-console-mcp", "appconsole", "mcp", "admob"] } } }
appconsole mcp all serves the three services as a single server, for clients that take only one.
Or with the Claude Code CLI: claude mcp add google-play -- uvx --from git+https://github.com/Alekla0126/app-console-mcp appconsole mcp play
uv tool install git+https://github.com/Alekla0126/app-console-mcp
appconsole --help appconsole play reviews com.example.app --unanswered-only
Settings are read from environment variables first, then from ~/.config/appconsole/config.json (appconsole config set KEY VALUE, stored with 600 permissions). Only file paths and ids are stored; keys stay where you keep them. Run appconsole doctor to check all three services.
appconsole config set GOOGLE_PLAY_SERVICE_ACCOUNT /path/to/key.jsonusers, grant and revoke: appconsole config set GOOGLE_PLAY_DEVELOPER_ID , and give the key "Manage users and permissions".AuthKey_ .p8 (Apple lets you download it only once) and note the Key ID and the Issuer ID.appconsole config set ASC_KEY_ID ABC123XYZ
appconsole config set ASC_ISSUER_ID 00000000-0000-0000-0000-000000000000 appconsole config set ASC_PRIVATE_KEY_PATH ~/.appstoreconnect/private_keys/AuthKey_ABC123XYZ.p8 appconsole config set ASC_VENDOR_NUMBER 12345678 # optional, for appstore sales
Already use fastlane? Point ASC_API_KEY_JSON to your api_key.json instead. If the .p8 file sits in ~/.appstoreconnect/private_keys or ~/private_keys, the path is optional.
AdMob does not accept service accounts, only a Google user, so you authorize once:
appconsole admob login --client-secrets client_secret.json (opens the browser once; the token is saved in ~/.config/appconsole/admob-token.json). Add --monetization to also create apps, ad units and mediation groups, once Google enabled your publisher id for them.Alternative: gcloud application-default credentials with the AdMob scopes — gcloud auth application-default login --scopes=https://www.googleapis.com/auth/admob.readonly,https://www.googleapis.com/auth/admob.report,https://www.googleapis.com/auth/cloud-platform. With several publisher accounts set ADMOB_PUBLISHER_ID=pub-....
| Setting | Used by |
|---|---|
GOOGLE_PLAY_SERVICE_ACCOUNT | Google Play (falls back to GOOGLE_APPLICATION_CREDENTIALS) |
GOOGLE_PLAY_DEVELOPER_ID | Google Play users and permissions |
ASC_KEY_ID, ASC_ISSUER_ID, ASC_PRIVATE_KEY_PATH or ASC_PRIVATE_KEY | App Store Connect |
ASC_API_KEY_JSON | App Store Connect, fastlane-format key file instead of the three above |
ASC_VENDOR_NUMBER | appstore sales |
ADMOB_PUBLISHER_ID, ADMOB_TOKEN_FILE | AdMob, optional |
APPCONSOLE_HOME | config directory, default ~/.config/appconsole |
APPCONSOLE_DEBUG=1 | show full tracebacks in the CLI |
These still need the website, and the tools say so when you hit them:
uv venv && uv pip install -e '.[dev]'
.venv/bin/pytest && .venv/bin/ruff check src tests claude plugin validate .
bin/appconsole and the plugins run the package with uvx --from , which caches the build; after editing the sources use the .venv or add --refresh-package app-console-mcp. For a release, bump the version in pyproject.toml, src/app_console_mcp/__init__.py and the three entries of .claude-plugin/marketplace.json.
Tagging v* runs .github/workflows/publish.yml, which publishes to PyPI and then to the official MCP Registry (server.json). It is off until PyPI trusts the workflow: on pypi.org add a pending trusted publisher (project app-console-mcp, owner Alekla0126, repository app-console-mcp, workflow publish.yml, environment pypi), then gh variable set PUBLISH_PYPI --body true and re-run the workflow.
Until then, .github/workflows/docker.yml (on the same tags, or run by hand) pushes the all-in-one image to ghcr.io/alekla0126/app-console-mcp and lists that image in the MCP Registry instead. The registry reads the image, so the package must be public (GitHub → Packages → app-console-mcp → Package settings → Change visibility). Once PyPI is on, add the image to server.json's packages next to PyPI's, because the registry takes each version once.
A tool is one function decorated with @tool() (or @tool(write=True) with a confirm
冒頭だけを表示しています。続きはリポジトリで読めます