CSS MCP Server
Universal CSS Analysis and Documentation MCP Server. Analyze any CSS with 150+ metrics for complexity, specificity, and quality.
Features
- CSS Analysis: 150+ metrics for CSS complexity, specificity, and quality
- MDN Documentation: Fetch CSS property docs from MDN Web Docs
- Browser Compatibility: Check cross-browser support for CSS properties
- Project Analysis: Analyze all CSS files in a project
Installation
# Using uv
uv pip install css-mcp
# Using pip
pip install css-mcp
Usage
Start Server
# Via CLI
css-mcp
# Via Python module
python -m css_mcp.server
Environment Variables
| Variable | Default | Description |
|---|---|---|
CSS_MCP_HTTP_PORT |
3050 | Server port |
CSS_MCP_HTTP_HOST |
localhost | Server host |
CSS_MCP_DEBUG |
false | Enable debug mode |
Available Tools
| Tool | Description |
|---|---|
analyze_css |
Full CSS analysis with 150+ metrics |
analyze_css_summary |
Quick CSS summary (faster) |
get_docs |
MDN documentation for CSS properties |
get_browser_compatibility |
Check browser support for properties |
search_properties |
Search for CSS properties |
get_properties_by_category |
Get properties by category |
analyze_project_css |
Analyze all CSS in a project |
list_capabilities |
List available capabilities |
health_check |
Check server health |
Programmatic Usage
Use the analyzer directly in Python for any CSS:
Example: Analyze Any CSS
from css_mcp.analyzer import CSSAnalyzer
# Analyze any CSS content
analyzer = CSSAnalyzer()
metrics = analyzer.analyze(css_content)
# Get complexity score
print(f"Complexity: {metrics.complexity_score}/100")
# Get optimization suggestions
suggestions = analyzer.get_suggestions()
Metrics
The analyzer provides 150+ metrics including:
Basic Metrics
- Total rules, selectors, properties
- File size (bytes, gzipped)
- Lines of code
Selector Metrics
- ID, class, element, universal selectors
- Pseudo-classes and pseudo-elements
- Combinators (descendant, child, sibling)
- Selector depth
Specificity Metrics
- Average, min, max specificity
- High specificity rules
- Specificity distribution
Property Metrics
- Unique properties
- Category distribution (layout, typography, etc.)
- Vendor prefixes
!importantusage- CSS custom properties
Quality Metrics
- Duplicate selectors
- Duplicate properties
- Empty rules
- Complexity score
- Efficiency scores
Browser Compatibility
Built-in compatibility data for common CSS properties across:
- Chrome
- Firefox
- Safari
- Edge
Development
# Install dev dependencies
uv sync --group dev
# Run tests
pytest
# Type check
mypy css_mcp
# Lint
ruff check css_mcp
License
BSD-3-Clause
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
css_mcp-0.3.0.tar.gz
(259.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
css_mcp-0.3.0-py3-none-any.whl
(29.1 kB
view details)
File details
Details for the file css_mcp-0.3.0.tar.gz.
File metadata
- Download URL: css_mcp-0.3.0.tar.gz
- Upload date:
- Size: 259.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ce505d2a4520a0421a9cd1ffac01ea61064fe1a911c86422e373921c3d87997
|
|
| MD5 |
138f06395a303c0f3e77a873548c770a
|
|
| BLAKE2b-256 |
b3c2ae82122f4c65c4afdb6b5e63bbc39aeaa11b327c4bf2caa14442d1e4f003
|
File details
Details for the file css_mcp-0.3.0-py3-none-any.whl.
File metadata
- Download URL: css_mcp-0.3.0-py3-none-any.whl
- Upload date:
- Size: 29.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b393f2252a6169133e647a4de2d7672e22981d8deb20a3f09c853b567e166381
|
|
| MD5 |
6ec797f983103dfe0d5dc21e0878574d
|
|
| BLAKE2b-256 |
f2af591e3d74ccacdf24742e7abf0fe0e8fffa7abd08a149ff4155c719356a66
|