Chrome UX Report
liveTechnologyDeveloperReal-user Core Web Vitals for any website with enough traffic, from Google's Chrome UX Report — the field measurements Google Search itself uses.
Tools
crux_query_originReal-user Core Web Vitals for an entire website, from Google's Chrome UX Report — the 75th-percentile Largest Contentful Paint, Interaction to Next Paint and Cumulative Layout Shift that actual Chrome
No parameters required.
Try it
crux_query_urlReal-user Core Web Vitals for ONE specific page, from Google's Chrome UX Report — the 75th-percentile LCP, INP and CLS measured on actual Chrome visits to that exact URL over the trailing 28 days. Use
No parameters required.
Try it
crux_historyHow a site's or page's real-user Core Web Vitals have moved over roughly the last 40 weeks, from Google's Chrome UX Report history API. Returns a weekly series of 75th-percentile LCP, INP and CLS with
No parameters required.
Try it
Test with curl
The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.
curl -X POST https://gateway.pipeworx.io/chrome-ux-report/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'curl -X POST https://gateway.pipeworx.io/chrome-ux-report/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"crux_query_origin","arguments":{}}}'Use with the SDK
Install @pipeworx/sdk to call tools from any TypeScript/Node project.
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("crux_query_origin", {});// Or ask in plain English:
const answer = await px.ask("real-user core web vitals for any website with enough traffic, from google's chrome ux report — the field measurements google search itself uses");