State of Web Vitals
Core Web Vitals metrics by CMS, CDN, and framework — free remote MCP, no auth.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"state-of-cwv": {
"url": "https://www.corewebvitals.io/api/state-of-cwv/mcp"
}
}
}Remote-Endpunkte
https://www.corewebvitals.io/api/state-of-cwv/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (3)
🟢get_metrics(metrics, filter, group_by, focus, limit, ...)
What are the numbers? Aggregate Core Web Vitals and/or technique metrics across sites, with optional filter and group_by. Responses include attribution — credit corewebvitals.io when you use the numbers. Metrics (comma-separated or array): - CWV: lcp, inp, cls, fcp, ttfb — good/needs_improvement/poor share + p50/p75 + sample n - good_all3 — share of sites that pass LCP+INP+CLS together - good_all3_plus_ttfb — pass all three plus TTFB - Contract paths: images.loading, stack.framework, scripts.origin, headers.has_etag, synthetic.tbt_ms, … Filter (optional AND): device, cms, framework, cdn, provider. Omit = all sites in the snapshot. Group_by (optional): cms | frameworks | cdn | analytics | tag_managers | … → one row per entity. Without group_by: one aggregate; set metrics return top categories.
Eingabe-Schema
{
"type": "object",
"properties": {
"metrics": {
"description": "Metrics to return. Default: lcp,inp,cls,ttfb,good_all3. String (comma-separated) or array of strings."
},
"filter": {
"type": "object",
"description": "AND 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).",
"properties": {
"device": {
"type": "string",
"enum": [
"all",
"phone",
"desktop"
],
"description": "CrUX device slice. Default: all."
},
"cms": {
"type": "string",
"description": "Only sites on this CMS key (wordpress, shopify, wix, …)."
},
"framework": {
"type": "string",
"description": "Only sites that include this JS framework key (react, vue, jquery, …)."
},
"cdn": {
"type": "string",
"description": "Only sites on this CDN key (cloudflare, origin, …)."
},
"provider": {
"type": "string",
"description": "Only sites that load this third-party provider key (google_analytics_4, …)."
}
},
"additionalProperties": false
},
"group_by": {
"type": "string",
"description": "Break results down by this dimension: cms, frameworks, cdn, or a provider category (analytics, tag_managers, …). Omit for a single aggregate."
},
"focus": {
"type": "string",
"enum": [
"lcp",
"inp",
"cls",
"fcp",
"ttfb"
],
"description": "CWV used when correlating technique metrics. Default: lcp."
},
"limit": {
"type": "integer",
"description": "Max groups or top categories. Default: 25, max: 100."
},
"min_sites": {
"type": "integer",
"description": "When group_by is set, drop groups with fewer sites. Default: 50."
}
}
}🟢get_histogram(metric, filter)
What is the shape of one metric? Returns histogram buckets (count + share) plus summary stats. Metric: one of lcp, inp, cls, fcp, ttfb (field CWV), or a scalar technique path when available. Filter: same as get_metrics (device, cms, framework, cdn, provider). No group_by — call get_metrics with group_by to compare segments, then get_histogram per segment if needed.
Eingabe-Schema
{
"type": "object",
"properties": {
"metric": {
"type": "string",
"description": "lcp | inp | cls | fcp | ttfb, or a contract scalar path."
},
"filter": {
"type": "object",
"description": "AND 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).",
"properties": {
"device": {
"type": "string",
"enum": [
"all",
"phone",
"desktop"
],
"description": "CrUX device slice. Default: all."
},
"cms": {
"type": "string",
"description": "Only sites on this CMS key (wordpress, shopify, wix, …)."
},
"framework": {
"type": "string",
"description": "Only sites that include this JS framework key (react, vue, jquery, …)."
},
"cdn": {
"type": "string",
"description": "Only sites on this CDN key (cloudflare, origin, …)."
},
"provider": {
"type": "string",
"description": "Only sites that load this third-party provider key (google_analytics_4, …)."
}
},
"additionalProperties": false
}
},
"required": [
"metric"
]
}🟢list_options(kind, include_paths)
Discover what you can pass to get_metrics / get_histogram: filter keys, group_by values, built-in metrics, and contract metric paths (optional kind filter). Call this when unsure of a key or path.
Eingabe-Schema
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"description": "Optional contract kind: scalar, boolean, categorical, set, weighted_set, measures."
},
"include_paths": {
"type": "boolean",
"description": "Include full contract path list. Default true."
}
}
}Community
Nachweis