HTML to Markdown MCP Server

HTML to Markdown MCP Server

sunshad0wMIT
5 звёзд
MCP-сервер для преобразования веб-страниц из HTML в чистый Markdown. Он удаляет лишние элементы — скрипты, стили, навигацию и подвалы — и оставляет только смысловой контент: текст, заголовки, таблицы, изображения и ссылки. Размер выходного файла сокращается на 90–95%, что экономит токены при передаче контекста AI-ассистенту. Сервер пригодится разработчикам и DevOps-инженерам, которые загружают веб-документацию, статьи или условия задач в AI-ассистенты. Встроенный браузер Playwright загружает одностраничные приложения на React, Vue и Angular, а также страницы, защищённые авторизацией. Достаточно передать профиль браузера с куками.

Характеристики

Общее

  • СтатусСообщество
  • Разработчикsunshad0w
  • ЛицензияMIT

Технологии

  • Языки
    Python
  • Транспорт
    stdio

Описание

Возможности

  • Конвертация HTML-страниц по URL в Markdown с сохранением структуры.
  • Сжатие исходного кода на 90–95%: сервер удаляет скрипты, стили, меню и подвалы.
  • Сохранение таблиц, изображений, ссылок и заголовков в Markdown-формате.
  • Настройка фильтрации: можно отключить изображения, ссылки или таблицы по запросу.
  • Потоковая обработка с ограничением размера загрузки (от 1 до 50 МБ).
  • Кеширование результатов повторных запросов для ускорения работы.
  • Режим браузера Playwright: поддержка Chrome, Firefox и WebKit для сайтов на JavaScript.
  • Использование профиля браузера с куками для доступа к страницам за авторизацией.
  • Настраиваемая стратегия ожидания для корректной загрузки динамического контента.
  • Настройка лимита размера загружаемой страницы (от 1 до 50 МБ).

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

Самый простой способ — использовать Docker. Скачайте репозиторий и соберите образ:

docker build -t html2md .

Если вы предпочитаете установку без Docker, клонируйте репозиторий и установите зависимости через uv или pip:

pip install -e . (или uv pip install -e .)

После установки Playwright выполните playwright install chromium для браузерного режима.

Добавьте сервер в конфигурацию Claude Desktop. Пример для Docker:

{ "mcpServers": { "html2md": { "command": "docker", "args": ["run", "-i", "--rm", "html2md"] } } }

Сохраните файл claude_desktop_config.json и перезапустите Claude Desktop.

Примеры запросов

  • «Сконвертируй страницу https://example.com/article в Markdown. Сохрани все таблицы и изображения».
  • «Извлеки содержимое документации React на https://react.dev, используй браузерный режим. Мне нужны разделы «Hooks» и «API Reference».
  • «Прочитай эту статью на Хабре, отфильтруй изображения и оставь только текст и заголовки».
  • «Открой страницу из внутреннего Confluence, используй мой профиль Chrome для авторизации, и выведи краткое содержание».

Технические детали

  • Язык: Python (trafilatura, BeautifulSoup4)
  • Транспорт: stdio
  • Лицензия: MIT
  • Совместимость: Claude Desktop, Continue, Cline и другие MCP-клиенты

Поделиться