Shotframe

io.github.CloudCorpRecords由 GitHub 账号 CloudCorpRecords 发布v0.1.0更新于 Nov 3, 2026

通过 AppScreen API 从布局和图像文件渲染 App Store 和 Google Play 截图。

AI 翻译由 AI 模型根据下方的原文描述翻译,可能有误。

原文描述

Render App Store and Google Play screenshots from layouts and image files via the AppScreen API.

已验证STDIO仅桌面浏览器自动化

概览

Shotframe 的本地 MCP 服务;无需登录;STDIO。

暂无 AI 概览:以下信息来自注册中心条目和服务本身。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Shotframe,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

shotframe

Need App Store or Google Play screenshots for a store listing? shotframe hands the AppScreen API a set of screen layouts plus the image files they reference, and gives you back either a render job you can poll or a direct download link for the finished screenshots.

How a render flows:

  • screens — the layouts, as JSON objects. Their structure is defined by the AppScreen API; shotframe passes them through untouched and cannot validate them for you.
  • files — the images the layouts use. Each item names a file and carries exactly one source: a local path (the client reads the bytes off disk and encodes them; a leading ~/ expands to your home directory) or inline base64 (meant only for tiny synthetic test images). An unreadable path fails the call before any request is made.
  • The reply preserves the API's own fields — a jobId for keyed/async renders or a download link for anonymous/inline ones, plus balance and cost when reported. Quota metadata the API reports is surfaced on the MCP result's _meta (quota, and balance / cost / upgradeUrl when present).

Poll a job with its jobId to learn its status and, when it is done, get a signed download URL. Signed URLs expire after about an hour; poll again to refresh one.

Configuration

The API key is optional — anonymous use works, capped by the service at 5 lifetime renders:

bash
export APPSCREEN_API_KEY="your key"   # optional

Rendering spends your own AppScreen workspace credits; when they run out the API answers 402 and the tool reports it as an insufficient_credits error carrying the API's cost and balance text. shotframe itself holds no payment instrument.

Other environment variables:

  • APPSCREEN_BASE_URL — API base URL (https://api.appscreen.co by default)
  • APPSCREEN_MCP_CLIENT — sent as the X-MCP-Client header, identifying the calling client

CLI

bash
npx @reneturcios/shotframe render_screenshots '{"screens":[{"device":"iphone"}], "files":[{"name":"icon.png","path":"~/shots/icon.png"}]}'npx @reneturcios/shotframe get_render_status '{"job_id":"job-123"}'npx @reneturcios/shotframe --version

Output is the API result body as JSON. Exit codes: 0 on success, 1 on a runtime error (including a validation failure, an unreadable file, or an upstream error), 2 on a usage error.

MCP server

bash
npx -y @reneturcios/shotframe mcp

MCP client config:

json
{  "mcpServers": {    "shotframe": {      "command": "npx",      "args": ["-y", "@reneturcios/shotframe", "mcp"],      "env": { "APPSCREEN_API_KEY": "your key" }    }  }}

Tools

  • render_screenshots — Render App Store and Google Play screenshots from screens (layout JSON) and image files. Returns a jobId for keyed/async renders or a download link for anonymous/inline renders. screens is required; files is optional.
  • get_render_status — Poll a render job by jobId. Returns the status and a signed download URL when done. Signed URLs expire after about an hour; re-poll to refresh.

Docker

bash
docker run -i -e APPSCREEN_API_KEY="your key" ghcr.io/cloudcorprecords/shotframedocker run --rm ghcr.io/cloudcorprecords/shotframe get_render_status '{"job_id":"job-123"}'

Development

bash
npm installnpm run build   # tsc -> dist/npm test        # tsx --test test/*.test.ts (fake fetch + temp files, no network)npm run dev     # run the CLI from source

License

MIT — Copyright (c) 2026 Rene Turcios

来源:README.md,提交 2f8bf4a

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.0最新Nov 3, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分