protogrid

Search / click.appdesigns/screenshots

appdesigns App Store screenshots

R0· no sign-in

App Store and Google Play screenshots MCP: your agent captures the app, you edit and export. Free.

v1.0.0 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality89good
Trust96of 100
Uptime, 30 days100%
Latency p50356 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "screenshots": {
      "type": "http",
      "url": "https://appdesigns.click/api/mcp"
    }
  }
}
claude mcp add --transport http screenshots https://appdesigns.click/api/mcp
[mcp_servers.screenshots]
url = "https://appdesigns.click/api/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "screenshots": {
      "type": "remote",
      "url": "https://appdesigns.click/api/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "screenshots": {
      "type": "http",
      "url": "https://appdesigns.click/api/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=screenshots&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYXBwZGVzaWducy5jbGljay9hcGkvbWNwIn0%3D"
}
{
  "servers": {
    "screenshots": {
      "type": "http",
      "url": "https://appdesigns.click/api/mcp"
    }
  }
}
{
  "mcpServers": {
    "screenshots": {
      "httpUrl": "https://appdesigns.click/api/mcp"
    }
  }
}
extensions:
  "screenshots":
    enabled: true
    name: "screenshots"
    type: streamable_http
    uri: "https://appdesigns.click/api/mcp"
    timeout: 300

Quality 89 / 100good

protocol100 · weight 25
  • pass
    protocol.modernsupports 2026-07-28 (server/discover)
  • pass
    protocol.statelessanswers without a session
  • pass
    protocol.transportstreamable HTTP
  • pass
    protocol.list_ttltool list is cacheable (ttlMs 3600000)
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene86 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length4 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations19 of 19 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • warn
    tools.token_costabout 12,695 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability75 · weight 15
  • warn
    stability.changes38 tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

19 tools, about 12,695 tokens to load them all · tool set 200b762a8a11 · tools last changed 2026-10-20 · checked 2026-10-20 14:21 UTC

Tool changes

  • feature_appadded

    Use this when the user wants their app in the appdesigns gallery (appdesigns.click/apps): a screenshot set they saved (asset_id, from save_to_account or list_projects) is sent for review as a template other makers start from, listed with the app's icon, name and store link, so other makers get inspiration and the user gets seen. A person reviews it within 24 to 48 hours and the user gets an email when it is live. The set needs at least 3 screens, an App Store or Google Play link, and an icon: taken from the App Store link (Apple's public lookup), else the project's icon in appdesigns, else icon. Ask the user before calling it: the listing is public. Needs the user signed in to appdesigns; a call without it fails asking for sign-in, and then the user signs in (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves).

  • get_exportchangedannotations
  • update_designchangedannotations
  • create_designchangedannotations
  • make_screenshot_setchangeddescription
    before

    Use this when the user has attached screenshots of their own app in this conversation and wants App Store or Google Play screenshots made from them: store listing images, framed screenshots or app mockups for the App Store or Play Store. Each screenshot is put in a real device frame on a background with the screen name and headline you write, at the store's exact size, and open_url opens the set as an editable project in the appdesigns editor. Takes 1 to 6 PNG or JPEG screenshots (at most 6 MB each, all the same way up; landscape ones make a landscape App Store set) in store order, with one screens entry per screenshot in the same order. Each must be a raw capture of the app as the device shows it. Do not use it for images that already have a device frame, a background or marketing text (the user needs to attach the raw screenshots instead), to invent app screens that do not exist, or when nothing is attached (the user needs to attach screenshots first). The screenshots are stored privately so open_url can load them; it works for 72 hours or until the user saves the set to their account. Nothing is public and no account is needed to make the set.

    after · 97% of words in common

    Use this when the user has attached screenshots of their own app in this conversation and wants App Store or Google Play screenshots made from them: store listing images, framed screenshots or app mockups for the App Store or Play Store. Each screenshot is put in a real device frame on a background with the screen name and headline you write, at the store's exact size, and open_url opens the set as an editable project in the appdesigns editor. Takes 1 to 6 screenshots (PNG, JPEG, WebP or GIF, at most 20 MB each, all the same way up; landscape ones make a landscape App Store set) in store order, with one screens entry per screenshot in the same order. Each must be a raw capture of the app as the device shows it. Do not use it for images that already have a device frame, a background or marketing text (the user needs to attach the raw screenshots instead), to invent app screens that do not exist, or when nothing is attached (the user needs to attach screenshots first). The screenshots are stored privately so open_url can load them; it works for 72 hours or until the user saves the set to their account. Nothing is public and no account is needed to make the set.

  • update_projectchangedannotations
  • get_exportchangeddescription, input schema, annotations
    before

    Use this after export_asset, once the user has the editor open: says whether the files are made, and when they are, returns them with a command that downloads them into a folder (bash and PowerShell; its links work for 24 hours, and calling get_export again gives fresh ones) and where they go next in App Store Connect or the Play Console. Needs the user signed in to appdesigns; a call without it fails asking for sign-in, and then the user signs in (in Claude Code run `claude mcp login appdesigns` (or /mcp, pick appdesigns, Authenticate), in Codex `codex mcp login appdesigns`; other agents open the sign-in page themselves). Read-only.

    after · 62% of words in common

    Use this after export_asset, once the user has the editor open: says whether the files are made, and when they are, returns them with a command that downloads them into a folder (bash and PowerShell) and where they go next in App Store Connect or the Play Console. The command's links work until the export expires (24 hours after export_asset); each call with the files ready makes new links and retires the earlier ones, so run the command from the latest call. Pass the handle too when you exported something you made in this conversation; then it needs no sign-in, else it needs the user signed in (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves).

  • export_assetchangedtitle, description, input schema
    before

    Use this when the user wants the finished files of something they saved in appdesigns (to upload to App Store Connect or the Play Console, or to use elsewhere). The files are made by the appdesigns editor in the user's browser, the same pixels its Export saves: open_url opens the asset there and makes them (a PNG per screen, and an MP4 for a screen whose loop is on), then get_export with export_id gives a command that downloads them. Needs the user signed in to appdesigns; a call without it fails asking for sign-in, and then the user signs in (in Claude Code run `claude mcp login appdesigns` (or /mcp, pick appdesigns, Authenticate), in Codex `codex mcp login appdesigns`; other agents open the sign-in page themselves).

    after · 82% of words in common

    Use this when the user wants the finished files (to upload to App Store Connect or the Play Console, or to use elsewhere) of something they saved (asset_id) or something you made in this conversation (handle). The files are made by the appdesigns editor in the user's browser, the same pixels its Export saves: open_url opens it there and makes them (a PNG per screen, and an MP4 for a screen whose loop is on), then get_export with export_id gives a command that downloads them. With asset_id (something the user saved) it needs the user signed in to appdesigns (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves); with handle (a set or design you made in this conversation, not saved yet) it needs no sign-in.

  • translate_assetchangedtitle, description, input schema
    before

    Use this when the user wants a saved screenshot set or listing asset in another language (a localization for the App Store or Google Play). You translate every text layer yourself (get_asset lists them, with their ids); this saves a copy of the set in that language into the same project, its images copied and the original untouched, wrapping a long translation and moving the captions under it down as the editor's own Translate set does. Returns the new asset_id, its revision, a preview of every screen (check the line breaks) and warnings; fix any line with edit_asset. One call per language. Needs the user signed in to appdesigns; a call without it fails asking for sign-in, and then the user signs in (in Claude Code run `claude mcp login appdesigns` (or /mcp, pick appdesigns, Authenticate), in Codex `codex mcp login appdesigns`; other agents open the sign-in page themselves).

    after · 78% of words in common

    Use this when the user wants a screenshot set or listing asset in another language (a localization for the App Store or Google Play): one they saved (asset_id), or one you made in this conversation (handle). You translate every text layer yourself (get_asset lists them, with their ids); this makes a copy in that language, its images copied and the original untouched, wrapping a long translation and moving the captions under it down as the editor's own Translate set does. A saved set's copy is saved into the same project (asset_id back); a copy of yours is a new set with its own handle and link, which joins the original's project when the user saves them. Returns a preview of every screen (check the line breaks) and warnings; fix any line with edit_asset. One call per language. With asset_id (something the user saved) it needs the user signed in to appdesigns (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves); with handle (a set or design you made in this conversation, not saved yet) it needs no sign-in.

  • replace_screenshotsadded

    Use this when a set needs new screenshots in its phones: a recapture, a fixed screen, or a phone frame layer to fill (get_asset shows those as "phone frame: ..."), in a set the user saved (asset_id) or a set or design you made in this conversation (handle). Two calls. First with asset_id or handle and screens (each a screen number, the local file and, for a phone frame layer, its id): it returns one upload command (bash and PowerShell) that sends the files straight to storage. Run it, then call again with the same asset_id or handle, replace_handle and the revision get_asset returned: the files are checked (PNG or JPEG, the shape of the phone's screen) and swapped in, and the reply has the new revision and previews. With asset_id (something the user saved) it needs the user signed in to appdesigns (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves); with handle (a set or design you made in this conversation, not saved yet) it needs no sign-in.

Showing the latest 10. Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 96 / 100

provenance85
liveness100
freshness100
hygiene100

+repository +dns-namespace +website +reachable +uptime-100% +updated-24d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://appdesigns.click/api/mcp streamable-httpnoneyes100%356 ms2026-07-282026-10-20

Tools (19)

create_designUse this when you have designed art for an app yourself and the user should get it as an editable project: App Store listing art that loops as a video (a product page header, search result, or In-App Event card or page), or a still marketing image (an X, LinkedIn or Instagram post, a link preview, a Product Hunt image, a 16:9 image, Google Play's feature graphic). Takes 1 to 4 variants (directions for the user to choose from), each a background and layers: art you draw as SVG, library pieces, the app's icon, text, and phone frames showing the app (an iPhone, the iPhone Duo open from behind and from the front...), with moves and a loop on listing art. Checks everything and returns a preview image of each variant, warnings, a design_handle for update_design, and open_url, which opens the design in the appdesigns editor, where the user keeps a direction, tweaks any layer, saves it and exports it. Nothing is public and no account is needed. The design waits 72 hours to be opened and saved.
create_projectUse this when you can run shell commands on the user's machine and have their app's screenshots as local files (a coding agent). Not for a chat without a terminal, such as ChatGPT, where the upload command cannot run. Starts a screenshot set: 1 to 6 screenshots in store order, each with a screen name and a headline. Returns a project_handle and one upload command (bash and PowerShell forms) that sends every screenshot straight to storage; run it once, then call finish_project with the handle. Upload and call finish_project within 1 hour (an unfinished project lapses then); a finished one waits 72 hours to be opened. Nothing is public and no account is needed; the user saves the set to their account when they open the link finish_project returns.
edit_assetdestructiveUse this to change something, after get_asset: one the user saved (asset_id) or a set or design you made in this conversation (handle). Rewrite or restyle text, move, resize or recolour layers, add art you draw as SVG, a library piece (search_library), a phone frame or new text, remove or reorder layers, move or resize the phone or change its model, colour and fold, change the background or the loop, turn the whole set landscape or portrait or give it another size of the same asset (set_canvas), rename, duplicate, reorder or remove screens. Send only what changes, with the revision get_asset returned; the asset changes at once (like an edit in the editor) and the reply has the new revision, previews of the changed screens and warnings. A set or design changed this way keeps changing here: update_project and update_design no longer apply to it. With asset_id (something the user saved) it needs the user signed in to appdesigns (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves); with handle (a set or design you made in this conversation, not saved yet) it needs no sign-in.
export_assetUse this when the user wants the finished files (to upload to App Store Connect or the Play Console, or to use elsewhere) of something they saved (asset_id) or something you made in this conversation (handle). The files are made by the appdesigns editor in the user's browser, the same pixels its Export saves: open_url opens it there and makes them (a PNG per screen, and an MP4 for a screen whose loop is on), then get_export with export_id gives a command that downloads them. With asset_id (something the user saved) it needs the user signed in to appdesigns (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves); with handle (a set or design you made in this conversation, not saved yet) it needs no sign-in.
feature_appUse this when the user wants their app in the appdesigns gallery (appdesigns.click/apps): a screenshot set they saved (asset_id, from save_to_account or list_projects) is sent for review as a template other makers start from, listed with the app's icon, name and store link, so other makers get inspiration and the user gets seen. A person reviews it within 24 to 48 hours and the user gets an email when it is live. The set needs at least 3 screens, an App Store or Google Play link, and an icon: taken from the App Store link (Apple's public lookup), else the project's icon in appdesigns, else icon. Ask the user before calling it: the listing is public. Needs the user signed in to appdesigns; a call without it fails asking for sign-in, and then the user signs in (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves).
finish_projectdestructiveChecks that every screenshot of a project was uploaded and is a real PNG or JPEG, then returns the link that opens the set in the appdesigns editor, where the user saves it to their account and can edit and export it. Calling it again returns a fresh link and retires the previous one.
get_assetread-onlyUse this before changing an asset with edit_asset, or when the user asks what one looks like: one the user saved (asset_id) or a set or design you made in this conversation (handle). Returns its screens, each with its background, its layers bottom first (text, pictures and the phone, each with an id, a position as a share of the canvas and its style) and its loop if it is animated, plus warnings about what may look off, and a preview image of each screen. Also returns the revision edit_asset needs. With asset_id (something the user saved) it needs the user signed in to appdesigns (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves); with handle (a set or design you made in this conversation, not saved yet) it needs no sign-in. Read-only.
get_design_guideread-onlyUse this when the user wants App Store listing art (an animated product page header, a search result, In-App Event art) or a marketing image (a launch post for X, LinkedIn or Instagram, a link preview, a Play feature graphic) designed for their app and you will draw it yourself. Returns the appdesigns recipe for that asset as markdown: its size and what crops or covers it, the layer format create_design takes (phone frames included), the moves, the quality bar and the hand-off to the user. Read-only; changes nothing.
get_exportdestructiveUse this after export_asset, once the user has the editor open: says whether the files are made, and when they are, returns them with a command that downloads them into a folder (bash and PowerShell) and where they go next in App Store Connect or the Play Console. The command's links work until the export expires (24 hours after export_asset); each call with the files ready makes new links and retires the earlier ones, so run the command from the latest call. Pass the handle too when you exported something you made in this conversation; then it needs no sign-in, else it needs the user signed in (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves).
get_workflowread-onlyUse this when you are working in an app's code and can run commands (a coding agent) and the user wants App Store or Google Play screenshots of that app. Returns the full appdesigns recipe for one platform and store, as markdown: how to pick the screens, how to check and populate demo data with the user's consent, the exact capture commands (simulator or emulator, status bar, deep links), the caption rules, and the upload and hand-off steps. Not for a chat without a terminal, where the screenshots come as attachments instead. Read-only; changes nothing.
list_devicesread-onlyUse this when the user asks which devices, frame colours or canvas sizes appdesigns offers, or before choosing a non-default device for a screenshot set. Lists them for one store, with the defaults used when you leave them out. The App Store gets Apple devices only; Google Play gets Android phones. Read-only.
list_projectsread-onlyUse this when the user wants to work on something they already made in appdesigns: change a screenshot set, a header or event art they saved, add to a project, or see what a project still lacks. Lists their projects (one per app) with every saved asset in each (asset_id, kind, canvas size, last edit) and what each project still needs. Needs the user signed in to appdesigns; a call without it fails asking for sign-in, and then the user signs in (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves). Read-only.
make_screenshot_setUse this when the user has attached screenshots of their own app in this conversation and wants App Store or Google Play screenshots made from them: store listing images, framed screenshots or app mockups for the App Store or Play Store. Each screenshot is put in a real device frame on a background with the screen name and headline you write, at the store's exact size, and open_url opens the set as an editable project in the appdesigns editor. Takes 1 to 6 screenshots (PNG, JPEG, WebP or GIF, at most 20 MB each, all the same way up; landscape ones make a landscape App Store set) in store order, with one screens entry per screenshot in the same order. Each must be a raw capture of the app as the device shows it. Do not use it for images that already have a device frame, a background or marketing text (the user needs to attach the raw screenshots instead), to invent app screens that do not exist, or when nothing is attached (the user needs to attach screenshots first). The screenshots are stored privately so open_url can load them; it works for 72 hours or until the user saves the set to their account. Nothing is public and no account is needed to make the set.
replace_screenshotsdestructiveUse this when a set needs new screenshots in its phones: a recapture, a fixed screen, or a phone frame layer to fill (get_asset shows those as "phone frame: ..."), in a set the user saved (asset_id) or a set or design you made in this conversation (handle). Two calls. First with asset_id or handle and screens (each a screen number, the local file and, for a phone frame layer, its id): it returns one upload command (bash and PowerShell) that sends the files straight to storage. Run it, then call again with the same asset_id or handle, replace_handle and the revision get_asset returned: the files are checked (PNG or JPEG, the shape of the phone's screen) and swapped in, and the reply has the new revision and previews. With asset_id (something the user saved) it needs the user signed in to appdesigns (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves); with handle (a set or design you made in this conversation, not saved yet) it needs no sign-in.
save_to_accountUse this when the user is signed in and a set you made is ready: after finish_project (and any update_project), or create_design (and any update_design), once the previews look right. Saves it straight into their appdesigns library, into the project you named with project_id or same_project_as (else a new project named after it), with no link to open and nothing for them to press. Returns the saved asset_id and revision for edit_asset, and open_url, which opens the saved set in the editor. The draft's own link then opens the saved set. Needs the user signed in to appdesigns; a call without it fails asking for sign-in, and then the user signs in (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves).
search_libraryread-onlyUse this when a design or a saved asset needs a ready-made piece rather than art you draw: SF Symbols, emoji, 3D shapes, glows and blobs, seasonal art, store badges, ratings, payment and social marks and more (a few thousand pieces). Returns the best matches with their path, which a library layer takes (create_design and edit_asset), and one image showing them in order, left to right then down. With no match it lists the categories. Read-only.
translate_assetUse this when the user wants a screenshot set or listing asset in another language (a localization for the App Store or Google Play): one they saved (asset_id), or one you made in this conversation (handle). You translate every text layer yourself (get_asset lists them, with their ids); this makes a copy in that language, its images copied and the original untouched, wrapping a long translation and moving the captions under it down as the editor's own Translate set does. A saved set's copy is saved into the same project (asset_id back); a copy of yours is a new set with its own handle and link, which joins the original's project when the user saves them. Returns a preview of every screen (check the line breaks) and warnings; fix any line with edit_asset. One call per language. With asset_id (something the user saved) it needs the user signed in to appdesigns (in Claude Code type /mcp, pick appdesigns and choose Authenticate (or run `claude mcp login appdesigns` in a separate terminal), in Codex run `codex mcp login appdesigns`; other agents open the sign-in page themselves); with handle (a set or design you made in this conversation, not saved yet) it needs no sign-in.
update_designdestructiveChanges a design create_design made, before the user saves it: set fields of a layer by id, add, remove or reorder layers, or replace a variant's background, loop or title, or add or remove a variant. Send only what changes. Returns new preview images and warnings, like create_design; the open_url create_design gave then opens the new version. A design changed with edit_asset keeps changing there, and one the user already saved changes in the editor (or with edit_asset by asset_id once they sign you in).
update_projectdestructiveChanges a screenshot set create_project made, before the user saves it: rewrite any screen's screen name or headline, or change the background colour, the frame colour or the device. The uploaded screenshots stay as they are. Returns new previews and warnings; the open_url finish_project gave then opens the new version. For anything more (the phone's place, size or fold, text styles, pieces, another canvas), use edit_asset with this project_handle as handle, no sign-in needed; once it has changed the set, keep using edit_asset. A set the user already saved changes with edit_asset by asset_id.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "click.appdesigns/screenshots",
  "title": "appdesigns App Store screenshots",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://appdesigns.click/api/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "1.0.0",
  "repository": {
    "url": "https://github.com/haider-nawaz/app-store-screenshots-mcp",
    "source": "github"
  },
  "websiteUrl": "https://appdesigns.click/mcp",
  "description": "App Store and Google Play screenshots MCP: your agent captures the app, you edit and export. Free."
}