Skip to main content

Visual frontend accessibility inspector MCP server. WCAG contrast checking, touch target validation, heading hierarchy audits, responsive screenshots.

Project description

lo-eyes

CI

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

Tool Description
eyes_screenshot Viewport-sized screenshot at any device preset
eyes_scan Auto-chunk full page into readable viewport pieces with RAG manifest
eyes_audit Responsive + accessibility audit with S+ grading
eyes_devices List available device presets

Device Presets

Name Viewport Type
iphone-se 375x667 Mobile
iphone-14 390x844 Mobile
ipad 768x1024 Tablet
laptop 1280x800 Desktop
desktop 1440x900 Desktop

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

Grade Criteria
S+ Zero issues
A 1-5 medium, zero high
B 6+ medium, zero high
C 1-2 high
D 3-5 high
F 6+ high

Setup

cd lo-eyes
python3 -m venv .venv
source .venv/bin/activate
pip install playwright mcp
python3 -m playwright install chromium

Usage

As MCP Server (Claude Code)

Add to .mcp.json:

{
  "mcpServers": {
    "lo-eyes": {
      "command": "/path/to/lo-eyes/.venv/bin/python3",
      "args": ["/path/to/lo-eyes/server.py"]
    }
  }
}

As CLI

./lo-eyes audit /                           # Audit homepage
./lo-eyes screenshot /blog/ --device ipad   # iPad screenshot
./lo-eyes scan / --device iphone-14         # Full-page chunked scan
./lo-eyes responsive /academy/              # All 5 viewports

Stack

License

MIT


Built with love by Like One.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lo_eyes-1.1.0.tar.gz (13.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lo_eyes-1.1.0-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file lo_eyes-1.1.0.tar.gz.

File metadata

  • Download URL: lo_eyes-1.1.0.tar.gz
  • Upload date:
  • Size: 13.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for lo_eyes-1.1.0.tar.gz
Algorithm Hash digest
SHA256 142fc86854cae5236f7dbdd8124bbf1cd54f713902e511ae0a9315b43226e38c
MD5 297bd2a073af885ac2143ff75dc2eda2
BLAKE2b-256 312758aa6666bfcc97ffad82b8add988d12c8aa371b6f847fd2acbcc38dff3ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for lo_eyes-1.1.0.tar.gz:

Publisher: publish.yml on sophiacave/lo-eyes

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lo_eyes-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: lo_eyes-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for lo_eyes-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1f14874c3fef176f9a90cb3b3fcac6aabcce0bcf44346cbd20d8f42abc7b329a
MD5 a796f916e159cb05e34b616e6549919f
BLAKE2b-256 879c6a767271875bec46f7f4c4b8f56369bfcedeeeaee9025175fd7ae28d39f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for lo_eyes-1.1.0-py3-none-any.whl:

Publisher: publish.yml on sophiacave/lo-eyes

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page