servo-fetch CLI

servo-fetch рендерит страницы встроенным движком Servo и отдает агенту Markdown, JSON или скриншот без Chromium и ключей.

  • 164 ★ репозитория
  • Последний коммит
  • Apache-2.0
CLI

Расширенный доступ

Почему такой уровень

  • Инструмент исполняет JavaScript чужих страниц и ходит по сети.
  • Установщик выполняется как скрипт из сети.
Все причины и проверки

konippi/servo-fetch

Установка

Работает в

Ручная установка

curl -fsSL https://raw.githubusercontent.com/konippi/servo-fetch/main/install.sh | sh

Установка CLI; есть также `cargo binstall servo-fetch-cli`. MCP запускается командой `servo-fetch mcp`.

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Инструмент исполняет JavaScript чужих страниц и ходит по сети.
  • Установщик выполняется как скрипт из сети.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

CLI `servo-fetch` встраивает браузерный движок Servo. Он выполняет JavaScript, считает раскладку CSS, делает скриншоты программным рендером и вытаскивает чистое содержимое: по позиции убирает навигацию, боковые панели и подвалы, а также баннеры cookie, модальные окна и скрытые блоки. Выход бывает Markdown, JSON по схеме с CSS-селекторами или PNG. Есть параллельная загрузка списка адресов, обход сайта по ширине с учетом robots.txt, карта адресов по sitemap и дерево доступности с ролями и рамками. Команда `servo-fetch mcp` запускает MCP-сервер по stdio, с флагом `--port 8080` он работает по Streamable HTTP. Те же функции доступны как библиотеки на Rust, Python и Node.js.

Для кого. Разработчикам агентов, которым нужен браузерный рендер страниц без Chromium и облачных сервисов.

Подходит, если

  • Агент читает страницу с тяжелым JavaScript и получает чистый Markdown.
  • Нужен скриншот страницы на сервере без видеокарты.
  • Данные со страницы забирают в JSON по схеме CSS-селекторов.
  • Сайт обходят от стартового адреса с уважением к robots.txt.

Не подходит, если

  • Нужны страницы за входом или с защитой от ботов: инструмент для них не предназначен.
  • Требуется полная совместимость с Chromium: Servo поддерживает не все.
  • Нужен только поиск в сети без чтения страниц.

Пример запроса к агенту

Забери страницу https://example.com через servo-fetch в Markdown и сделай полный скриншот в page.png.

Ограничения

Движок Servo поддерживает веб-стандарты не полностью, отдельные сайты рендерятся иначе, чем в Chromium. На Linux без экрана нужны `libegl1`, `libfontconfig1`, `libfreetype6` и запуск через `xvfb-run`. Под Windows `cargo binstall` не копирует библиотеки `libEGL.dll` и `libGLESv2.dll`, берите zip из релизов. Для CLI установка идет скриптом `curl | sh`, читайте его до запуска. Для страниц, которым нужны сложные сценарии входа или расширения, используйте полноценный браузер. Обход сайта ограничен областью одного сайта и частотой запросов, поэтому большие карты сайтов собираются заметно дольше.

Как отключить. Удалите бинарь `servo-fetch` и запись `servo-fetch` из конфигурации MCP клиента; пакеты Python и Node.js снимаются менеджерами пакетов.

Частые вопросы

Нужен ли Chromium?

Нет. Движок Servo встроен в единственный бинарь, ключи и дополнительные программы не требуются.

Как подключить как MCP?

Запустите `servo-fetch mcp` по stdio или `servo-fetch mcp --port 8080` для Streamable HTTP. Список инструментов описан в README пакета CLI.

Как получить скриншот?

Командой `servo-fetch "https://example.com" --format png -o page.png`. Рендер программный, видеокарта не нужна.

Какие языки поддерживаются кроме CLI?

Rust через `cargo add servo-fetch`, Python через `pip install servo-fetch` и Node.js через `npm install servo-fetch`.

Насколько он быстр?

По замерам автора, на статичной странице около 231 мс против 645 мс у оптимизированного Playwright и 51–64 МБ памяти против 300–328 МБ.

Обсуждение

Вопросов и отзывов пока нет.

MCP-сервер, который открывает страницы в безголовом Chromium через Playwright и отдает агенту основной текст в Markdown даже с сайтов на JavaScript

MCP-серверРасширенный доступ1,1 тыс.Звезды репозитория

Плагин сканирует сайты и превращает страницы в Markdown с метаданными: семь скиллов и MCP-сервер с девятью инструментами

ПлагинШирокий доступ196Звезды репозитория

MCP-сервер читает сайты на вашем компьютере и отдает агенту короткий Markdown со ссылками, без лишнего HTML в контексте.

MCP-серверРасширенный доступ163Звезды репозитория
Официальный

Сервер на Rust превращает страницы в Markdown или JSON: поиск, скрейпинг, карта сайта, обход и PDF через MCP, CLI и API, совместимый с Firecrawl

MCP-серверРасширенный доступ1,3 тыс.Звезды репозитория

Свой сервис на Rust для агентов: страницы, PDF и Office в чистый Markdown, API как у Firecrawl и Jina Reader, MCP в комплекте

MCP-серверРасширенный доступ267Звезды репозитория

MCP-сервер с поиском DuckDuckGo и извлечением текста страниц: можно передать сразу несколько адресов

MCP-серверРасширенный доступ151Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
servo-fetch (эта карточка)нет164
mcp-read-website-fastнетне нужна163читает сайты и отдает короткий Markdown; servo-fetch исполняет JavaScript, снимает скриншоты и обходит сайты
Web Content Fetcherнет613скилл с Scrapling и запасным Jina Reader; servo-fetch встраивает собственный движок браузера

Коротко о README

Репозиторий на Rust представляет браузерный движок в одном бинаре с CLI, библиотеками для Rust, Python и Node.js и MCP-сервером. Описаны возможности, замеры скорости и качества извлечения против Playwright и Readability, установка и особенности Linux и Windows.

Бейдж для README

Сообщить о проблеме