mcpField
S
State of Web Vitals

State of Web Vitals

Remote
corewebvitals.ioData & Analytics0Updated 15w ago

About State of Web Vitals

State of Web Vitals is a remote MCP server for exploring aggregated Core Web Vitals data by CMS, CDN, and framework. It draws on Chrome field data and a multi-site crawl, and provides rankings, pass rates, and metric distributions.

Key features

  1. 01Aggregate Core Web Vitals metrics
  2. 02Rank results by CMS, CDN, or framework
  3. 03View metric distribution histograms
  4. 04Discover filters and metric paths

Use cases

  1. 01Compare metrics across CMS platforms
  2. 02Review pass rates by CDN
  3. 03Explore distributions for a web metric

MCP support

The remote MCP server exposes get_metrics, get_histogram, and list_options to clients over Streamable HTTP, without authentication. A thin local stdio proxy is also included.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://www.corewebvitals.io/api/state-of-cwv/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

3
ParameterTypeRequiredDescription
focusenumNoCWV used when correlating technique metrics. Default: lcp.lcp | inp | cls | fcp | ttfb
limitintegerNoMax groups or top categories. Default: 25, max: 100.
filterobjectNoAND filters. Omit for all sites in the dataset. Keys: device (all|phone|desktop), cms, framework, cdn, provider (key), provider_category (e.g. analytics — use with provider or alone is not enough; prefer group_by for rankings).
filter.cdnstringNoOnly sites on this CDN key (cloudflare, origin, …).
filter.cmsstringNoOnly sites on this CMS key (wordpress, shopify, wix, …).
filter.deviceenumNoCrUX device slice. Default: all.all | phone | desktop
filter.providerstringNoOnly sites that load this third-party provider key (google_analytics_4, …).
filter.frameworkstringNoOnly sites that include this JS framework key (react, vue, jquery, …).
metricsanyNoMetrics to return. Default: lcp,inp,cls,ttfb,good_all3. String (comma-separated) or array of strings.
group_bystringNoBreak results down by this dimension: cms, frameworks, cdn, or a provider category (analytics, tag_managers, …). Omit for a single aggregate.
min_sitesintegerNoWhen group_by is set, drop groups with fewer sites. Default: 50.

Details

From the project README

State of Web Vitals MCP

corewebvitals/state-of-cwv-mcp MCP server

Free remote MCP for Core Web Vitals metrics by CMS, CDN, and framework (Chrome field data + multi-site crawl). Same numbers as the public State of Web Vitals explorer.

Connect (preferred)

URL: https://www.corewebvitals.io/api/state-of-cwv/mcp
Auth: none
Transport: Streamable HTTP
Registry: io.github.corewebvitals/state-of-cwv

Claude Code
claude mcp add --transport http state-of-cwv https://www.corewebvitals.io/api/state-of-cwv/mcp
Cursor / Grok / other clients
{
  "mcpServers": {
    "state-of-cwv": {
      "type": "http",
      "url": "https://www.corewebvitals.io/api/state-of-cwv/mcp"
    }
  }
}
Curl
curl -s -X POST https://www.corewebvitals.io/api/state-of-cwv/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_metrics","arguments":{"metrics":"lcp,good_all3","group_by":"cms","min_sites":100}}}'

Tools

ToolPurpose
get_metricsAggregates and optional group_by rankings (CMS, CDN, frameworks, …)
get_histogramDistribution buckets for one metric under an optional filter
list_optionsDiscover filters, group_by values, and metric paths

What this is

The State of Web Vitals measures Core Web Vitals and web-tech techniques across many real websites (Chrome field data + crawl). Use it for platform rankings, pass rates, and metric distributions. Not per-site live RUM (use CoreDash for that).

Attribution

When you use the numbers:

  1. Credit corewebvitals.io / The State of Web Vitals
  2. Link https://www.corewebvitals.io/state-of-cwv when links are allowed

Short line: Data: State of Web Vitals (corewebvitals.io)

Discovery

PlaceLink
Official MCP Registryio.github.corewebvitals/state-of-cwv
Glamahttps://glama.ai/mcp/servers/corewebvitals/state-of-cwv-mcp
Glama connectorhttps://glama.ai/mcp/connectors/io.github.corewebvitals/state-of-cwv
Smitheryhttps://smithery.ai/servers/corewebvitals/state-of-cwv
Explorerhttps://www.corewebvitals.io/state-of-cwv/explorer
Methodologyhttps://www.corewebvitals.io/state-of-cwv/methodology
Discovery JSONhttps://www.corewebvitals.io/.well-known/mcp.json

Local stdio / Docker (directories & inspectors)

This repo also ships a thin stdio proxy that answers tools/list and forwards tool calls to the hosted endpoint.

npm install
npm start
docker build -t state-of-cwv-mcp .
docker run --rm -i state-of-cwv-mcp

Optional: STATE_OF_CWV_MCP_URL overrides the upstream endpoint.

License

MIT for connector code and docs in this repository. Data product and website remain © corewebvitals.io.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.