css-sota-mcp

Model Context Protocol server

Know what CSS you
can actually ship.

css-sota-mcp is a free, open-source MCP server that tells your coding agent which CSS features are safe to ship. Left alone the agent guesses at browser support from whatever it read in training; this one answers from live Baseline status on webstatus.dev and MDN browser-compat-data, for every property, selector and at-rule.

No key, no account. Read-only, and capped at 120 requests a minute per address — roughly ten times what an agent working through a task actually uses.

audit_css Ready

Six tools, six questions

Each one answers something a developer actually asks mid-task. The agent picks by question, not by guessing at names.

Connect it

Any MCP client that speaks Streamable HTTP. Pick yours.

claude mcp add --scope user --transport http css-sota https://css-sota-mcp.lusrodri.workers.dev/mcp

--scope user registers it once for every project on the machine. Leave it out and the server is added to the current project only. Then ask: “audit src/styles.css for baseline-widely”.

Where the answers come from

Four sources, split by how fast they change. Nothing is inferred, and nothing is remembered from training.

Fetched per request · cached 1 h

webstatus.dev

Baseline status, the browser versions a feature shipped in, Web Platform Tests scores and usage share. Behind search_css_features, whats_new and get_feature, and never more than an hour behind the dashboard.

Compiled into the Worker

browser-compat-data

The CSS slice of MDN's compat dataset, plus the web-features catalog that maps compat keys to Baseline features. Twenty megabytes upstream, reduced at build time to about 1 MB of JSON — 120 KB over the wire — so check_support and audit_css answer with no network call at all.

Loading version info…

Fetched per request · cached 24 h

mdn/content

Reference prose for get_feature, read from the Markdown source. The canonical slug is resolved through MDN first, because compat data records the URL a page had when the entry was written and MDN reorganises.

Compiled into the Worker

UX guidelines

The one source here that is written rather than fetched: 37 principles behind dont_make_me_think, drawn from Nielsen's heuristics, Hick's and Fitts's laws, WCAG 2.2, neurodiversity research and motion practice — each with the rule, why it holds, and what breaking it looks like in markup.

guidelines v1.0.0 · 37 principles · 9 topics

Questions

The ones worth answering before you connect anything.

What is css-sota-mcp?

css-sota-mcp is a free, open-source MCP server that tells an AI coding agent which CSS features are safe to ship. It answers from live Baseline status on webstatus.dev and from MDN browser-compat-data, so the answer reflects the web platform today rather than whenever the model's weights were frozen.

How do I add it to Claude Code?

One command: claude mcp add --scope user --transport http css-sota https://css-sota-mcp.lusrodri.workers.dev/mcp. The --scope user flag registers it once for every project on the machine; without it the server is added to the current project only.

Does it need an API key or an account?

No. The hosted endpoint is public and unauthenticated — every tool is read-only over public datasets, so there is nothing to protect from disclosure. It is capped at 120 requests a minute per client address, about ten times what an agent working through a task actually uses.

What do Baseline widely, newly and limited mean?

Baseline is the web platform's shared vocabulary for interoperability. Widely available means a feature has worked across Chrome, Edge, Firefox and Safari — desktop and mobile — for at least 30 months. Newly available means it is interoperable across all four but became so recently. Limited availability means at least one major engine is still missing it.

Which MCP clients does it work with?

Any client that speaks Streamable HTTP. It is tested against Claude Code, Claude Desktop, the Cloudflare AI Playground and the MCP Inspector — the four in the Connect section above.

How is this different from Can I Use?

Can I Use is a site a human reads, one feature at a time. This is a tool an agent calls mid-task: hand audit_css a whole stylesheet and a target — a Baseline level like baseline-widely, or an explicit browser list like chrome 120, safari 17.4 — and it reports every feature that falls short, with the line number and the minimum version that would work.

How current is the data?

The three webstatus.dev tools fetch per request and cache for an hour, so they are never more than an hour behind the Baseline dashboard. check_support and audit_css read browser-compat-data and web-features compiled into the Worker, regenerated on every build and deploy.

Can I self-host it?

Yes. The whole server is one Cloudflare Worker under the MIT licence and deploys in about a minute. That is the right answer for sustained traffic above the hosted endpoint's rate limit — the repository has the steps.