webpeel/webpeel

webpeel/webpeel

от webpeel
MCP сервер для AI-агентов, выполняющий веб-загрузку, поиск, краулинг, извлечение данных и скриншоты единым API. Содержит 55+ доменных экстракторов для Reddit, GitHub, YouTube и других. Идеален для ...

WebPeel — Web data API for AI agents

npm version npm downloads GitHub stars CI License

The web data layer for AI agents.
Fetch, search, crawl, extract, screenshot — one call, zero boilerplate.

Quick Start · Agent Integrations · Docs · Playground · Get API Key

WebPeel demo showing agent-friendly web fetch input, automatic engine selection, and clean JSON output


The Problem

Every AI agent that touches the web rebuilds the same brittle stack: HTTP fetch → headless browser → anti-bot bypass → HTML cleanup → markdown conversion → token budgeting. Each layer fails differently. Sites change. Cloudflare rotates challenges. Your agent gets empty strings at 2 AM and your pipeline breaks.

WebPeel replaces that entire stack with one function call. It handles engine selection, anti-bot escalation, domain-specific extraction, and token optimization so your agent gets clean, structured data every time — without managing browsers, proxies, or parsing logic.


Quick Start

# Zero-install — just run it
npx webpeel "https://example.com"

# Search the web
npx webpeel search "latest AI agent frameworks"

# Crawl an entire site
npx webpeel crawl docs.example.com --max-pages 50

# Screenshot any page
npx webpeel screenshot "https://stripe.com/pricing" --full-page

# Ask a question about any page
npx webpeel ask "https://arxiv.org/abs/2401.00001" "What is the main contribution?"
webpeelтолько чтениеидемпотентныйвнешний мир

Ваш полный набор веб-инструментов: получайте, ищите, делайте скриншоты, извлекайте, отслеживайте и взаимодействуйте с любым сайтом. Автоматически обрабатывает JS-рендеринг, Cloudflare, CAPTCHA и более 55 экстракторов доменов. Экономия токенов 65-98%. Опишите, что вам нужно, простым английским. Примеры: 'read https://stripe.com/pricing', 'screenshot bbc.com on mobile', 'search for best AI frameworks 2024', 'extract product prices from amazon.com/dp/...', 'watch stripe.com/pricing for price changes', 'get YouTube transcript from youtu.be/...'. Для SPA с интенсивным использованием JavaScript (React, Vue, Next.js, Polymarket, Airbnb и т.д.) укажите 'render' или 'use browser' в своей задаче. Для бесконечной прокрутки или контента с ленивой загрузкой скажите 'scroll to bottom'. Для сайтов, защищённых от ботов (Cloudflare), скажите 'stealth mode'. Если вы получаете скудный или пустой контент, повторите попытку и укажите 'render': сайт, скорее всего, требует JavaScript.

Ваш полный набор веб-инструментов: получайте, ищите, делайте скриншоты, извлекайте, отслеживайте и взаимодействуйте с любым сайтом. Автоматически обрабатывает JS-рендеринг, Cloudflare, CAPTCHA и более 55 экстракторов доменов. Экономия токенов 65-98%. Опишите, что вам нужно, простым английским. Примеры: 'read https://stripe.com/pricing', 'screenshot bbc.com on mobile', 'search for best AI frameworks 2024', 'extract product prices from amazon.com/dp/...', 'watch stripe.com/pricing for price changes', 'get YouTube transcript from youtu.be/...'. Для SPA с интенсивным использованием JavaScript (React, Vue, Next.js, Polymarket, Airbnb и т.д.) укажите 'render' или 'use browser' в своей задаче. Для бесконечной прокрутки или контента с ленивой загрузкой скажите 'scroll to bottom'. Для сайтов, защищённых от ботов (Cloudflare), скажите 'stealth mode'. Если вы получаете скудный или пустой контент, повторите попытку и укажите 'render': сайт, скорее всего, требует JavaScript.

Параметры

  • taskstringобязательный

    Plain English description of what you want to do with the web.

  • llmProviderenum

    LLM provider for schema extraction (BYOK). Pass when asking for structured data extraction.

    openaianthropicgoogle
  • llmApiKeystring

    Your LLM API key (BYOK). Pass when asking for structured data extraction with llmProvider.

  • llmModelstring

    LLM model name (optional). Defaults: gpt-4o-mini (OpenAI), claude-haiku-4-5 (Anthropic), gemini-2.0-flash (Google).

  • llmBaseUrlstring

    Custom OpenAI-compatible API base URL. Use for OpenRouter, Glama, or self-hosted models.

webpeel_actвнешний мир

Автоматизирует взаимодействие с любой веб-страницей с помощью настоящего браузера. Нажимает кнопки, заполняет формы, выбирает из выпадающих списков, прокручивает, ждет появления элементов и нажимает клавиши. Возвращает извлечённое содержимое и, опционально, скриншот после завершения всех действий. Используется для: входа на сайты, отправки форм, навигации по многошаговым сценариям, взаимодействия с динамическим контентом, который требует ввода данных. Действия: click, type, fill, scroll, wait, press, hover, select.

Автоматизирует взаимодействие с любой веб-страницей с помощью настоящего браузера. Нажимает кнопки, заполняет формы, выбирает из выпадающих списков, прокручивает, ждет появления элементов и нажимает клавиши. Возвращает извлечённое содержимое и, опционально, скриншот после завершения всех действий. Используется для: входа на сайты, отправки форм, навигации по многошаговым сценариям, взаимодействия с динамическим контентом, который требует ввода данных. Действия: click, type, fill, scroll, wait, press, hover, select.

Параметры

  • urlstringобязательный

    URL to interact with

  • actionsobject[]обязательный

    Actions to perform, e.g. [{type:"click",selector:".btn"}, {type:"type",selector:"#q",value:"hello"}]

  • extract_afterboolean

    Extract content after actions complete

  • screenshot_afterboolean

    Take screenshot after actions complete

webpeel_extractтолько чтениеидемпотентныйвнешний мир

Извлекает структурированные данные JSON из любого URL. Не нужен LLM для встроенных схем. Передайте fields=['price','title','description'], чтобы извлечь конкретные именованные поля. Передайте schema={...} с полной JSON-схемой для произвольного структурированного вывода. Встроенные схемы: product, article, recipe, job, event, contact, business, review, listing. Работает на Amazon, Yelp, LinkedIn, досках вакансий, сайтах электронной коммерции и любых веб-страницах.

Извлекает структурированные данные JSON из любого URL. Не нужен LLM для встроенных схем. Передайте fields=['price','title','description'], чтобы извлечь конкретные именованные поля. Передайте schema={...} с полной JSON-схемой для произвольного структурированного вывода. Встроенные схемы: product, article, recipe, job, event, contact, business, review, listing. Работает на Amazon, Yelp, LinkedIn, досках вакансий, сайтах электронной коммерции и любых веб-страницах.

Параметры

  • urlstringобязательный

    URL to extract from

  • schemaobject

    JSON schema describing desired output structure

  • fieldsstring[]

    Specific fields to extract, e.g. ['price', 'title', 'description']

  • formatenum

    Output format (default: json)

    jsonmarkdown
  • llmProviderenum

    LLM provider for schema extraction (BYOK). Required when using custom schema.

    openaianthropicgoogle
  • llmApiKeystring

    Your LLM API key (BYOK). Required when using custom schema with llmProvider.

  • llmModelstring

    LLM model name (optional). Defaults: gpt-4o-mini (OpenAI), claude-haiku-4-5 (Anthropic), gemini-2.0-flash (Google).

  • llmBaseUrlstring

    Custom OpenAI-compatible API base URL. Use for OpenRouter, Glama, or self-hosted models.

webpeel_findтолько чтениеидемпотентныйвнешний мир

Выполняет поиск в интернете или находит все страницы на сайте. Передайте query= для поиска в интернете и получения ранжированных результатов с заголовками, URL и сниппетами. Передайте url= для сканирования/обхода домена и обнаружения всех его страниц. Используйте depth='deep' для многоисточникового исследования, которое собирает ответы с нескольких страниц. Умный поиск распознаёт намерения для ресторанов, товаров, авиабилетов, отелей и многого другого.

Выполняет поиск в интернете или находит все страницы на сайте. Передайте query= для поиска в интернете и получения ранжированных результатов с заголовками, URL и сниппетами. Передайте url= для сканирования/обхода домена и обнаружения всех его страниц. Используйте depth='deep' для многоисточникового исследования, которое собирает ответы с нескольких страниц. Умный поиск распознаёт намерения для ресторанов, товаров, авиабилетов, отелей и многого другого.

Параметры

  • querystring

    Search query

  • urlstring

    Domain URL to map/discover all pages

  • depthenum

    Search depth: 'quick' = single search, 'deep' = multi-source research

    quickdeep
  • limitnumber

    Max results to return (default: 5)

webpeel_monitorвнешний мир

Отслеживайте изменения содержимого веб-страницы с течением времени. Вызовите один раз, чтобы сделать снимок, вызовите снова, чтобы получить разницу. Используйте selector= для отслеживания конкретного CSS-элемента (например, цены, значка статуса). Используйте webhook= для непрерывного мониторинга с автоматическими уведомлениями при изменении содержимого. Используйте interval=, чтобы задать частоту проверки ('1h', '30m', '1d'). Идеально подходит для: отслеживания цен, изменений в списках вакансий, мониторинга релизов, обновлений конкурентов.

Отслеживайте изменения содержимого веб-страницы с течением времени. Вызовите один раз, чтобы сделать снимок, вызовите снова, чтобы получить разницу. Используйте selector= для отслеживания конкретного CSS-элемента (например, цены, значка статуса). Используйте webhook= для непрерывного мониторинга с автоматическими уведомлениями при изменении содержимого. Используйте interval=, чтобы задать частоту проверки ('1h', '30m', '1d'). Идеально подходит для: отслеживания цен, изменений в списках вакансий, мониторинга релизов, обновлений конкурентов.

Параметры

  • urlstringобязательный

    URL to monitor

  • webhookstring

    Webhook URL to notify when content changes

  • intervalstring

    Check interval, e.g. '1h', '30m', '1d'

  • selectorstring

    CSS selector to monitor a specific part of the page

webpeel_readтолько чтениеидемпотентныйвнешний мир

Загружает любой URL и возвращает чистый Markdown, оптимизированный для LLM. На 65–98% меньше токенов, чем сырой HTML. Автоматически обрабатывает: веб-страницы, расшифровки YouTube (с таймстемпами), PDF, SPA с рендерингом JS, сайты под Cloudflare и более 55 домен-специфичных извлекателей (Amazon, Reddit, GitHub и др.). ВАЖНО: Используйте render=true для любого сайта с большим количеством JavaScript (React, Vue, Angular, Svelte, Next.js, SPA). Известные SPA, требующие render=true: Polymarket, Airbnb, Booking.com, Expedia, Indeed, Zillow, Google и другие. Если контент пустой или скудный, ВСЕГДА повторяйте с render=true, прежде чем делать вывод, что на странице нет содержимого. Используйте actions= для взаимодействия со страницей перед извлечением (скролл, клик, ввод текста, ожидание). Используйте stealth=true для сайтов под Cloudflare или блокирующих ботов (автоматически включает render). Используйте question= для мгновенного вопроса и ответа (LLM не требуется). Используйте summary=true для короткого саммари. Используйте budget=N, чтобы сократить вывод до N токенов.

Загружает любой URL и возвращает чистый Markdown, оптимизированный для LLM. На 65–98% меньше токенов, чем сырой HTML. Автоматически обрабатывает: веб-страницы, расшифровки YouTube (с таймстемпами), PDF, SPA с рендерингом JS, сайты под Cloudflare и более 55 домен-специфичных извлекателей (Amazon, Reddit, GitHub и др.). ВАЖНО: Используйте render=true для любого сайта с большим количеством JavaScript (React, Vue, Angular, Svelte, Next.js, SPA). Известные SPA, требующие render=true: Polymarket, Airbnb, Booking.com, Expedia, Indeed, Zillow, Google и другие. Если контент пустой или скудный, ВСЕГДА повторяйте с render=true, прежде чем делать вывод, что на странице нет содержимого. Используйте actions= для взаимодействия со страницей перед извлечением (скролл, клик, ввод текста, ожидание). Используйте stealth=true для сайтов под Cloudflare или блокирующих ботов (автоматически включает render). Используйте question= для мгновенного вопроса и ответа (LLM не требуется). Используйте summary=true для короткого саммари. Используйте budget=N, чтобы сократить вывод до N токенов.

Параметры

  • urlstringобязательный

    URL to fetch

  • formatenum

    Output format (default: markdown)

    markdowntexthtml
  • renderboolean

    Force browser rendering for JS-heavy sites

  • questionstring

    Ask a question about the page content (BM25, no LLM needed)

  • summaryboolean

    Return a summary instead of full content

  • budgetnumber

    Smart token budget — distill content to N tokens

  • readableboolean

    Reader mode — extract only article content

  • actionsstring[]

    Browser actions to perform before extracting content. Requires render=true (auto-enabled). Each action is a string: "scroll:bottom" (infinite scroll), "wait:2000" (wait 2s), "click:.selector" (click element), "type:#input:text" (type into field), "waitFor:.selector" (wait for element), "hover:.element" (hover), "scroll:down:500" (scroll 500px), "scroll:0,1500" (scroll to coords). Chain multiple actions: ["scroll:bottom", "wait:2000"] to load lazy content.

  • stealthboolean

    Stealth mode for bot-protected sites (Cloudflare, fingerprinting, rate limiting). Use when render=true still returns a challenge page or access denied. Auto-enables render.

webpeel_seeтолько чтениеидемпотентныйвнешний мир

Захватывает снимок экрана любой веб-страницы. Возвращает страницу в виде изображения для визуального просмотра. Поддерживает мобильные, планшетные и настольные области просмотра. Используйте mode='design' для анализа дизайна и предложений на основе ИИ. Используйте mode='compare' с compare_url для визуального сравнения двух страниц. Используйте full_page=true для захвата всей прокручиваемой страницы.

Захватывает снимок экрана любой веб-страницы. Возвращает страницу в виде изображения для визуального просмотра. Поддерживает мобильные, планшетные и настольные области просмотра. Используйте mode='design' для анализа дизайна и предложений на основе ИИ. Используйте mode='compare' с compare_url для визуального сравнения двух страниц. Используйте full_page=true для захвата всей прокручиваемой страницы.

Параметры

  • urlstringобязательный

    URL to screenshot

  • modeenum

    Mode: 'screenshot' (default), 'design' (analysis), 'compare' (visual diff)

    screenshotdesigncompare
  • compare_urlstring

    Second URL to compare against (for mode='compare')

  • viewportany

    Viewport size: 'mobile' | 'tablet' | {width, height}

  • full_pageboolean

    Capture the full scrollable page

Другие проверенные MCP-сервера

weaviate/mcp-server-weaviate

weaviate/mcp-server-weaviate

официальный

Встроенный MCP сервер Weaviate даёт AI-агентам гибридный поиск, управление коллекциями и объектами прямо через REST API. Полезен разработчикам, работающим с векторными базами данных.

162
Aiven-Open/mcp-aiven

Aiven-Open/mcp-aiven

официальный

MCP сервер для облачной платформы Aiven: управляйте PostgreSQL, Apache Kafka, приложениями и другими сервисами прямо из AI-ассистентов. Полезен разработчикам и DevOps для автоматизации облачной инфраструктуры.

TypeScript26
InditexTech/mcp-teams-server

InditexTech/mcp-teams-server

официальный

MCP-сервер для интеграции с Microsoft Teams через Model Context Protocol. Позволяет AI-ассистентам читать и отправлять сообщения, отвечать в ветках с упоминанием участников. Полезен разработчикам и...

Python384
docker/hub-mcp

docker/hub-mcp

официальный

MCP-сервер для Docker Hub: позволяет LLM искать, рекомендовать и управлять контейнерными образами через естественный язык. Упрощает работу с репозиториями, экономя время разработчиков.

TypeScript157
chigwell/telegram-mcp

chigwell/telegram-mcp

Интеграция Telegram с MCP-клиентами через 80+ инструментов: от отправки сообщений до управления группами и файлами. Подходит для автоматизации, анализа чатов и работы с несколькими аккаунтами.

Python1312
apify/actors-mcp-server

apify/actors-mcp-server

официальный

Apify MCP Server подключает AI-агентов к тысячам готовых парсеров и краулеров из Apify Store - от соцсетей до карт и e-commerce. Поддерживает OAuth, x402 и Skyfire для оплаты без API-токена.

TypeScript2042
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин