Skip to main content

Обзор

MCP-сервер Web2MD предоставляет Web2MD в виде набора инструментов, которые AI-ассистенты могут вызывать напрямую, используя Model Context Protocol (MCP) — открытый стандарт для подключения AI-моделей к внешним инструментам и источникам данных. После настройки вы можете попросить Claude, Cursor или Windsurf конвертировать страницы, искать и синхронизировать вашу Library, выполнять batch-конвертацию через расширение Chrome или подключить сохранённый Skill — не покидая диалог.
Для работы MCP-сервера требуется API-ключ Web2MD (тариф PRO). Сгенерируйте его в дашборде или выполните npx web2md-cli login, чтобы авторизоваться один раз и автоматически передать ключ CLI (см. Аутентификацию ниже).

Доступные инструменты

MCP-сервер предоставляет 11 инструментов, сгруппированных по назначению:

convert_url

Получает URL на стороне сервера и возвращает содержимое страницы в виде Markdown с заголовком, количеством слов и временем чтения. Поддерживает те же опции конвертации, что и REST API (includeImages, includeLinks). Пример запроса: “Конвертируй этот URL в markdown: https://docs.example.com/getting-started

bridge_convert_url

Конвертирует URL, получая его HTML через запущенное расширение Chrome (по локальному HTTP-мосту), а затем конвертируя этот HTML в Markdown на стороне сервера. Используйте для страниц, к которым сервер не может обратиться напрямую — Reddit, сайты за логином или страницы с активным JS-рендерингом. Требует открытого Chrome с установленным расширением Web2MD; ID расширения определяется автоматически по вашему API-ключу. Пример запроса: “Используй bridge, чтобы конвертировать этот тред на Reddit: https://reddit.com/r/…“

agent_convert

Конвертирует URL так же, как bridge_convert_url — через ваше расширение Chrome — но по каналу Agent Bridge через native messaging вместо HTTP. Принимает необязательный параметр skill: передайте id или имя Skill, и его содержимое будет добавлено к возвращённому Markdown, чтобы агент мог сразу его применить. Требует запущенного Chrome с установленным расширением и native host. Пример запроса: “Конвертируй эту страницу с применением skill summarize: https://…“

agent_batch_convert

Тот же транспорт, что и у agent_convert, но принимает массив из до 50 URL и конвертирует их последовательно за один вызов. Лучше всего подходит для получения множества тредов Reddit или страниц с JS-рендерингом за один раз. Пример запроса: “Batch-конвертируй эти 12 URL в Markdown: […]“

search_library

Ищет по вашей Library Web2MD — по всем сохранённым страницам — по ключевому слову (проверяется заголовок и полное содержимое страницы) и/или тегу, от новых к старым. Возвращает компактные метаданные (id, title, url, date, tags), а не полный Markdown. Аккаунты на бесплатном тарифе видят в результатах только самые последние элементы; инструмент сообщает, если результаты были усечены. Пример запроса: “Найди в моей библиотеке всё об аутентификации”

get_library_items

Получает полное содержимое Markdown для элементов Library по id (до 20 за вызов — сначала используйте search_library, чтобы найти id). Ответы могут быть большими; для длинных страниц запрашивайте не более 5 id за раз. Пример запроса: “Получи полное содержимое элементов библиотеки abc123 и def456”

sync_library

Синхронизирует всю вашу Library с локальной директорией в виде Markdown-файлов, организованных по тегам с frontmatter. По умолчанию инкрементальная (отслеживает курсор в <dir>/.web2md-sync.json); передайте full: true, чтобы пересканировать всё заново. Это та же синхронизация, что запускает web2md sync из CLI — используйте тот интерфейс, который подходит вашему workflow. Пример запроса: “Синхронизируй мою библиотеку в ~/notes/web2md, только тег ‘research‘“

list_skills

Выводит список Skills, сохранённых в вашем облачном аккаунте Web2MD, в виде компактного массива (id, name, description). Используйте get_skill, чтобы получить один Skill полностью. Пример запроса: “Какие skills у меня сохранены?“

get_skill

Получает полное содержимое одного Skill в стиле SKILL.md по id или имени — его инструкции, описание и содержимое целиком. Сначала используйте list_skills, если не знаете id. Пример запроса: “Получи мой skill ‘summarize‘“

semantic_search / get_conversion (устарели)

Эти два инструмента появились раньше Library. Они всё ещё работают, но видят только преобразования, сохранённые через старый history API, а не всю Library — новым интеграциям следует использовать search_library и get_library_items.

Аутентификация

Сервер определяет API-ключ в следующем порядке:
  1. Переменная окружения WEB2MD_API_KEY, если она задана.
  2. Иначе — ~/.web2md/config.json, тот же файл, который создаёт npx web2md-cli login (device-login flow CLI). Выполните login один раз, и и CLI, и MCP-сервер автоматически подхватят ключ — блок env не нужен.
Если ключ не найден ни там, ни там, сервер запустится, но каждый вызов инструмента будет возвращать ошибку аутентификации с подсказкой задать ключ или выполнить login.

Настройка

Откройте файл конфигурации Claude Desktop:
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
Добавьте запись web2md в секцию mcpServers:
Если вы уже выполнили npx web2md-cli login, блок env можно полностью убрать — сервер прочитает ключ из ~/.web2md/config.json.Перезапустите Claude Desktop. В списке инструментов должны появиться инструменты Web2MD.

Примеры использования

После запуска MCP-сервера вы можете использовать естественный язык в вашем AI-ассистенте:
Вы: Конвертируй этот URL в markdown: https://react.dev/learn/thinking-in-reactАссистент: (вызывает convert_url) Вот конвертированный Markdown для “Thinking in React”…
Вы: Найди в моей библиотеке всё об аутентификации, затем получи полное содержимое самого последнего элементаАссистент: (вызывает search_library, затем get_library_items) Я нашёл 3 элемента, связанных с аутентификацией. Вот полное содержимое самого последнего — “OAuth 2.0 Guide”…
Вы: Синхронизируй мою библиотеку в ~/notes/web2mdАссистент: (вызывает sync_library) Синхронизировано 42 новых элемента, 118 уже актуальны, 0 ошибок.
Вы: Batch-конвертируй эти 8 тредов Reddit: […]Ассистент: (вызывает agent_batch_convert) Успешно конвертировано 8/8 URL.
Вы: Какие у меня есть skills, и можешь применить “summarize” к этой странице: https://…Ассистент: (вызывает list_skills, затем agent_convert с skill: "summarize") Вот страница, конвертированная в Markdown, с применённым ниже skill summarize…
Комбинируйте инструменты в рамках одного диалога. Например: “Найди в моей библиотеке документацию по React, затем получи полное содержимое самого последнего элемента”.

Устранение неполадок

Убедитесь, что вы перезапустили приложение после редактирования файла конфигурации. Проверьте, что npx -y web2md-mcp-server успешно запускается в вашем терминале.
Убедитесь, что WEB2MD_API_KEY — это корректный ключ w2m_, или что он есть в ~/.web2md/config.json (если не уверены, повторно выполните npx web2md-cli login). Проверить ключ можно на странице API-ключей.
Эти инструменты требуют открытого Chrome с установленным расширением Web2MD, а для инструментов agent_* — ещё и установленного native host. См. Agent Bridge для настройки.
Попробуйте сначала установить пакет глобально: npm install -g web2md-mcp-server, затем измените command на web2md-mcp-server и уберите поле args.