Apify MCP Server

Official

Put 6,000+ pre-built scrapers at your assistant's fingertips through one MCP endpoint.

Local + remotestdiossestreamable-httpTypeScriptMIT 700

What is the Apify MCP server?

Most scraping conversations end with "…and then someone has to build and maintain the scraper." The Apify MCP server skips that step. Apify's marketplace hosts thousands of Actors — pre-built, maintained scrapers and automation tools for specific targets: Google Maps listings, Instagram profiles, TikTok posts, Amazon products, LinkedIn pages, news sites and plenty of long-tail sources you'd never build a scraper for yourself.

Through MCP, your assistant can search that marketplace, pick an appropriate Actor, run it with the right input and collect structured results — all inside one conversation. Ask for "the top-rated coffee shops in Lisbon with their ratings and addresses" and the assistant can find the Google Maps scraper Actor, run it, and hand back clean JSON, no selectors or proxies in sight.

That's the key difference from generalist crawlers like Firecrawl: Apify Actors encode site-specific knowledge. A dedicated Instagram Actor knows about pagination quirks, rate limits and data layout in a way no generic crawler can. The trade-off is cost model complexity — each Actor bills by its own usage — and a dependency on the marketplace having a good Actor for your target (it usually does).

The server runs in two modes: a hosted remote endpoint at mcp.apify.com, or locally via npm. Remote is the sensible default; it's always current with the marketplace and needs nothing but your API token.

Choosing the right Actor

  • Call fetch-actor-details before call-actor. The input schema tells you which fields are actually required, and the pricing block tells you whether a run costs cents or real money.
  • Favour Actors with high run counts and a recent update — listings show both, and an abandoned scraper for a site that redesigned last quarter tends to fail quietly rather than loudly.
  • Cap maxItems (or whatever the Actor calls it) on the first attempt. Testing a Google Maps or Instagram Actor on ten results before requesting ten thousand saves a long wait and a surprise invoice.
  • Results land in a dataset, not the chat, so page through them with get-dataset-items on big runs instead of asking for everything in one response.

What you can do with it

Scrape specific platforms without building scrapers

Google Maps, Instagram, TikTok, Amazon and thousands of other targets already have maintained Actors.

Lead and market research

Pull business listings, reviews and social profiles into structured datasets from a plain-language request.

Feed agents with niche data

Long-tail sources that would never justify custom scraper development.

Available tools

ToolWhat it does
search-actorsSearch the marketplace for Actors matching a task
fetch-actor-detailsRead an Actor's description, input schema and pricing
call-actorRun an Actor with given input and wait for results
get-dataset-itemsRetrieve the structured results a run produced

How to install the Apify MCP server

{
  "mcpServers": {
    "apify": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.apify.com/sse",
               "--header", "Authorization: Bearer your-apify-token"]
    }
  }
}

Get the token from Apify Console → Settings → API & Integrations.

Configuration

An Apify account and API token. Actors bill per use — check each Actor's pricing before large runs.

VariableDescriptionRequired
APIFY_TOKENApify API token used to run Actors and bill usagee.g. apify_api_...Yes

Example prompts to try

  • Find an Actor that scrapes Google Maps and get me the top 20 dentists in Austin with ratings and phone numbers.
  • Run the Instagram profile scraper on these three handles and summarise their posting frequency.
  • What Actors exist for scraping real-estate listings? Compare their pricing.

Frequently asked questions

A hosted, maintained scraper or automation tool in Apify's marketplace. Instead of writing site-specific scraping code, your assistant picks an existing Actor (there are thousands) and runs it with your parameters.