Skip to main content
Glama

Fetch MCP

by jae-jae

Сборщик MCP

MCP-сервер для загрузки содержимого веб-страниц с помощью браузера Playwright headless.

Преимущества

  • Поддержка JavaScript : в отличие от традиционных веб-скрейперов, Fetcher MCP использует Playwright для выполнения JavaScript, что позволяет обрабатывать динамический веб-контент и современные веб-приложения.
  • Интеллектуальное извлечение контента : встроенный алгоритм читабельности автоматически извлекает основной контент с веб-страниц, удаляя рекламу, навигацию и другие несущественные элементы.
  • Гибкий формат вывода : поддерживает форматы вывода HTML и Markdown, что упрощает интеграцию с различными нисходящими приложениями.
  • Параллельная обработка : инструмент fetch_urls обеспечивает одновременную загрузку нескольких URL-адресов, что значительно повышает эффективность пакетных операций.
  • Оптимизация ресурсов : автоматически блокирует ненужные ресурсы (изображения, таблицы стилей, шрифты, мультимедиа) для снижения использования полосы пропускания и повышения производительности.
  • Надежная обработка ошибок : комплексная обработка ошибок и ведение журнала обеспечивают надежную работу даже при работе с проблемными веб-страницами.
  • Настраиваемые параметры : детальный контроль тайм-аутов, извлечения контента и форматирования вывода для различных вариантов использования.

Быстрый старт

Запустить напрямую с помощью npx:

npx -y fetcher-mcp

Первоначальная настройка — установите нужный браузер, выполнив следующую команду в терминале:

npx playwright install chromium

HTTP и SSE транспорт

Используйте параметр --transport=http для одновременного запуска служб конечной точки потокового HTTP и конечной точки SSE:

npx -y fetcher-mcp --log --transport=http --host=0.0.0.0 --port=3000

После запуска сервер предоставляет следующие конечные точки:

  • /mcp — потоковая конечная точка HTTP (современный протокол MCP)
  • /sse — конечная точка SSE (устаревший протокол MCP)

Клиенты могут выбрать способ подключения в зависимости от своих потребностей.

Режим отладки

Запустите с параметром --debug , чтобы отобразить окно браузера для отладки:

npx -y fetcher-mcp --debug

Конфигурация МКП

Настройте этот MCP-сервер в Claude Desktop:

На MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json

В Windows: %APPDATA%/Claude/claude_desktop_config.json

{ "mcpServers": { "fetcher": { "command": "npx", "args": ["-y", "fetcher-mcp"] } } }

Развертывание Docker

Работа с Docker

docker run -p 3000:3000 ghcr.io/jae-jae/fetcher-mcp:latest

Развертывание с помощью Docker Compose

Создайте файл docker-compose.yml :

version: "3.8" services: fetcher-mcp: image: ghcr.io/jae-jae/fetcher-mcp:latest container_name: fetcher-mcp restart: unless-stopped ports: - "3000:3000" environment: - NODE_ENV=production # Using host network mode on Linux hosts can improve browser access efficiency # network_mode: "host" volumes: # For Playwright, may need to share certain system paths - /tmp:/tmp # Health check healthcheck: test: ["CMD", "wget", "--spider", "-q", "http://localhost:3000"] interval: 30s timeout: 10s retries: 3

Затем выполните:

docker-compose up -d

Функции

  • fetch_url — Извлечение содержимого веб-страницы с указанного URL-адреса
    • Использует браузер Playwright headless для анализа JavaScript
    • Поддерживает интеллектуальное извлечение основного контента и преобразование в Markdown
    • Поддерживает следующие параметры:
      • url : URL-адрес веб-страницы для загрузки (обязательный параметр)
      • timeout : время ожидания загрузки страницы в миллисекундах, по умолчанию 30000 (30 секунд)
      • waitUntil : указывает, когда навигация считается завершенной, параметры: «load», «domcontentloaded», «networkidle», «commit», по умолчанию «load»
      • extractContent : следует ли интеллектуально извлекать основное содержимое, по умолчанию true
      • maxLength : максимальная длина возвращаемого содержимого (в символах), по умолчанию ограничений нет.
      • returnHtml : Возвращать ли HTML-контент вместо Markdown, по умолчанию false
      • waitForNavigation : следует ли ждать дополнительной навигации после первоначальной загрузки страницы (полезно для сайтов с проверкой на наличие ботов), по умолчанию — false
      • navigationTimeout : максимальное время ожидания дополнительной навигации в миллисекундах, по умолчанию 10000 (10 секунд)
      • disableMedia : Отключать ли медиаресурсы (изображения, таблицы стилей, шрифты, медиа), по умолчанию true
      • debug : Включать ли режим отладки (отображение окна браузера), переопределяет флаг командной строки --debug, если он указан
  • fetch_urls — пакетное извлечение содержимого веб-страницы из нескольких URL-адресов параллельно
    • Использует параллельную выборку из нескольких вкладок для повышения производительности
    • Возвращает объединенные результаты с четким р��зделением веб-страниц
    • Поддерживает следующие параметры:
      • urls : Массив URL-адресов для извлечения (обязательный параметр)
      • Остальные параметры такие же, как у fetch_url

Советы

Обработка особых сценариев веб-сайта

Работа с механизмами противодействия обходу
  • Дождитесь полной загрузки : для веб-сайтов, использующих CAPTCHA, перенаправления или другие механизмы проверки, включите в запрос:
    Please wait for the page to fully load
    При этом будет использоваться параметр waitForNavigation: true .
  • Увеличьте длительность тайм-аута : для веб-сайтов, которые загружаются медленно:
    Please set the page loading timeout to 60 seconds
    Это соответствующим образом настраивает параметры timeout и navigationTimeout .
Корректировки поиска контента
  • Сохранение исходной структуры HTML : когда извлечение контента может завершиться неудачей:
    Please preserve the original HTML content
    Устанавливает extractContent: false и returnHtml: true .
  • Извлечь полное содержимое страницы : если извлеченное содержимое слишком ограничено:
    Please fetch the complete webpage content instead of just the main content
    Устанавливает extractContent: false .
  • Вернуть содержимое как HTML : когда требуется формат HTML вместо Markdown по умолчанию:
    Please return the content in HTML format
    Устанавливает returnHtml: true .

Отладка и аутентификация

Включение режима отладки
  • Активация динамической отладки : для отображения окна браузера во время определенной операции выборки:
    Please enable debug mode for this fetch operation
    Это устанавливает debug: true даже если сервер был запущен без флага --debug .
  • Ручной вход : Чтобы войти, используя свои учетные данные:
    Please run in debug mode so I can manually log in to the website
    Устанавливает debug: true или использует флаг --debug , оставляя окно браузера открытым для ручного входа.
  • Взаимодействие с отладочным браузером : Когда включен режим отладки:
    1. Окно браузера остается открытым
    2. Вы можете вручную войти на сайт, используя свои учетные данные.
    3. После завершения входа в систему содержимое будет извлечено с помощью вашего аутентифицированного сеанса.
  • Включить отладку для определенных запросов : даже если сервер уже запущен, вы можете включить режим отладки для определенного запроса:
    Please enable debug mode for this authentication step
    Устанавливает debug: true только для этого конкретного запроса, открывая окно браузера для ручного входа.

Разработка

Установить зависимости

npm install

Установить браузер Playwright

Установите браузеры, необходимые для Playwright:

npm run install-browser

Построить сервер

npm run build

Отладка

Используйте MCP Inspector для отладки:

npm run inspector

Вы также можете включить видимый режим браузера для отладки:

node build/index.js --debug

Связанные проекты

  • g-search-mcp : Мощный сервер MCP для поиска Google, который позволяет выполнять параллельный поиск по нескольким ключевым словам одновременно. Идеально подходит для пакетных операций поиска и сбора данных.

Лицензия

Лицензировано в соответствии с лицензией MIT

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

local-only server

The server can only run on the client's local machine because it depends on local resources.

MCP-сервер, который извлекает содержимое веб-страниц с помощью браузера Playwright Headless, способного извлекать основное содержимое и конвертировать его в формат Markdown.

  1. Преимущества
    1. Быстрый старт
      1. HTTP и SSE транспорт
      2. Режим отладки
    2. Конфигурация МКП
      1. Развертывание Docker
        1. Работа с Docker
        2. Развертывание с помощью Docker Compose
      2. Функции
        1. Советы
          1. Обработка особых сценариев веб-сайта
          2. Отладка и аутентификация
        2. Разработка
          1. Установить зависимости
          2. Установить браузер Playwright
          3. Построить сервер
        3. Отладка
          1. Связанные проекты
            1. Лицензия

              Related MCP Servers

              • A
                security
                A
                license
                A
                quality
                A powerful MCP server for fetching and transforming web content into various formats (HTML, JSON, Markdown, Plain Text) with ease.
                Last updated -
                4
                146
                12
                TypeScript
                MIT License
                • Apple
                • Linux
              • A
                security
                A
                license
                A
                quality
                An MCP server for fetching and transforming web content into various formats.
                Last updated -
                4
                4
                Python
                MIT License
                • Apple
              • -
                security
                A
                license
                -
                quality
                A MCP server that provides browser automation tools, allowing users to navigate websites, take screenshots, click elements, fill forms, and execute JavaScript through Playwright.
                Last updated -
                Python
                Apache 2.0
                • Apple
              • -
                security
                F
                license
                -
                quality
                An MCP server that extracts meaningful content from websites and converts HTML to high-quality Markdown, using Mozilla's Readability engine.
                Last updated -
                11,993
                2
                JavaScript

              View all related MCP servers

              MCP directory API

              We provide all the information about MCP servers via our MCP API.

              curl -X GET 'https://glama.ai/api/mcp/v1/servers/jae-jae/fetcher-mcp'

              If you have feedback or need assistance with the MCP directory API, please join our Discord server