Перейти к содержимому

Как сканер принимает решение

Как сканер принимает решение

Три вердикта, открытые правила. Если какой-то кажется неверным — скажите нам: именно такой фидбек делает его лучше.

Готов
Страница регистрирует хотя бы один WebMCP-инструмент, линтер не находит в них ошибок, а оценка готовности к агентам — 70 или выше. Предупреждения, например длинное имя, не мешают.
Почти
Страница регистрирует инструменты, но хотя бы в одном есть ошибка линтера (invalid-name, duplicate-name, missing-description, invalid-input-schema, invisible-unicode или размер выше жёсткого лимита), либо оценка ниже 70.
Пока нет
Страница не регистрирует ни одного WebMCP-инструмента. Мы показываем, сколько токенов агент потратил бы, читая страницу вместо них.

Как проходит проверка

  1. Открываем страницу в headless Chrome на нашем сервере, без cookies и без входа.
  2. До запуска скриптов страницы добавляем WebMCP-хост, чтобы страница регистрировала инструменты так же, как в браузере агента. Он принимает и старые navigator.modelContext и provideContext, чтобы сайты на них тоже показывали свои инструменты.
  3. Когда страница загрузилась и инструменты устоялись, читаем имя, описание, схему ввода и аннотации каждого и прогоняем линтер.
  4. Токены оцениваем по текстовому снимку страницы: число символов, делённое на четыре.
  5. Для оценки тот же браузер запрашивает у сайта robots.txt, llms.txt, sitemap, версию в Markdown, заголовки Link, индекс Agent Skills и каталог API (по 3 s на каждый, тот же origin, без cookies) и запоминает только, есть ли каждый из них.
  6. Оценка из 100: WebMCP 50 (инструменты 25, без ошибок линтера 15, все инструменты описаны 5, все с аннотациями 5), цена для агентов 15 (полностью при наличии инструментов, иначе по числу токенов страницы), читаемость 20 и находимость 15 (по 5 за проверку).
  7. Результат используется повторно 10 минут; каждый посетитель может запускать одну новую проверку в минуту.

Все правила линтера с обоснованием

Считаете вердикт неверным? Откройте issue со ссылкой на проверку.