AppScreen
Render App Store and Google Play screenshots from app captures: device frames, sizes, languages.
ماذا يمكنك أن تفعل مع AppScreen؟
render_screenshots— Accepts screens (layout JSON) and image files. Returns ajobId(keyed/async) or a download link (anon/inline). Free anon use capped at 5 lifetime.get_render_status— Polls ajobId. Returns status + signed download URL when done.
التثبيت
أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: .cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).
@appscreen/mcpclaude mcp add appscreen -e 'APPSCREEN_API_KEY=<your appscreen_api_key>' -e 'APPSCREEN_BASE_URL=<APPSCREEN_BASE_URL>' -- npx -y @appscreen/mcp@0.30.0
{
"mcpServers": {
"appscreen": {
"command": "npx",
"args": [
"-y",
"@appscreen/mcp@0.30.0"
],
"env": {
"APPSCREEN_API_KEY": "<your appscreen_api_key>",
"APPSCREEN_BASE_URL": "<APPSCREEN_BASE_URL>"
}
}
}
}
متغيرات البيئة
APPSCREEN_API_KEYسري Optional MCP key (mcm_live_…) from https://appscreen.co/account/keys. Omit for 5 free anonymous renders.APPSCREEN_BASE_URLOverride the API base URL. Defaults to https://api.appscreen.co.
التوثيق
مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.
المحتويات
@appscreen/mcp
MCP server for AppScreen — generate App Store / Play Store screenshots from any MCP-capable agent (Claude Desktop, Claude Code, Cursor, Codex, etc.).
Install
# Latest, no install — recommended for end users
npx -y @appscreen/mcp
Configure (Claude Desktop)
~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"appscreen": {
"command": "npx",
"args": ["-y", "@appscreen/mcp"],
"env": {
"APPSCREEN_API_KEY": "mcm_live_…"
}
}
}
}
Omit APPSCREEN_API_KEY for anonymous use (5 lifetime renders, then sign-up required).
Configure (other clients)
- Claude Code:
claude mcp add appscreen -- npx -y @appscreen/mcp - Cursor:
.cursor/mcp.json— same JSON shape as above. - Codex:
codex mcp add appscreen -- npx -y @appscreen/mcp, or add to~/.codex/config.toml:[mcp_servers.appscreen] command = "npx" args = ["-y", "@appscreen/mcp"] env = { APPSCREEN_API_KEY = "mcm_live_…" }
Tools
render_screenshots— Accepts screens (layout JSON) and image files. Returns ajobId(keyed/async) or a download link (anon/inline). Free anon use capped at 5 lifetime.get_render_status— Polls ajobId. Returns status + signed download URL when done.
Pass images by path, not base64
The server runs locally, so give it a file path — it reads the bytes off disk. Do not base64-encode real screenshots into the call: an LLM emitting an 18k–90k-char base64 string drops a character partway down and the PNG renders black below it.
"files": [
{ "name": "1.png", "path": "~/app/screenshots/home.png" }, // ✅ preferred
{ "name": "2.png", "path": "/abs/path/settings.png" }
]
// base64 is accepted only for tiny synthetic test images:
// { "name": "x.png", "base64": "iVBORw0KG..." }
Bundle download URLs are signed and expire after ~1h. Re-poll to refresh.
Quota
Signed-in usage is metered in credits: 1 credit = 1 exported image (screens × sizes × languages). A failed export is refunded; auto-translate is free. An MCP key spends the credits of the workspace it was created in.
| Plan | Credits / month | Notes |
|---|---|---|
| Free | 50 | Any one size per export, English, 10 screens per export. 3 renders / hour. |
| Starter — $4 / mo | 400 | All 5 sizes, any 3 languages per export, auto-translate. 3 renders / hour. |
| Pro — $8 / mo | 2,500 | All 15 languages, 200 screens per export. Full-rate MCP. |
| Team — $29 / mo | 8,000 pooled | 3 seats included. Full-rate MCP. |
One-time credit packs work on every plan, including Free: 100 for $5, 400 for $15, 1,500 for $39, valid 12 months. Anonymous use (no key) is not metered in credits — it is capped at 5 renders, lifetime.
Every tool response includes _meta.quota = {used, cap, tier, resetAt}, plus balance (credits left) and, on a render submit, cost when the API reports them. For a signed-in caller used and cap count credits (cap − used = balance) and tier is the plan id; for an anonymous caller they count the 5 lifetime renders and tier is anon-mcp. When less than half is left the text content carries a short notice ("N credits left …"); below 20%, or at zero, the response also includes _meta.upgradeUrl.
An export the workspace can't cover fails with HTTP 402 insufficient_credits — the error text gives the cost and the balance. Full details: https://appscreen.co/pricing.
Environment
| Var | Purpose |
|---|---|
APPSCREEN_API_KEY | Optional. MCP key (mcm_live_…) from https://appscreen.co/account/keys. Works on every plan, Free included. Not the same as the programmatic ask_live_… API key. |
APPSCREEN_BASE_URL | Override API URL. Defaults to https://api.appscreen.co. |
APPSCREEN_MCP_CLIENT | Override client identifier (auto-detected from MCP initialize). |
License
MIT
الأسئلة الشائعة
ما هو AppScreen؟
Render App Store and Google Play screenshots from app captures: device frames, sizes, languages.
كيف أثبّت AppScreen؟
يعمل على جهازك. في Claude Code: claude mcp add appscreen -e 'APPSCREEN_API_KEY=<your appscreen_api_key>' -e 'APPSCREEN_BASE_URL=<APPSCREEN_BASE_URL>' -- npx -y @appscreen/mcp@0.30.0. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.
هل يحتاج AppScreen إلى مفتاح API؟
نعم. يتطلب APPSCREEN_API_KEY، وتضبطها في إعداداته.
هل AppScreen مفتوح المصدر؟
نعم. شيفرته متاحة على GitHub بترخيص MIT.
من يصون AppScreen؟
ينشره omelas-tech. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.
من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.