Apify MCP Server — тысячи готовых скраперов и краулеров как инструменты для ИИ-агента

· 8 мин чтения
mcp web-scraping automation ai-agents search
📂 Исходный код на GitHub

MCP-сервер Apify, который даёт ИИ-агентам извлекать данные из соцсетей, поисковиков, карт, интернет-магазинов и любых сайтов с помощью тысяч готовых скраперов и краулеров из Apify Store. Написан на TypeScript, лицензия MIT. Работает как облачный сервер на mcp.apify.com (OAuth, Streamable HTTP) и как локальный процесс через stdio.

Apify MCP Server — тысячи готовых скраперов и краулеров как инструменты для ИИ-агента

Apify MCP Server — официальный MCP-сервер Apify. Он открывает ИИ-ассистенту доступ к Apify Store: каталогу с тысячами готовых программ для сбора данных с сайтов. Любая такая программа называется Actor. Через сервер агент может найти нужный Actor, посмотреть его схему входных данных, запустить его и получить результат.

Зачем это нужно: вместо того чтобы писать скрапер под каждый сайт, вы подключаете один MCP-сервер и получаете весь каталог сразу. Среди готовых Actor есть парсеры Facebook и Instagram, сборщик контактов из Google Maps, парсер выдачи Google Search, веб-браузер для RAG и загрузчик любых страниц.

Проект написан на TypeScript, лицензия MIT, у репозитория около 11 тысяч звёзд.

Два способа подключения

Облачный сервер. Адрес https://mcp.apify.com, транспорт Streamable HTTP. Это рекомендуемый способ. Так как сервер поддерживает OAuth, из клиентов вроде Claude.ai или Visual Studio Code достаточно вставить один адрес — токен вводить не нужно. Второй вариант для этого же адреса: передавать заголовок Authorization: Bearer <APIFY_TOKEN>.

У облачной версии есть то, чего нет у локальной: она определяет схему результата Actor, чтобы модель получала данные в предсказуемом виде. Поэтому для рабочих задач рекомендуют облако.

Локальный запуск. Транспорт stdio — сервер общается с клиентом через стандартный ввод и вывод. В настройках MCP-клиента укажите команду npx @apify/actors-mcp-server и переменную среды APIFY_TOKEN с вашим токеном Apify API. Полный список параметров запуска показывает команда npx @apify/actors-mcp-server --help.

Старый адрес https://mcp.apify.com/sse больше не работает: транспорт SSE удалили. Если у вас в конфигурации остался суффикс /sse, уберите его.

Подробная инструкция по настройке лежит в документации Apify. Проверенные клиенты: Claude Desktop, Claude.ai, ChatGPT, VS Code (Genie), Cursor, OpenCode, Kiro.

Actor становится инструментом

Сервер читает схему входных данных Actor и создаёт из него инструмент MCP. Агент видит, какие аргументы принимает инструмент и что он вернёт, поэтому вам не нужно вручную расписывать вызов.

Например, у apify/rag-web-browser входные данные выглядят так:

{
  "query": "restaurants in San Francisco",
  "maxResults": 3
}

Из этого следует практическое правило: аргументы подставляет сама модель. Вы пишете задачу человеческим языком, а LLM сама решает, какой инструмент вызвать и с какими параметрами.

Инструменты сервера

Кроме самих Actor, сервер даёт набор служебных инструментов. Они делятся на категории: actors, runs, storage, docs, tasks, schedules, builds, source, api.

Инструмент Что делает
search-actors Ищет Actor в Apify Store
fetch-actor-details Отдаёт схему входа, README, цены и схему вывода Actor
call-actor Запускает Actor и возвращает результаты
search-apify-docs Ищет по документации Apify
fetch-apify-docs Отдаёт страницу документации целиком
get-actor-run Детали конкретного запуска
get-dataset-items Элементы датасета с фильтрами и постраничностью
get-key-value-store-record Значение по ключу в key-value store
abort-actor-run Останавливает идущий запуск
build-actor Собирает версию Actor
create-schedule Регулярный запуск по cron
apify-api-read GET-запрос к любому пути Apify API
apify-api-write POST, PUT, PATCH или DELETE к Apify API

Полный список в репозитории содержит около сорока инструментов. Категории можно включать целиком, а часть инструментов включается только по имени — например, delete-actor или apify-api-write опасны, поэтому их специально убрали из набора по умолчанию.

Есть особенность, о которой стоит знать. Ответ на запуск Actor не содержит самих данных. В нём есть метаданные запуска, идентификаторы хранилищ, поле summary и подсказка nextStep. Чтобы забрать данные, агент читает nextStep и вызывает get-dataset-items с datasetId из ответа. Инструмент get-dataset-items добавляется автоматически, когда в наборе есть call-actor.

Ещё сервер умеет отдавать данные как ресурсы MCP. Вы передаёте любой GET-адрес Apify API вида https://api.apify.com/v2/..., а сервер сам подставляет токен сессии. Тело ответа возвращается сразу, пока оно не больше 256 КБ; всё, что крупнее, заменяется коротким уведомлением и ссылкой на скачивание.

Набор инструментов: параметр tools

Без параметров сервер загружает четыре вещи:

  • категорию actors (включая call-actor, search-actors, fetch-actor-details);
  • категорию docs;
  • Actor apify/rag-web-browser;
  • Actor apify/web-fetch.

Если параметр tools задан, включаются только перечисленные в нём инструменты, а набор по умолчанию не добавляется.

https://mcp.apify.com?tools=actors,docs,apify/rag-web-browser,apify/web-fetch

Минимальный вариант — один Actor и ничего больше:

https://mcp.apify.com?tools=apify/my-actor

То же самое для локального запуска:

npx @apify/actors-mcp-server --tools actors,docs,apify/rag-web-browser,apify/web-fetch
npx @apify/actors-mcp-server --tools apify/my-actor

Разработчики прямо предупреждают: состав набора по умолчанию может измениться в следующих версиях. Для рабочих проектов и стабильных интерфейсов всегда задавайте tools явно.

Параметр ui=true включает интерактивные виджеты MCP Apps в ответах инструментов. Например, search-actors начинает отдавать кликабельный интерфейс вместо простого текста. То же самое локально: флаг --ui true или переменная UI_MODE.

Чтобы подобрать конфигурацию под свой клиент, есть визуальный конфигуратор на https://mcp.apify.com/ — он собирает готовый фрагмент настроек.

Оплата запусков без токена

Запуск платного Actor обычно требует токена Apify. Сервер поддерживает три способа оплаты, при которых платит сам агент.

AGI (agi.apify.com) — рекомендуемый вариант. Вы платите один раз по протоколу x402 или MPP и получаете prepaid-токен Apify с ограничением по сумме. Дальше используете его как обычный токен через Authorization: Bearer <token>. Схема работает с любым Actor, а не только с Actor типа Pay Per Event. Условия описаны в agi.apify.com/AGENTS.md.

Прямой x402. Оплата идёт в USDC в сети Base, аккаунт Apify не нужен. Работает только с Actor типа Pay Per Event, Standby Actor не поддерживается. Требуется MCP-клиент с поддержкой протокола — например, mcpc из репозитория apify/mcpc.

brew install apify/tap/mcpc
mcpc x402 init
mcpc connect "mcp.apify.com?payment=x402" @apify --x402
mcpc @apify tools-call call-actor actor:="apify/rag-web-browser" input:='{"query": "latest AI news"}'

Skyfire. Агент передаёт платёжный токен PAY прямо в параметрах вызова инструмента. Нужен аккаунт Skyfire с пополненным кошельком и клиент, который умеет работать с несколькими серверами.

{
  "mcpServers": {
    "skyfire": {
      "url": "https://api.skyfire.xyz/mcp/sse",
      "headers": {
        "skyfire-api-key": "<YOUR_SKYFIRE_API_KEY>"
      }
    },
    "apify": {
      "url": "https://mcp.apify.com?payment=skyfire"
    }
  }
}

Схема работает так: агент бесплатно находит Actor через search-actors, кладёт деньги на prepaid-баланс, запускает инструмент, получает результат. Неиспользованный остаток возвращается — через 60 минут простоя при x402 или после истечения токена при Skyfire.

Примеры диалогов

Запрос «найди последние новости об автономных ИИ-агентах и сделай краткую сводку» вызывает предустановленный инструмент apify--rag-web-browser. Он ищет в вебе и отдаёт содержимое трёх лучших результатов, а ассистент суммирует его.

Запрос «собери 10 лучших ресторанов в Праге из Google Maps с контактами» агент выполняет в три шага: ищет подходящий Actor, смотрит его схему входа, запускает. В ответе — название, адрес, рейтинг, телефон и сайт.

Запрос «покажи следующие 10 результатов того запуска» агент берёт datasetId из прошлого ответа и читает следующую страницу датасета.

Телеметрия и данные

Сервер собирает телеметрию вызовов инструментов, она включена по умолчанию. Локальная версия дополнительно отправляет отчёты об ошибках в Sentry. Выключается это флагом --telemetry-enabled=false или переменной TELEMETRY_ENABLED=false. Флаг командной строки важнее переменной среды.

npx @apify/actors-mcp-server --telemetry-enabled=false
export TELEMETRY_ENABLED=false

Для облачного сервера — параметр в адресе: https://mcp.apify.com?telemetry-enabled=false.

Часть инструментов работает вообще без токена. Если в tools перечислены только search-actors, fetch-actor-details, search-apify-docs, fetch-apify-docs, apify-api-search и apify-api-details, облачный сервер принимает запросы без авторизации.

По поводу данных: ваши запросы и входные данные Actor уходят в Apify API для выполнения. Дальше они не передаются третьим лицам, кроме тех, что нужны для работы самого Actor. Подробности в правовых документах Apify.

Ограничения

Схему входа Actor приходится упрощать, чтобы она работала с большинством MCP-клиентов. Описания длиннее 500 символов обрезаются по последней целой фразе и помечаются [Description truncated]. Списки значений (enum) длиннее 2000 символов вместе убираются, а в описание добавляется короткая заметка с примерами. Обязательные поля получают префикс REQUIRED. Тип элементов массива угадывается по порядку: явный тип в items, потом тип значения по умолчанию, потом тип из редактора.

Арендные Actor доступны только через облачный сервер https://mcp.apify.com. Локально вы можете вызвать только те Actor, которые уже добавлены в ваш набор инструментов.

Локальная разработка

Нужен Node.js версии 22 или новее. Токен кладётся в файл .env:

APIFY_TOKEN="your-apify-token"

Сборка пакета и запуск:

pnpm run build

export APIFY_TOKEN="your-apify-token"
export APIFY_META_ORIGIN=STANDBY
apify run -p

Сервер поднимается на http://localhost:3001. Для отладки удобен MCP Inspector:

npx @modelcontextprotocol/inspector node ./dist/stdio.js

Инструкции по разработке — в DEVELOPMENT.md, правила оформления коммитов и условия участия в проекте — в CONTRIBUTING.md. Лицензия MIT, текст лежит в LICENSE.md.

Источник: https://github.com/apify/apify-mcp-server