UICheck

UICheck for AI assistants

Connect UICheck to Claude Code, Cursor, VS Code or Windsurf. Your assistant checks the page at real screen sizes, reads each problem with the CSS fix UICheck already tested, changes your code and checks again until it’s fixed.

Works with:
Claude Code, Cursor, VS Code, Windsurf, Claude Desktop, claude.ai, ChatGPT
Needs:
Node 18 or newer
Checks:
live sites, staging and localhost

What it does

MCP (Model Context Protocol) is how AI assistants use tools. With UICheck connected, your assistant can run the whole fix loop by itself:

  1. 1

    Check the page

  2. 2

    Read the findings

  3. 3

    Fix the code

  4. 4

    Check again

  5. 5

    Confirm what’s fixed

Each finding comes with the element’s selector, what a visitor sees, how to fix it, and often the exact CSS UICheck tried on the live page and confirmed works. The assistant also gets a cropped screenshot with the problem outlined, so it sees what you would see.

Set it up

Two steps: a token, then one line or one file in your assistant.

  1. 1

    Create a token

    In UICheck open Integrations → CI and AI assistant tokens, name it (for example “Cursor”) and pick what it can do: Start and read checks is enough. Copy it: it’s shown once.

  2. 2

    Add UICheck to your assistant

    Replace uck_ci_your_token with your token.

    Terminal, in your project

    claude mcp add uicheck --env UICHECK_TOKEN=uck_ci_your_token -- npx -y @uicheck-cli/cli mcp

    Add --scope user to use it in every project. Check it with: claude mcp list

Connect by address

Assistants that take a server address connect with nothing to install and no token to copy: you sign in to UICheck and choose what they may do.

The address
https://uicheck.app/mcp
  • claude.ai and Claude Desktop: Settings → Connectors → Add custom connector, paste the address, then Connect.
  • ChatGPT: add a custom connector (developer mode) with the address.
  • Claude Code: claude mcp add --transport http uicheck https://uicheck.app/mcp, then run /mcp and choose Authenticate.
A UICheck page opens: pick the workspace and whether the assistant may only read checks, also run them, or also manage findings. It stays connected until you disconnect it in Integrations. Checks run on UICheck’s servers, so use a public or staging address, not localhost.

Without a token

Leave UICHECK_TOKEN out and the checks run on your own computer instead: no account, nothing saved, and it can check pages only your machine can reach.

Claude Code
claude mcp add uicheck -- npx -y @uicheck-cli/cli mcp
Good for http://localhost:3000 while you build. The first check downloads a browser once (about 150 MB). Checks without a token live only while your assistant is open; saved projects, the quality gate against earlier checks and reports need a token.

Things to ask

Talk to your assistant as you would to a tester:

  • “Check http://localhost:3000 on phone and desktop and fix the layout problems you find.”
  • “Run the client.com project on staging. Is it ready to go live? List the blockers.”
  • “Fix the critical and major findings of the last check, then re-check and tell me what is fixed.”
  • “Why does the pricing page fail the quality gate? Show me the worst finding.”
  • “Go through the open comments on client.com, fix what you can, reply with what you changed and resolve them.”

Tools

What your assistant can use. These read or start checks and change nothing else:

run_checkChecks a page, several pages or a saved project at real screen sizes, and waits for the result (progress shows while it runs).
get_checkStatus, quality gate, score and the top findings of a check; how far a running check is.
list_findingsEvery finding grouped across screen sizes, worst first, filtered by severity, page or kind of check.
get_findingOne finding in full: what a visitor sees, why it matters, how to fix it, the CSS UICheck tested on the live page, WCAG criteria, and a cropped screenshot with the problem outlined.
rescanThe same check again, after a fix.
what_changedFixed, new and still there, compared with the previous check of the same pages.
list_checksRecent checks of the workspace (or of this session, without a token).
list_projectsSaved projects, to run with run_check.

With a token set to Also manage findings, it can also work on the To fix list. These are marked as tools that change things, so most assistants ask you first, and every change is made under the token owner’s name:

mark_findingMarks a finding fixed (the next check confirms it or reopens it) or by design (left out of later checks of that page).
create_issueSends a finding to Linear, Jira, GitHub or Worksynk with its explanation, sizes and screenshot. Asks where when the site has no destination yet.
list_todoThe workspace’s To fix list: findings and people’s comments, with status, priority, assignee and tracker issue.
reply_commentReplies in a comment thread, for example to say what was changed.
set_comment_statusMoves a comment to in progress, resolved or open again.

Security

  • A token works only in its own workspace and only for what you picked: Read only, Start and read checks, or Also manage findings (marks, tracker issues, replies). Pick the least the assistant needs.
  • It stops working when the person who made it leaves the workspace. Revoke it any time in Integrations.
  • Checks your assistant starts count toward your daily checks and show as “From AI assistant” in your Checks list.
  • Words UICheck quotes from your pages are marked as page text, so a page can’t give your assistant instructions.
  • Passwords for protected sites, tracker connections and your site key are never sent to the assistant.

Troubleshooting

The assistant doesn’t list UICheck
Restart the assistant after adding it, and check that Node 18 or newer is installed: node --version.
“This token can’t start checks”
The token is read-only, or its creator can no longer run checks in the workspace. Create a new one with Start and read checks.
“You’ve used all … checks for today”
Checks from your assistant use your plan’s daily checks. They reset at midnight UTC.
localhost can’t be reached
Only checks without a token run on your machine. Remove UICHECK_TOKEN to check localhost, or check your staging address with the token.
A long check “is still running”
Full-site checks take a while. The assistant can ask again with get_check; the report link works the whole time.

Running UICheck in CI as well? See the CLI and CI guide.

Let your assistant fix the layout, not just write it

Create a token, add one line to your assistant, and ask it to check your page.