servo-fetch CLI
servo-fetch рендерит страницы встроенным движком Servo и отдает агенту Markdown, JSON или скриншот без Chromium и ключей.
- 164 ★ репозитория
- Последний коммит
- Apache-2.0
Расширенный доступ
Почему такой уровень
- Инструмент исполняет JavaScript чужих страниц и ходит по сети.
- Установщик выполняется как скрипт из сети.
Установка
- Работает в
Ручная установка
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 МБ.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыMCP-сервер, который открывает страницы в безголовом Chromium через Playwright и отдает агенту основной текст в Markdown даже с сайтов на JavaScript
Плагин сканирует сайты и превращает страницы в Markdown с метаданными: семь скиллов и MCP-сервер с девятью инструментами
MCP-сервер читает сайты на вашем компьютере и отдает агенту короткий Markdown со ссылками, без лишнего HTML в контексте.
Сервер на Rust превращает страницы в Markdown или JSON: поиск, скрейпинг, карта сайта, обход и PDF через MCP, CLI и API, совместимый с Firecrawl
Свой сервис на Rust для агентов: страницы, PDF и Office в чистый Markdown, API как у Firecrawl и Jina Reader, MCP в комплекте
MCP-сервер с поиском DuckDuckGo и извлечением текста страниц: можно передать сразу несколько адресов
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| 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.