Apify MCP Server

Apify MCP Server

Apify is the world's largest marketplace of tools for web scraping, data extraction, and web automation. You can extract structured data from social media, e-commerce, search engines, maps, travel sites, or any other website.

2.3K

7 Tools

Signed
Built by Docker
Requires Secrets
Add to Docker Desktop

Version 4.43 or later needs to be installed to add the server automatically

Use cases

Call any Actor from the Apify Store using a mandatory two-step workflow. This ensures you first get the Actor’s input schema and details before executing it safely. There are two ways to run Actors: 1. Dedicated Actor tools (e.g., apify-slash-rag-web-browser): These are pre-configured tools, offering a simpler and more direct experience. 2. Generic call-actor tool (call-actor): Use this when a dedicated tool is not available or when you want to run any Actor dynamically. This tool is especially useful if you do not want to add specific tools or your client does not support dynamic tool registration. **Important:** Typically, a successful run returns a `datasetId` (the Actor's output stored as an Apify dataset) and a short preview of items. To fetch the full output, use the get-actor-output tool with the `datasetId`. USAGE: - Always use dedicated tools when available (e.g., apify-slash-rag-web-browser) - Use the generic call-actor tool only if a dedicated tool does not exist for your Actor. MANDATORY TWO-STEP-WORKFLOW: Step 1: Get Actor Info (step="info", default) - First call this tool with step="info" to get Actor details and input schema - This returns the Actor description, documentation, and required input schema - You MUST do this step first - it's required to understand how to call the Actor Step 2: Call Actor (step="call") - Only after step 1, call this tool again with step="call" and proper input based on the schema - This runs the Actor. It will create an output as an Apify dataset (with datasetId). - This step returns a dataset preview, typically JSON-formatted tabular data. EXAMPLES: - user_input: Get instagram posts using apify/instagram-scraper

About

Apify MCP Server MCP Server

Apify is the world's largest marketplace of tools for web scraping, data extraction, and web automation. You can extract structured data from social media, e-commerce, search engines, maps, travel sites, or any other website.

What is an MCP Server?

Characteristics

AttributeDetails
Docker Imagemcp/apify-mcp-server
Authorapify
Repositoryhttps://github.com/apify/actors-mcp-server
Dockerfilehttps://github.com/apify/actors-mcp-server/blob/master/Dockerfile
Docker Image built byDocker Inc.
Docker Scout Health ScoreDocker Scout Health Score
Verify SignatureCOSIGN_REPOSITORY=mcp/signatures cosign verify mcp/apify-mcp-server --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub
LicenceMIT License

Available Tools (7)

Tools provided by this ServerShort Description
apify-slash-rag-web-browserThis tool calls the Actor "apify/rag-web-browser" and retrieves its output results.
call-actorCall any Actor from the Apify Store using a mandatory two-step workflow.
fetch-actor-detailsGet detailed information about an Actor by its ID or full name (format: "username/name", e.g., "apify/rag-web-browser").
fetch-apify-docsFetch the full content of an Apify documentation page by its URL.
get-actor-outputRetrieve the output dataset items of a specific Actor run using its datasetId.
search-actorsSearch the Apify Store for Actors or Model Context Protocol (MCP) servers using keywords.
search-apify-docsSearch Apify documentation using full-text search.

Tools Details

Tool: apify-slash-rag-web-browser

This tool calls the Actor "apify/rag-web-browser" and retrieves its output results. Use this tool instead of the "call-actor" if user requests this specific Actor. Actor description: Web browser for OpenAI Assistants, RAG pipelines, or AI agents, similar to a web browser in ChatGPT. It queries Google Search, scrapes the top N pages, and returns their content as Markdown for further processing by an LLM. It can also scrape individual URLs.This tool provides general web browsing functionality, for specific sites like e-commerce, social media it is always better to search for a specific Actor

ParametersTypeDescription
querystringREQUIRED Enter Google Search keywords or a URL of a specific web page. The keywords might include the advanced search operators. Examples:
  • san francisco weather
  • https://www.cnn.com
  • function calling site:openai.com Example values: "web browser for RAG pipelines -site:reddit.com" maxResults|integeroptional|The maximum number of top organic Google Search results whose web pages will be extracted. If query is a URL, then this field is ignored and the Actor only fetches the specific web page. Example values: 3 outputFormats|arrayoptional|Select one or more formats to which the target web pages will be extracted and saved in the resulting dataset. Example values: ["markdown"]

Tool: call-actor

Call any Actor from the Apify Store using a mandatory two-step workflow. This ensures you first get the Actor’s input schema and details before executing it safely.

There are two ways to run Actors:

  1. Dedicated Actor tools (e.g., apify-slash-rag-web-browser): These are pre-configured tools, offering a simpler and more direct experience.
  2. Generic call-actor tool (call-actor): Use this when a dedicated tool is not available or when you want to run any Actor dynamically. This tool is especially useful if you do not want to add specific tools or your client does not support dynamic tool registration.

Important:

Typically, a successful run returns a datasetId (the Actor's output stored as an Apify dataset) and a short preview of items. To fetch the full output, use the get-actor-output tool with the datasetId.

USAGE:

  • Always use dedicated tools when available (e.g., apify-slash-rag-web-browser)
  • Use the generic call-actor tool only if a dedicated tool does not exist for your Actor.

MANDATORY TWO-STEP-WORKFLOW: Step 1: Get Actor Info (step="info", default)

  • First call this tool with step="info" to get Actor details and input schema
  • This returns the Actor description, documentation, and required input schema
  • You MUST do this step first - it's required to understand how to call the Actor

Step 2: Call Actor (step="call")

  • Only after step 1, call this tool again with step="call" and proper input based on the schema
  • This runs the Actor. It will create an output as an Apify dataset (with datasetId).
  • This step returns a dataset preview, typically JSON-formatted tabular data.

EXAMPLES:

  • user_input: Get instagram posts using apify/instagram-scraper Parameters|Type|Description -|-|- actor|string|The name of the Actor to call. For example, "apify/rag-web-browser". step|string|Step to perform: "info" to get Actor details and input schema (required first step), "call" to run the Actor (only after getting info). callOptions|objectoptional|Optional call options for the Actor run configuration. input|objectoptional|The input JSON to pass to the Actor. For example, {"query": "apify", "maxResults": 5}. Must be used only when step="call".

Tool: fetch-actor-details

Get detailed information about an Actor by its ID or full name (format: "username/name", e.g., "apify/rag-web-browser"). This returns the Actor’s title, description, URL, README (documentation), input schema, pricing/usage information, and basic stats. Present the information in a user-friendly Actor card.

USAGE:

  • Use when a user asks about an Actor’s details, input schema, README, or how to use it.

USAGE EXAMPLES:

  • user_input: How to use apify/rag-web-browser
  • user_input: What is the input schema for apify/rag-web-browser?
  • user_input: What is the pricing for apify/instagram-scraper? Parameters|Type|Description -|-|- actor|string|Actor ID or full name in the format "username/name", e.g., "apify/rag-web-browser".

Tool: fetch-apify-docs

Fetch the full content of an Apify documentation page by its URL. Use this after finding a relevant page with the search-apify-docs tool.

USAGE:

  • Use when you need the complete content of a specific docs page for detailed answers.

USAGE EXAMPLES:


Tool: get-actor-output

Retrieve the output dataset items of a specific Actor run using its datasetId. You can select specific fields to return (supports dot notation like "crawl.statusCode") and paginate results with offset and limit. This tool is a simplified version of the get-dataset-items tool, focused on Actor run outputs.

The results will include the dataset items from the specified dataset. If you provide fields, only those fields will be included (nested fields supported via dot notation).

You can obtain the datasetId from an Actor run (e.g., after calling an Actor with the call-actor tool) or from the Apify Console (Runs → Run details → Dataset ID).

USAGE:

  • Use when you need to read Actor output data (full items or selected fields), especially when preview does not include all fields.

USAGE EXAMPLES:

  • user_input: Get data of my last Actor run
  • user_input: Get number_of_likes from my dataset
  • user_input: Return only crawl.statusCode and url from dataset aab123

Note: This tool is automatically included if the Apify MCP Server is configured with any Actor tools (e.g., "apify-slash-rag-web-browser") or tools that can interact with Actors (e.g., "call-actor", "add-actor").

ParametersTypeDescription
datasetIdstringActor output dataset ID to retrieve from.
fieldsstringoptionalComma-separated list of fields to include (supports dot notation like "crawl.statusCode"). For example: "crawl.statusCode,text,metadata"
limitnumberoptionalMaximum number of items to return (default: 100).
offsetnumberoptionalNumber of items to skip (default: 0).

Tool: search-actors

Search the Apify Store for Actors or Model Context Protocol (MCP) servers using keywords. Apify Store features solutions for web scraping, automation, and AI agents (e.g., Instagram, TikTok, LinkedIn, flights, bookings).

The results will include curated Actor cards with title, description, pricing model, usage statistics, and ratings. For best results, use simple space-separated keywords (e.g., "instagram posts", "twitter profile", "playwright mcp"). For detailed information about a specific Actor, use the fetch-actor-details tool.

USAGE:

  • Use when you need to discover Actors for a specific task or find MCP servers.
  • Use to explore available tools in the Apify ecosystem based on keywords.

USAGE EXAMPLES:

  • user_input: Find Actors for scraping e-commerce
  • user_input: Find browserbase MCP server
  • user_input: I need to scrape instagram profiles and comments
  • user_input: I need to get flights and airbnb data Parameters|Type|Description -|-|- category|stringoptional|Filter the results by the specified category. limit|integeroptional|The maximum number of Actors to return. The default value is 10. offset|integeroptional|The number of elements to skip at the start. The default value is 0. search|stringoptional|A string to search for in the Actor's title, name, description, username, and readme. Use simple space-separated keywords, such as "web scraping", "data extraction", or "playwright browser mcp". Do not use complex queries, AND/OR operators, or other advanced syntax, as this tool uses full-text search only.

Tool: search-apify-docs

Search Apify documentation using full-text search. You can use it to find relevant documentation based on keywords. Apify documentation has information about Apify console, Actors (development (actor.json, input schema, dataset schema, dockerfile), deployment, builds, runs), schedules, storages (datasets, key-value store), Proxy, Integrations, Apify Academy (crawling and webscraping with Crawlee),

The results will include the URL of the documentation page, a fragment identifier (if available),
and a limited piece of content that matches the search query.

Fetch the full content of the document using the fetch-apify-docs tool by providing the URL.

USAGE:
- Use when user asks about Apify documentation, Actor development, Crawlee, or Apify platform.

USAGE EXAMPLES:
- query: How to use create Apify Actor?
- query: How to define Actor input schema?
- query: How scrape with Crawlee?
ParametersTypeDescription
querystringAlgolia full-text search query to find relevant documentation pages.
Use only keywords, do not use full sentences or questions.
For example, "standby actor" will return documentation pages that contain the words "standby" and "actor".
limitnumberoptionalMaximum number of search results to return. Defaults to 5.
You can increase this limit if you need more results, but keep in mind that the search results are limited to the most relevant pages.
offsetnumberoptionalOffset for the search results. Defaults to 0.
Use this to paginate through the search results. For example, if you want to get the next 5 results, set the offset to 5 and limit to 5.

Use this MCP Server

{
  "mcpServers": {
    "apify-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "TOOLS",
        "-e",
        "APIFY_TOKEN",
        "mcp/apify-mcp-server"
      ],
      "env": {
        "TOOLS": "actors,docs,apify/rag-web-browser",
        "APIFY_TOKEN": "your-apify-token"
      }
    }
  }
}

Why is it safer to run MCP Servers with Docker?

Manual installation

You can install the MCP server using:

Installation for

Related servers