
lo-eyes
io.github.sophiacavePublished by GitHub account sophiacavev1.1.0Updated Oct 24, 2026
Visual accessibility inspector. WCAG contrast, touch targets, heading audits, screenshots.
Overview
Local MCP server that inspects web pages for visual accessibility: WCAG contrast, touch targets, heading hierarchy, and responsive screenshots.
- What you can do
- Capture viewport-sized screenshots at device presets such as iPhone, iPad, laptop and desktop
- Chunk a full page into readable viewport pieces with a RAG manifest
- Run responsive and accessibility audits with S+ grading, covering overflow, small font sizes, touch targets and skipped heading levels
- List the available device presets
- When to use it
- Useful when checking a frontend or site for mobile and desktop layout problems and basic accessibility issues, and when you want screenshots or page chunks an assistant can review. Handy for quick pre-release checks across several viewports.
- Requirements
- Runs as a local Python 3 process with Playwright and headless Chromium installed, plus the MCP SDK. The target site is set through a BASE_URL value. No accounts, API keys or environment variables are declared.
Installation
In SourceWeft
- Open lo-eyes 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
lo-eyes
[License: MIT] [Python 3.10+] [MCP Compatible]
Visual frontend accessibility inspector MCP server. WCAG contrast checking, touch target validation, heading hierarchy audits, responsive screenshots, and S+ grading across mobile and desktop viewports.
Built by Like One Foundation (501(c)(3) nonprofit). Works with any site by changing BASE_URL.
Tools
Device Presets
Audit Checks
- Overflow: Elements exceeding viewport width (respects scroll parents)
- Font size: Text below 12px minimum
- Touch targets: Interactive elements below Apple HIG 44px minimum
- Heading hierarchy: Skipped heading levels (h1 -> h3)
Grading
Setup
Usage
As MCP Server (Claude Code)
Add to .mcp.json:
As CLI
Stack
- Python 3
- Playwright (headless Chromium)
- MCP SDK (FastMCP, stdio transport)
License
MIT
Built with love by Like One.
Source: README.md at commit fdca2e3
Tools
0Version history
1- v1.1.0LatestSep 16, 2026
Score
50% 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