Pagefully
App Store custom product pages from your own screenshots: plan, make, check and publish them.
Connect it
Settings → Connectors → Add custom connector
URL: https://pagefully.com/api/mcpSettings → Apps & Connectors → Advanced → Developer mode
Create connector with URL: https://pagefully.com/api/mcp{
"mcpServers": {
"mcp": {
"url": "https://pagefully.com/api/mcp",
"headers": {
"Authorization": "<YOUR_AUTHORIZATION>"
}
}
}
}claude mcp add --transport http mcp https://pagefully.com/api/mcp --header "Authorization: <value>"{
"servers": {
"mcp": {
"type": "http",
"url": "https://pagefully.com/api/mcp",
"headers": {
"Authorization": "<YOUR_AUTHORIZATION>"
}
}
}
}15 tools, verified live
analyze_appReads an iOS app from its App Store link or id and says what Pagefully understood of it. Call this first. Signed in (OAuth or a Pagefully token): adds the app to the workspace (no App Store Connect key is needed to plan and make pages) and returns the app, with its app_id, its brief (what the app does, who it is for and how it sounds) and its screens. "screens" is the app's own source screenshots
propose_planReturns the app's plan: one custom product page for each search intent. Each intent has a kind (problem, feature or competitor), what its page says, and the keywords from the app's keyword field that the page claims. A keyword belongs to one page only. An intent with no keyword from the field is a page for ads and links, and has targets instead. Call it after analyze_app has returned a brief. If t
update_planChanges the plan in one call, as the person asked: add an intent, update one (its name, what its page says, or on and off), approve (switch on) a list, remove a list, or reorder (the order is build priority). Changes apply in that order and stop at the first one the product refuses; the ones before it are saved and the error says so. An intent that is on gets a page when generate_pages is called.
add_screensAdds screens of the app for pages to be drawn from: captures of the running app, beside the screenshots its App Store listing already has. Use it when the listing's screenshots are stale, when a page needs a screen the listing does not show, or when the app is not on the store yet. Returns each screen with its position, which is what edit_page takes as "screen". A page made after this may choose a
generate_pagesMakes a page for every intent that is switched on and has none: the words are written, drawn onto the app's own screenshots, and checked against App Review's rules (pre-flight). Each page is its own job. Returns the jobs with their page ids, and the app's pages with a preview_url each. Call it once the person has agreed the plan. Then call get_job for each job until it is done, and preview_page fo
get_jobread-onlyThe state of a long job: queued, running, done or failed, with its steps as progress, counts of what it did, and the code and message of what went wrong. Call it after any tool returned a job_id, every few seconds, until the state is done or failed. A failed job is not retried by itself: tell the person what the message says.
edit_pageChanges one screenshot on a page, or several in one call, makes one again, or approves the page. Say which screenshot by position (1 is the first) or slot_id. By hand: its headline, its subline, the screen it shows ("screen", a position from preview_page's screens or add_screens), its style, or its design. The screenshot is drawn again and checked again, and returns with the page. To change severa
preview_pageread-onlyOne page, whole: each screenshot with its headline, subline and picture, the promotional text, the keywords it is for, what pre-flight found, whether it is approved, and its preview_url on pagefully.com. The screenshots also come back as images (display size, at most six) where the client can show them, and a chat app that draws MCP Apps shows the page inline as the App Store would, with buttons t
publish_pagesStep one of two. Sends nothing. Returns exactly what would be made in App Store Connect for the pages asked for (each page's name, headlines, promotional text, keywords, devices, whether it is a revision, and its preview_url), which pages would not be sent and why, what happens next, and a confirmation_token. You must show the person that summary and every preview_url, and wait for their explicit
confirm_publishcan modifyStep two of two. Spends the confirmation_token from publish_pages and makes each page in the summary in App Store Connect, one job for each page. Returns the jobs: call get_job for each. Call it only after the person has seen the summary and the preview links from publish_pages and has said yes, in their own words, to publishing those pages. If they asked for a change, make it and call publish_pag
get_resultsread-onlyHow each page is doing on the App Store against the app's default page over the last seven days Apple has reported: views, downloads and conversion rate for each page and for the default page, and by source. The numbers are Apple's, and Apple leaves out rows under five users, so a small page shows nothing for a while. With page_id it is one page: the same numbers, the week before, and its download
suggest_refreshread-onlyThe pages Pagefully suggests the app should have and does not: each with a name, a kind, what the page would say, the searches it is for and the reason. These are the suggestions the product already holds (such as a use the app's reviewers raise, or a competitor it follows). Reading them asks nothing of a model and costs nothing. Call it when the person asks what to make next, or after get_results
get_usageread-onlyFor each app on the workspace: its plan (Free, the Pack or Pro, which belong to an app), pages made and allowed, what is left, revisions used for each page, and the address of its plan screen. Also what each plan allows and costs, the scope of the token in use, and the rate limits. Call it before generating when the person asks what they can still make, or after an upgrade_required answer to expla
search_screenshotsread-onlySearches the App Screenshot Index: every screenshot of the top 100 free apps in each App Store category (United States), read and tagged by what it does. Needs no account. Use it to see how the leading apps in a category design their screenshots before you plan, write or review a page, and to hold a page against what its category does. Four ways to call it. (1) With nothing: the catalogue, every c
score_screenshotsReads a set of screenshots with the App Screenshot Index's own reader and holds it against a category: each screenshot comes back with the same tactic keys search_screenshots uses (with label and group), its words and its colour, and each notable tactic comes back with whether the set has it, which screenshots carry it, and what share of the category's top 100 apps, of its top ten and of the rest
Alternatives in Browser & Scraping
Compare →FOFouraA
Reliable web access for AI agents: smart HTTP, rotating proxies, and full-browser rendering.
HAHasDataB
All HasData scraping tools in one MCP server: Google, TikTok, Instagram, maps, e-commerce and more.
GAGatewayB
Durable self for AI agents: one-call resume, memory, real browser, free chat + hire real humans.
ZMZenrows MCPB
Zenrows MCP server — Fetch, Extract, Batch, and Browser Sessions for AI coding assistants
UNUnbrowseB
Websites as APIs: read pages, run site tasks via learned APIs, cloud browser with saved logins.
CMCrawlora MCPB
Hosted MCP: 3631 structured web-data tools across 471 platform groups.