loading…
Search for a command to run...
loading…
MCP Server for accessing W3C/WHATWG/IETF web specifications. Provides AI assistants with access to official web standards data including specifications, WebIDL
MCP Server for accessing W3C/WHATWG/IETF web specifications. Provides AI assistants with access to official web standards data including specifications, WebIDL definitions, CSS properties, and HTML elements.
npm version License: MIT Node.js MCP Built with Claude Code
MCP Server for accessing W3C/WHATWG/IETF web specifications. Provides AI assistants with access to official web standards data including specifications, WebIDL definitions, CSS properties, and HTML elements.
npm install -g @shuji-bonji/w3c-mcp
Or use directly with npx:
npx @shuji-bonji/w3c-mcp
Add to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"w3c": {
"command": "npx",
"args": ["-y", "@shuji-bonji/w3c-mcp"]
}
}
}
Add the server using the claude mcp CLI:
claude mcp add w3c -- npx -y @shuji-bonji/w3c-mcp
Or edit ~/.claude.json / project-level .mcp.json manually with the same mcpServers block shown above.
Add to your Cursor MCP settings (.cursor/mcp.json in your project or global settings):
{
"mcpServers": {
"w3c": {
"command": "npx",
"args": ["-y", "@shuji-bonji/w3c-mcp"]
}
}
}
list_w3c_specsList W3C/WHATWG/IETF web specifications with optional filtering.
Parameters:
organization (optional): Filter by organization - "W3C", "WHATWG", "IETF", or "all"keyword (optional): Filter by keyword in title or shortnamecategory (optional): Filter by categorylimit (optional): Maximum number of results (default: 50)get_w3c_specGet detailed information about a specific web specification.
Parameters:
shortname (required): Specification shortname (e.g., "service-workers", "appmanifest", "fetch")search_w3c_specsSearch web specifications by query string.
Parameters:
query (required): Search query (e.g., "service worker", "manifest", "storage")limit (optional): Maximum number of results (default: 20)get_webidlGet WebIDL interface definitions for a specification. WebIDL defines the JavaScript APIs.
Parameters:
shortname (required): Specification shortname (e.g., "service-workers", "fetch", "dom")list_webidl_specsList all specifications that have WebIDL definitions available.
get_css_propertiesGet CSS property definitions from a specific spec or all specs.
Parameters:
spec (optional): Specification shortname (e.g., "css-grid-1", "css-flexbox-1")property (optional): Search for a specific CSS property by namelist_css_specsList all CSS specifications that have property definitions available.
get_html_elementsGet HTML element definitions from a specific spec or all specs.
Parameters:
spec (optional): Specification shortname (e.g., "html", "svg")element (optional): Search for a specific element by name (e.g., "video", "canvas")list_element_specsList all specifications that have HTML element definitions available.
get_pwa_specsGet all Progressive Web App (PWA) related specifications.
Parameters:
coreOnly (optional): If true, return only the core PWA specs (Service Worker, Manifest, Push, Notifications)get_spec_dependenciesGet basic information for a specification.
Note: Dependency data (
dependencies/dependents) is not yet exposed by the upstream web-specs package, so these fields currently return empty arrays. Only the base spec metadata is reliable for now.
Parameters:
shortname (required): Specification shortnameUse the get_webidl tool with shortname "service-workers" to see the ServiceWorker interface definitions.
Use get_pwa_specs to see all PWA-related specifications, then use get_w3c_spec for details on each one.
Use get_css_properties with spec "css-grid-1" to see all CSS Grid layout properties.
Use search_w3c_specs with query "storage" to find all storage-related specifications.
This MCP server uses the following W3C/webref data packages:
| Package | Description |
|---|---|
| web-specs | Metadata for all web specifications |
| @webref/idl | WebIDL interface definitions |
| @webref/css | CSS properties and values |
| @webref/elements | HTML element definitions |
These packages are maintained by the W3C and provide machine-readable data extracted from official specifications.
GitHub Repositories:
Enable debug logging with environment variables:
# Enable debug logging
W3C_MCP_DEBUG=true npx @shuji-bonji/w3c-mcp
# Enable performance logging only
W3C_MCP_PERF=true npx @shuji-bonji/w3c-mcp
Debug output includes:
src/
├── index.ts # MCP server entry point
├── constants/
│ └── index.ts # Centralized configuration constants
├── data/
│ └── loader.ts # Data loading with caching
├── tools/ # Tool implementations
│ ├── list-specs.ts
│ ├── get-spec.ts
│ ├── search-specs.ts
│ ├── get-webidl.ts
│ ├── get-css.ts
│ ├── get-elements.ts
│ └── get-pwa-specs.ts
├── schemas/
│ └── index.ts # Zod validation schemas
├── errors/
│ └── index.ts # Custom error classes
├── utils/
│ ├── logger.ts # Debug logging utilities
│ ├── mapper.ts # Spec data mapping utilities
│ ├── search.ts # Generic search utilities
│ └── suggestions.ts # Suggestion generation utilities
└── types/
└── index.ts # TypeScript type definitions
tests/
├── setup.ts # Test setup
├── data/ # Data loader tests
├── tools/ # Tool tests
└── integration/ # MCP server integration tests
# Clone the repository
git clone https://github.com/shuji-bonji/w3c-mcp.git
cd w3c-mcp
# Install dependencies
npm install
# Build
npm run build
# Run in development mode
npm run dev
# Run with debug logging
W3C_MCP_DEBUG=true npm start
# Run tests
npm test
# Run tests with coverage
npm run test:coverage
# Lint code
npm run lint
# Format code
npm run format
# Lint + format (auto-fix)
npm run check
MIT
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"w3c-mcp": {
"command": "npx",
"args": []
}
}
}Web content fetching and conversion for efficient LLM usage.
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also