Woove MCP Инструменты MCP

Инструменты MCP

Справочник: 20 инструментов, что принимают и что возвращают

Обновлено 29 сентября 2026 г. MCP 6 мин чтения

Список собирается из кода сервера, поэтому совпадает с тем, что отдаёт tools/list. Звёздочкой отмечены обязательные параметры.

ИнструментЧто делаетПараметры
whoamiПроверка связи: почта аккаунта, чей ключ пришёл, сколько у него сайтов, открыт ли конструктор Woove Site.—
list_sitesСайты аккаунта: номер, название, число страниц, адрес опубликованного сайта.—
list_pagesСтраницы сайта с блоками: номер, название, адрес, опубликована ли, список блоков (номер, название, тип). Шапка и подвал — тоже здесь (kind header/footer).site_id* — Номер сайта из list_sites
get_pageОдна страница: настройки и блоки по порядку с их содержимым (Zero-блоки — текстом на Zero-языке, секции — полями).page_id* — Номер страницы
get_blockБлок по номеру: Zero-блок — текст на Zero-языке (его можно править и отдать в update_zero_block), секция — раскладка и поля.block_id* — Номер блока
zero_referenceСправочник Zero-языка: как записать блок текстом (элементы, колонки, экраны, цвета, кнопки, формы). Прочитайте перед create_zero_block.—
create_zero_blockСоздать блок Woove Zero из текста на Zero-языке. Если указана страница — блок встанет на неё (position — номер места с нуля, по умолчанию в конец). Возвращает номер блока, что не разобралось построчно и адрес предпросмотра страницы.site_id* — Номер сайта; text* — Блок на Zero-языке; name — Название блока в кабинете; page_id — Страница, куда поставить блок; position — Место на странице, с нуля
update_zero_blockЗаменить содержимое Zero-блока текстом на Zero-языке (сначала get_block, поправьте текст, отдайте целиком).block_id* — Номер блока; text* — Новый текст блока на Zero-языке; name — Новое название, если нужно
neiro_zero_blockСобрать или переделать Zero-блок с помощью Woove Neiro: описание словами и/или макет (картинка по ссылке или base64, PDF). Тратит правки Neiro по тарифу. Без block_id создаёт новый блок (и ставит на страницу, если дана), с block_id — переделывает существующий.site_id* — Номер сайта; prompt — Что собрать или поменять, по-русски; block_id — Существующий блок, который переделать; page_id — Страница для нового блока; position — Место на странице, с нуля; image_url — Ссылка на макет: PNG, JPG, WebP, GIF или PDF; image_base64 — Макет в base64 (до 6 МБ); media_type — Тип для image_base64: image/png, image/jpeg, application/pdf; model — sonnet (по умолчанию) или opus
page_from_mockupСобрать целую страницу по макету (PNG, JPG или многостраничный PDF по ссылке или base64): Neiro режет макет на блоки и собирает каждый в Woove Zero, страница создаётся с этими блоками. Тратит правки Neiro. Возвращает номер страницы и блоки.site_id* — Номер сайта; name — Название новой страницы; path — Адрес страницы, например /uslugi (по умолчанию из названия); prompt — Пожелания: что важно сохранить, какие тексты; image_url — Ссылка на макет; image_base64 — Макет в base64 (до 6 МБ); media_type — Тип для image_base64; model — sonnet (по умолчанию) или opus
list_libraryГотовые секции Woove Blocks (шапки, обложки, преимущества, цены, отзывы, формы, магазин…): номер, категория, название, о чём. Фильтр по слову.query — Слово для поиска: отзывы, цены, форма, шапка; limit — Сколько вернуть, по умолчанию 40
add_library_sectionПоставить готовую секцию из библиотеки на страницу. Секция копируется в сайт со своими текстами — потом их можно править через get_block/update_section_fields.site_id* — Номер сайта; page_id* — Страница; library_id* — Номер секции из list_library; position — Место на странице, с нуля
update_section_fieldsПоменять поля секции из библиотеки: content — объект полей (заголовок, тексты, списки), vars — варианты вида. Что за поля у секции, видно в get_block. Свои галочки под формой: content.form.checks (у онлайн-записи и магазина content.checks, у подписки в подвале content.subChecks) = { own: true, list: { text: "Я принимаю [оферту", required: true }] }, до 20 галочек, текст до 500 знаков, ссылки текст; без own форма берёт галочки сайта.block_id* — Номер блока-секции; content — Поля: только те, что меняете; vars — Варианты вида: только те, что меняете
check_contrastКонтраст пары цветов по WCAG 2.x: отношение, проходит ли для обычного текста (4,5 : 1) и крупного (3 : 1 от 24 px или от 18,66 px жирным), ближайший читаемый цвет того же оттенка. Цвета: #hex, rgb(), hsl(), имена; с site_id понимает токены сайта var(--c-ink), var(--c-mute) и другие.fg* — Цвет текста: #777777, rgba(0,0,0,.6), var(--c-mute); bg* — Цвет фона; font_size — Кегль в px, по умолчанию 16; bold — Жирный, от 700; site_id — Сайт, чьи токены палитры var(--c-…) подставить
check_readabilityЧитаемость сайта или страницы, как раздел «Читаемость» в «Проверке сайта»: пары цветов палитры и тексты, которые не читаются на своём фоне (страница, блок, фрагмент, контраст, сколько нужно, какой цвет поставить). Текст на фото отмечен photo: true — его контраст не посчитать.site_id — Номер сайта: весь сайт; page_id — Страница: только она, её шапка и подвал
fix_readabilityПоправить нечитаемые тексты: у текстов, кнопок и полей формы ставит ближайший читаемый цвет того же оттенка, у секции со своим фоном меняет тон фона. Текст на фото не трогает. Область: block_id, page_id (с шапкой и подвалом) или site_id; palette: true правит и палитру сайта. Перед правкой страницы получают снимок в истории.block_id — Один блок; page_id — Все блоки страницы, её шапка и подвал; site_id — Все блоки на страницах сайта; palette — Поправить и палитру сайта (цвета, на которые ссылаются секции)
set_page_blocksЗадать порядок блоков страницы списком номеров (убрать блок — не включать его в список; блок останется в сайте).page_id* — Страница; block_ids* — Номера блоков по порядку
create_pageНовая пустая страница сайта.site_id* — Номер сайта; name* — Название; path — Адрес, например /o-nas (по умолчанию из названия)
publish_pageОпубликовать страницу (или отправить правки на сайт, если она уже опубликована). Возвращает адрес, по которому её видят посетители.page_id* — Страница
site_urlАдреса сайта: на хостинге Woove (<имя>.site.woove.ru) и на своём домене, если подключён.site_id* — Номер сайта

Ресурсы

  • woove://zero-language — Zero-язык: Как описать блок Woove Zero текстом
  • woove://library — Библиотека Woove Blocks: Готовые секции: номера, категории, названия

Порядок работы

  1. whoami — убедиться, что ключ принят
  2. list_sites → list_pages — найти сайт и страницу
  3. zero_reference — прочитать Zero-язык, если будете писать блоки
  4. create_zero_block или add_library_section — добавить блок
  5. set_page_blocks — расставить порядок
  6. check_readability — убедиться, что тексты читаются
  7. publish_page — показать посетителям

Читаемость

Инструменты, которые создают или меняют блоки, возвращают поле readability, если текст где-то не читается на своём фоне. Это create_zero_block, update_zero_block, add_library_section и другие правки блоков. Нет поля — всё читается.

Каждое место описано так: блок, номера элементов по порядку строк Zero-текста, фрагмент текста, цвета fg и bg, контраст ratio, сколько нужно need и предложенный цвет suggest. Обычному тексту нужно 4,5 : 1, крупному от 24 px или от 18,66 px жирным хватит 3 : 1.

json
{"block_id": 5281, "what": "Текст", "text": ["Скидка до пятницы"], "fg": "#b0b0b0", "bg": "#f5f5f3",
 "ratio": 1.99, "need": 4.5, "elements": [3], "suggest": "#707070",
 "fix": "Поставьте цвет #707070: в Zero-языке цвет пишется в строке элемента после текста"}
  • check_contrast — контраст пары цветов; с site_id понимает токены палитры var(--c-ink) и другие
  • check_readability — пары палитры и нечитаемые тексты сайта или страницы, как в «Проверке сайта»
  • fix_readability — ближайший читаемый цвет того же оттенка для блока, страницы или сайта; текст на фото (photo: true) не трогает
Контраст текста на фото не посчитать. Такое место приходит с photo: true и худшим случаем worst_ratio: под текст нужна тёмная подложка или затемнение фото.
Помогла статья?