
Facet
io.github.chndr-prkshPublished by GitHub account chndr-prkshv0.1.0Updated Oct 24, 2026
Check web pages for responsive design problems and screenshot them on phone, tablet and desktop.
The publisher's own server: Facet UCP Shopping
Overview
Facet checks a web page for responsive design problems and screenshots it across emulated phone, tablet and desktop devices.
- What you can do
- Check a URL across many emulated devices and get per-device errors and warnings with selectors and suggested fixes, including horizontal scrolling, small tap targets, tiny text, form field zoom, viewport meta, image and fixed-header issues, plus console errors and failed requests. Capture labelled screenshots per device, viewport or full page. Measure a single element on every device: size, visibility, font size, display, flex and grid. Run an axe-core accessibility audit on one device and list WCAG violations with fixes. List the device catalogue and presets.
- When to use it
- Useful when an assistant edits CSS or layouts and needs to verify the result on real-world screen sizes, or when you want a quick responsive and accessibility pass over a local dev server or public page before shipping.
- Requirements
- Runs locally over stdio via npx from the npm package. Needs Node 20 or later and a Chromium-based browser, found in order from FACET_CHROME, Playwright's Chromium, Google Chrome, then Microsoft Edge. The target page must be reachable from the machine.
Installation
In SourceWeft
- Open Facet in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
facet-check
Check a web page for responsive design problems on real phone, tablet and desktop viewports. It runs from the command line, in CI, or as an MCP server that AI coding agents (Claude Code, Cursor, Codex, VS Code) can call.
Or install it once with npm install -g @chandra14/facet-check, then run facet-check localhost:3000.
Output for a test page with a price table that is too wide for phones (shortened):
Each device is a real emulation in headless Chromium, not a resized window. It uses the device's viewport, pixel ratio, touch support, mobile viewport behaviour and user agent. A page with no viewport meta tag lays out at 980px on a phone, as it would on the real device.
It is the command-line and agent side of Facet, an open-source browser for responsive web development. Facet's device catalogue has 290+ profiles, from the iPhone SE to 2026 flagships, foldables, tablets, laptops and 4K monitors.
What it finds
On every device:
- Horizontal scrolling, and the element that causes it (the table, not each of its cells)
- Tap targets smaller than 24 × 24px on touch devices (WCAG 2.5.8)
- Text smaller than 12px, and text that is cut off without an ellipsis
- Form fields under 16px, which make iOS zoom in when focused
- Viewport meta problems: missing, not
device-width, or zoom disabled - Images that are far larger than needed, blurry on high-density screens, or missing dimensions
- Fixed headers and banners that cover too much of a small screen
- Console errors, uncaught exceptions and failed requests, per device. An error that only one device logs is a viewport-specific bug.
Command line
The URL can be a full URL, a bare host (example.com), a local dev server (localhost:3000, :5173) or a path to an HTML file.
Presets: popular (the six most common real-world sizes), default (phone, tablet, laptop), phones, latest, tablets, desktops, apple, foldables, extremes.
In CI
The exit code is 1 when errors are found, so it can gate a pull request:
MCP server for AI agents
facet-check mcp runs a Model Context Protocol server over stdio. An agent can then check its own CSS changes on many screen sizes and look at the result.
Claude Code
Cursor, VS Code, Claude Desktop and other clients
Then ask, for example: "Check localhost:3000 on phones and fix anything that scrolls sideways."
Requirements
Node 20 or later and a Chromium-based browser. facet-check uses, in order: the browser at FACET_CHROME, Playwright's Chromium (npx playwright install chromium), Google Chrome, then Microsoft Edge. Most machines already have one of these.
Limits
- Chromium only. An iPhone profile emulates the iPhone's screen, not Safari's WebKit engine. Safari-specific bugs still need Safari.
- It checks the page as it is after load. Content behind a login or a click is out of reach from the command line.
License
MIT
Source: cli/README.md at commit 815822c
Tools
0Version history
1- v0.1.0LatestOct 14, 2026
Score
40% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Declare a license in the repository or the registry entry.
Other Facet integrations
Facet UCP Shopping
llc.facetOfficial publisher
Facet UCP Shopping lets an AI assistant search merchant catalogs, get quotes, build carts and complete agent-paid checkouts on Facet-enabled online stores.

Facet
Published by GitHub account halfspacelabs
Facet builds, evaluates and serves a small model for one narrow task from a plain-language request, with repo-aware plugin skills.