Skip to main content
Glama

Audit CSS against browser targets

audit_css
Read-only

Scan CSS source and report every feature in it that does not meet a browser support target. Targets are either a Baseline level ("baseline-widely", "baseline-newly") or an explicit browser list ("chrome 120, safari 17.4, firefox 128"). Reports the offending line, what is wrong (unsupported, too old, prefix-only, partial), and the minimum version that would work. Browserslist queries like "last 2 versions" are not supported. IMPORTANT when reading Baseline-level results: Baseline describes a whole feature, and a feature can be "Limited" because one part of it is not interoperable while the exact declaration you wrote works everywhere. "Cursor styles" is Limited, so cursor: pointer is reported — yet it only lacks iOS Safari, where a cursor is meaningless rather than broken. Each finding therefore also names the browsers missing that specific key, or says that the key ships everywhere and the status comes from elsewhere in the feature. Read that line before removing anything: a key that ships everywhere is still not proof the code works, since it may be inert without the parts that do not.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sourceYesThe CSS source to audit. Malformed CSS is tolerated and scanned best-effort.
targetNoSupport target. Either a Baseline level ("baseline-widely", "baseline-newly") or a comma-separated browser list ("chrome 120, safari 17.4, firefox 128"). Known browsers: chrome, chrome_android, edge, firefox, firefox_android, safari, safari_ios, opera, opera_android, samsunginternet_android, webview_android, ie.baseline-widely
include_passingNoAlso list the features that meet the target, not just the ones that fail.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
targetYes
failingYes
unknownYes
findingsYes
featuresCheckedYes

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already mark this as read-only, and the description adds substantial behavioral detail: it reports the offending line, error type, and minimum working version. It also warns about the Baseline 'Limited' nuance and instructs the agent to read the browsers-missing line before removing anything, which is critical for correct use.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but front-loaded with the core action, then progresses through target syntax, output details, and a crucial interpretation warning. Each sentence contributes necessary context, though it could be tightened.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a rich description, good schema coverage, and an output schema present, the tool is fully specified for an agent to invoke it correctly. It even includes a subtle caveat about interpreting Baseline 'Limited' status that could otherwise lead to false confidence.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All parameters already have schema descriptions (100% coverage), so the baseline is 3. The description adds value by explaining the exact target syntax and clarifying that malformed CSS is tolerated for the source parameter, which goes beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Scan CSS source and report every feature...' which clearly identifies a verb, resource, and output. It distinguishes from sibling tools by focusing on auditing an entire CSS source against browser targets rather than querying individual features.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly states accepted target formats and calls out that Browserslist queries are not supported. However, it does not name alternative tools for when a user might prefer checking a single feature, so it falls short of full when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.4/5.0
Disambiguation4/5

Most tools have clearly distinct purposes: audit_css checks a stylesheet, check_support looks up browser versions for a specific feature, search_css_features finds features by keyword, and whats_new lists recent Baseline crossings. However, check_support and get_feature both provide browser support info, and get_feature also includes shipped versions, which could cause an agent to pick the wrong one for a quick lookup.

Naming Consistency4/5

All tool names use lowercase snake_case, which is consistent. Most follow a verb_noun pattern (audit_css, check_support, get_feature, search_css_features), but 'dont_make_me_think' is an idiomatic phrase and 'whats_new' is a question-like phrase, breaking the strict verb_noun consistency.

Tool Count5/5

With 6 tools, the server is well-scoped for its purpose of providing CSS support and Baseline information. Each tool covers a distinct aspect (auditing, lookup, search, news, deep-dive, and UX review), and none feels redundant or missing within the stated domain.

Completeness5/5

The tool set provides a complete workflow: audit a stylesheet, check specific support, search for features, get detailed feature info, and see what's new. There are no obvious gaps for a CSS support and Baseline status server, and the additional UI/UX review tool expands coverage without creating dead ends.