mcp-google-crux
v1.1.0
Published
MCP server for the Chrome UX Report (CrUX) API — real-user Core Web Vitals (LCP, INP, CLS, TTFB) and 40-week history for any origin or URL. For Claude, Cursor, Codex and other AI clients.
Maintainers
Readme
Google CrUX MCP
English | Русский
A1 Google CrUX MCP приносит данные Core Web Vitals от реальных пользователей в AI-приложение. Проверяйте, проходит ли публичный сайт или страница LCP, INP и CLS, сравнивайте мобильные устройства с десктопами и смотрите изменения метрик во времени.
Сервер читает набор данных Chrome UX Report от Google — полевые данные пользователей Chrome, а не синтетический speed test и не способ изменить сайт.
- 6 инструментов только для чтения. Оценка Core Web Vitals, сравнение устройств, origin и страницы, тренд за 40 недель, latest и historical raw records.
- Данные реальных пользователей. Это те же полевые данные CrUX, которые используют PageSpeed Insights и сигналы Google Core Web Vitals.
- Понятная граница доступности. Данные есть только для публичных origin и URL с достаточным трафиком;
no_data— нормальный результат. - Известная стоимость квоты. CrUX разрешает 150 запросов в минуту на проект. Сравнение устройств делает четыре API-вызова, origin и страницы — два.
Начните с запроса, который только читает данные:
Проходит ли
https://example.comCore Web Vitals на мобильных устройствах?
Подключить сервер · Посмотреть сценарии · Открыть техническую документацию
Увидеть работу за минуту
Вы: Проходит ли
https://example.com/pricingCore Web Vitals на мобильных устройствах?Ассистент: Показывает p75 LCP, INP и CLS, оценки good/needs-improvement/poor и общий результат. Ничего не меняется.
Вы: Сравни эту страницу со средним по сайту и покажи разницу между мобильными устройствами и десктопом.
Ассистент: Сравнивает origin и URL, затем группы устройств и их доли трафика. Все шесть инструментов только читают публичный набор данных CrUX.
Содержание
- Быстрый старт
- Что можно поручить
- Как читать данные CrUX
- Как получить доступ
- Конфигурация
- Данные, лимиты и работа в фоне
- Техническая документация
- Поддержка
Быстрый старт
Нужны Node.js 20+ и API-ключ Google Cloud с включённым Chrome UX Report API.
- Создайте ограниченный API-ключ.
- Добавьте сервер в AI-приложение.
- Отправьте запрос, который только читает данные.
В Settings → Plugins → MCP servers выберите Add server, затем добавьте npx -y mcp-google-crux@latest с CRUX_API_KEY.
codex mcp add google-crux --env CRUX_API_KEY=your_key -- npx -y mcp-google-crux@latest
codex mcp listclaude mcp add --env CRUX_API_KEY=your_key --transport stdio --scope user google-crux -- npx -y mcp-google-crux@latest
claude mcp listОткройте Settings → Developer → Edit Config и добавьте {"mcpServers":{"google-crux":{"command":"npx","args":["-y","mcp-google-crux@latest"],"env":{"CRUX_API_KEY":"your_key"}}}}.
Если Edit Config недоступна, отредактируйте ~/Library/Application Support/Claude/claude_desktop_config.json на macOS или %APPDATA%\Claude\claude_desktop_config.json на Windows. Документация Claude Desktop MCP
Добавьте {"mcpServers":{"google-crux":{"type":"stdio","command":"npx","args":["-y","mcp-google-crux@latest"],"env":{"CRUX_API_KEY":"your_key"}}}} в ~/.cursor/mcp.json на macOS/Linux или %USERPROFILE%\.cursor\mcp.json на Windows. Документация Cursor MCP
Запустите MCP: Open User Configuration и добавьте:
{"servers":{"google-crux":{"type":"stdio","command":"npx","args":["-y","mcp-google-crux@latest"],"env":{"CRUX_API_KEY":"${input:crux_api_key}"}}},"inputs":[{"type":"promptString","id":"crux_api_key","description":"API-ключ Google Cloud","password":true}]}Проверьте сервер командой MCP: List Servers. Документация VS Code MCP
Что можно поручить
- Проходит ли этот public origin или URL Core Web Vitals?
- Сравни результаты для телефона, десктопа, планшета и всех устройств.
- Эта страница быстрее или медленнее среднего по сайту?
- Как менялись LCP, INP и CLS в последние 25 недель?
- Покажи raw histograms и percentiles CrUX для технической проверки.
Как читать данные CrUX
CrUX показывает скользящее окно 28 дней, которое обновляется ежедневно. Исторические данные недельные и обновляются по понедельникам. Ключевое значение — p75: 75% визитов не превышают его. get_core_web_vitals сам интерпретирует пороги метрик; raw-инструменты показывают полные гистограммы и доли.
Отсутствие данных не означает, что сайт сломан. Это значит, что у Google нет достаточно большой выборки публичных пользователей Chrome для этого origin, URL или группы устройств. Для планшетов и отдельных URL no_data встречается часто.
Как получить доступ
- В Google Cloud Console создайте или выберите проект; для CrUX не нужен billing account.
- Включите Chrome UX Report API.
- Создайте API-ключ в APIs & Services → Credentials.
- Ограничьте ключ только Chrome UX Report API и передайте его как
CRUX_API_KEY.
Ключ хранится в конфигурации MCP-клиента и передаётся в URL запроса API, поэтому относитесь к нему как к паролю.
Конфигурация
| Переменная | Обязательна | Описание |
|---|---|---|
| CRUX_API_KEY | Да | Ключ Google Cloud с включённым Chrome UX Report API. |
| CRUX_API_BASE | Нет | Переопределяет базовый URL API. |
| CRUX_TIMEOUT_MS | Нет | Тайм-аут запроса; по умолчанию 30000 мс. |
| CRUX_MAX_RETRIES | Нет | Повторы 429, 5xx и сетевых ошибок; по умолчанию 3. |
Данные, лимиты и работа в фоне
- Публичный набор данных только для чтения. Сервер не меняет сайты, Search Console, записи CrUX или позиции Google.
- Повторы с учётом квоты. Он повторяет
429, 5xx и сетевые ошибки с задержкой. Учитывайте составные сравнения при планировании 150 запросов в минуту на проект. - Постоянного наблюдения нет. Сервер работает только при вызове. Если AI-приложение поддерживает задания по расписанию, оно может создавать регулярный отчёт о производительности.
- Анонимная телеметрия. Отправляются данные установки и версий, а также имена инструментов, но не API-ключ, URL, результаты, аргументы или промпты. Чтобы отключить её, задайте
ASKADS_TELEMETRY=0.
Техническая документация
- Каталог MCP-возможностей — страницы по пользовательским задачам для каждого инструмента.
- Все инструменты и параметры
- Документация по разработке
- Документация по публикации
- Документация CrUX API
Поддержка
Нашли ошибку или не хватает сценария? Создайте issue или напишите в Telegram.
