Перейти к содержанию

BLOG / sku-md-v0-10-webmcp-product-knowledge-and-page-actions.mdx

SKU.md v0.10 × WebMCP: знания о товаре до визита и структурированные действия на странице

Как SKU.md v0.10 даёт агентам долговечные и проверяемые знания до визита, а WebMCP открывает текущие видимые пользователю действия после загрузки страницы.

Опубликовано

Исходная версия спецификации: v0.10

Покупатель просит агента найти тихий очиститель воздуха, подходящий для детской комнаты, со сменным фильтром и производительностью для определённой площади. До открытия магазина агенту нужен надёжный способ отличить факты о товаре от лозунгов: понять, какие модель и Variant подходят, что означает измерение шума, какое доказательство подтверждает утверждение и какое ограничение следует упомянуть. После открытия товарной страницы задача меняется. Покупатель может выбрать размер фильтра, сравнить видимые характеристики или попросить страницу добавить определённый Variant в Cart. Сначала требуется долговечное понимание товара, затем — безопасное взаимодействие с текущей страницей.

SKU.md v0.10 и WebMCP соединяются в этой точке передачи, но не становятся одним и тем же. SKU.md — публикуемый продавцом слой товарных знаний и доказательств. WebMCP — браузерный API страницы, предоставляющий действия с уже открытой перед пользователем страницы. Надёжный агент применяет первый слой, чтобы сформировать намерение на основе доказательств, второй — чтобы выполнить ограниченное действие, видимое пользователю, а затем возвращается к коммерческим системам реального времени за любым решением, значение которого может измениться.

Покупка начинается до появления вкладки

Первый вопрос редко звучит как «какую кнопку нажать?». Покупатель может спросить, совместим ли товар с уже имеющимся устройством, подтверждено ли заявление о материале конкретным испытанием или относится ли предупреждение о безопасности детей к выбранной конфигурации. На такие вопросы следует отвечать до открытия вкладки, сохраняя источник, область применимости и дату проверки. Старый ценник или устаревшая фраза о наличии не должны незаметно получать полномочия текущего предложения лишь потому, что находились рядом с полезным описанием.

Это задача SKU.md v0.10. Он связывает стабильные идентификаторы Product, Variant, SKU и GTIN с проверенными продавцом фактами, утверждениями, раскрытиями, рекомендациями по совместимости, исходными материалами и временем проверки. Файл полезен, когда агент планирует визит, сравнивает товары с требованиями покупателя, готовит объяснение с цитатами или проверяет точную модель. Это не исполняемый сеанс, не ответ об актуальном наличии и не инструкция о покупке.

WebMCP вступает в работу позже. В обзоре WebMCP Chrome прямо указано практическое ограничение: нужен контекст страницы браузера, а страница уже должна быть открыта. Такой контекст может предоставить локальный или удалённый сеанс браузера, но WebMCP не является серверным API, офлайн-вызовом или механизмом обнаружения до посещения. WebMCP также не служит серверным транспортом MCP или статическим списком инструментов и не обеспечивает обнаружение между сайтами. Он позволяет активной странице открыть действия, имеющие смысл в её текущем состоянии интерфейса.

Это различие предотвращает удобный на вид, но небезопасный обход. Агент не может прочитать объявление возможности в SKU.md, выдумать вызов инструмента и управлять сайтом, который пользователь не открывал. Продавцу также не следует помещать сегодняшние названия кнопок и выходную схему в долговечный товарный документ. Между чтением документа и посещением страницы пользователь может сменить язык, войти в аккаунт, выбрать Variant, очистить корзину или потерять разрешение. Какие действия доступны сейчас, знает работающая страница, а не документ.

Что WebMCP открывает, а что нет

Черновик WebMCP Community Group определяет инструменты JavaScript, предоставляемые веб-приложениями агентам. Императивный API регистрирует инструмент через document.modelContext.registerTool(): страница задаёт имя, описание, входную схему, обработчик выполнения и необязательные аннотации. Подход уместен для действий с логикой приложения, проверкой состояния, навигацией или тщательно структурированным результатом.

Декларативный API дополняет обычную HTML-форму. Атрибут toolname называет действие, а tooldescription объясняет назначение. При вызове браузер фокусирует видимую форму и заполняет поля, поэтому пользователь видит, что произойдёт. Удаление любого атрибута отменяет регистрацию. Это полезно для ограниченного запроса поддержки товара или бронирования ресторана, но не означает, что автономный браузер вправе завершить любое коммерческое обязательство без проверки.

Chrome DevTools for agents связан с этим только как средство отладки. Документация по настройке описывает сервер MCP, соединяющий агента с Chrome для проверки и тестирования. Это отдельный мост отладки MCP, а не конечная точка WebMCP продавца или альтернативный протокол обнаружения товаров. Он помогает команде инспектировать регистрации, вызывать инструмент в разработке и проверять структурированный результат, но не превращает инструменты страницы в серверный или офлайн торговый API.

Официальные демонстрации делают границу наглядной. Демонстрация Smart Home регистрирует rearrangeDOMComponents, который меняет видимость компонентов имитационной панели, но не управляет реальными устройствами. Демонстрация French Bistro показывает декларативную видимую форму запроса бронирования с датой, временем, числом гостей, выбором места и особыми пожеланиями; при отсутствии нативной поддержки страница использует полифил. Они показывают, что сложное взаимодействие можно сопоставить структурированному намерению, но не доказывают универсальное обнаружение, выполнение между сайтами, надёжное исполнение, разрешение платежа или завершённую коммерческую операцию. Демонстрации не являются реальными транзакциями.

Чёткая матрица ответственности

Следующее разделение сделано намеренно. Оно не позволяет одному удобному слою отвечать на вопросы, в которых полномочия принадлежат другому.

Поверхность Область полномочий Что должен делать агент
SKU.md Доказательства знаний: проверенные факты, утверждения, раскрытия, сведения о совместимости, происхождение и стабильные идентификаторы. Объяснить и процитировать; определить точные Product, Variant, SKU и GTIN.
WebMCP и видимый UI Текущие инструменты страницы и видимое пользователю состояние взаимодействия. После открытия страницы обнаружить зарегистрированный инструмент и выполнить ограниченное действие.
Catalog реального времени и серверная система продавца Текущие цена, наличие, право на покупку, варианты доставки, налоговые данные и правила аккаунта. Повторно запросить, а не доверять статическому снимку.
Checkout Итоговая цена, доставка, налог, разрешение платежа, согласие и подтверждение покупки. Показать итоговое состояние и сохранить границу подтверждения.

Фраза с источником в SKU.md может описывать рекомендованную производителем цену как исторический или проверенный факт, но не становится текущей ценой. То же относится к наличию, срокам доставки, промоакциям и налогам. Они могут дать контекст, но являются актуальными коммерческими фактами только тогда, когда их возвращает текущий Catalog, серверная система или Checkout.

Что именно объявляет v0.10

SKU.md v0.10 уже имеет узкий способ сообщить, что посещение может открыть возможность страницы. Запись capabilities[] может использовать protocol: webmcp, указывать page_runtime, ограничивать возможность через области действия и page_url_patterns, требовать requires_user_presence: true. Это подсказка о доступе: она сообщает потребителю, что после открытия подходящего URL продавец может открыть соответствующую возможность времени выполнения страницы.

Это намеренно не копия динамического интерфейса. Имена инструментов, входная и выходная схемы, описания инструментов и состояние регистрации принадлежат активной среде выполнения страницы и не копируются в SKU.md. JSON Schema версии v0.10 задаёт границу машинно-читаемого документа; англоязычная спецификация v0.10 остаётся единственным нормативным текстом. Сведения времени выполнения остаются вне SKU.md, поэтому устаревший документ не может выдать себя за текущий контракт инструмента. page_url_patterns следует считать навигационной подсказкой, а не разрешением вызвать неопубликованную операцию или обещанием, что каждая указанная страница сейчас регистрирует инструмент.

Разделение практично так же, как принципиально. До выбора Variant товарная страница может зарегистрировать один инструмент сравнения только для чтения, после допустимого выбора заменить его инструментом настройки, а при изменении корзины снять регистрацию действия. Текущий набор инструментов способен учитывать вход в аккаунт, язык интерфейса, наличие, доступность и согласие. Статический документ не может делать это безопасно.

Полный путь агента

Агент может пройти следующие шаги, не выдумывая полномочий.

  1. Прочитать SKU.md, доказательства, раскрытия и область действия.
  2. Определить точные Product, Variant, SKU и GTIN; при неоднозначной идентичности спросить, а не угадывать.
  3. В присутствии пользователя открыть страницу продавца, соответствующую безопасному шаблону URL страницы.
  4. Обнаружить инструменты, которые фактически зарегистрировала активная страница.
  5. Выбрать один инструмент, описание которого соответствует запрошенному действию, и выполнить его в видимом интерфейсе.
  6. Вернуться к Catalog реального времени или серверной системе продавца за текущим коммерческим состоянием.
  7. Использовать Checkout для итоговой суммы, налогов, доставки, разрешения платежа и финального подтверждения пользователя.

Эти шаги намеренно не сведены к одному инструменту «купить». Инструмент может выбрать известный Variant, объяснить видимое сравнение, начать запрос бронирования или открыть корзину. Для окончательной покупки нужны актуальный расчёт цены и подтверждение, значимое в момент обязательства. Мы не рекомендуем toolautosubmit для окончательной покупки. Форма в декларативном API может поддерживать автоматическую отправку, но это поведение браузера, а не основание пропустить серверные проверки или окончательное решение покупателя.

Практика продавца, сохраняющая границу

Во-первых, публикуйте проверенные человеком факты и доказательства. Стабильные идентификаторы важны, потому что хорошее объяснение нельзя безопасно применять к похожей модели или произвольному варианту цвета и размера. Указывайте источник и ограничения для каждого существенного утверждения; сохраняйте раскрытия, а не просите агента вывести их из рекламного текста. Если факт изменился, проверяйте и обновляйте документ, оставляя состояние реального времени системам, которые им владеют.

Во-вторых, давайте каждому инструменту страницы одну ответственность. «Выбрать определённый Variant» и «показать объяснение совместимости» понятны. «Найти, настроить, дать скидку, оплатить и заказать» скрывает слишком много обязательств в одном вызове. Регистрируйте инструмент, только пока он действителен в видимом состоянии, и снимайте регистрацию при изменении состояния. Метаданные инструмента тоже являются недоверенными входными данными: краткие и точные описания и схемы уменьшают неоднозначность, но не устраняют инъекции промптов и риски реализации.

Наконец, считайте readOnlyHint и untrustedContentHint подсказками, а не гарантией безопасности. Метка «только для чтения» не доказывает отсутствие изменений в реализации, а маркер недоверенного содержимого не очищает выходные данные. Сохраняйте серверную проверку, авторизацию, обработку идемпотентности, защиту от мошенничества, журналы аудита и явное подтверждение операций высокого риска. Страница должна честно описывать эффекты, а серверная система — независимо обеспечивать соблюдение бизнес-правил.

Оценивайте дополнение, а не заявление о рейтинге

Полезно сравнивать только WebMCP и WebMCP+SKU.md в одних и тех же ограниченных сценариях покупки. Измеряйте, сопоставил ли агент нужные Product и Variant, процитировал ли правильный источник, раскрыл ли ограничения и доказательства, выбрал ли подходящий текущий инструмент страницы, отклонил ли просроченный расчёт цены и сохранил ли границу подтверждения. Это наблюдаемые результаты, проверяемые на тестовых данных, контролируемых страницах и зафиксированных результатах проверки человеком.

Не превращайте оценку в заявление о ранжировании, коэффициенте конверсии или принятии. WebMCP может упростить работу с уже открытым интерфейсом. SKU.md может сделать понимание товара до визита более долговечным и проверяемым. Ни один слой не гарантирует покупку, а вместе они не заменяют Catalog реального времени, серверную систему продавца или Checkout. Практическое обещание уже и надёжнее: понять, какой товар имеет в виду покупатель, до визита, затем действовать с текущим состоянием, которое он видит после открытия страницы.

Сведения о доступности реализации и регистрации проверяйте в WebMCP Origin Trial Chrome на момент развёртывания: диапазон испытания и поведение браузера могут измениться.

Дополнительные материалы

Полная последовательность проверок перед действием описана в карте торговых полномочий.