A flock of AI users tests your deployed app and reports where real people get stuck, with fixes.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Bearer <your CanaryUsers API token>. Generate it at canaryusers.ai/dashboard then CI & API, and toggle MCP on.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Run a CanaryUsers UX scan on a DEPLOYED URL (your live or preview app — not source code). A flock of AI personas evaluates the page and reports where real users would get stuck, with concrete fixes. Returns AI-ready findings you can act on immediately. Use depth='deep' for the thorough scan that renders the page, checks it VISUALLY on desktop + mobile (catches mobile breakage and layout issues), and clicks through key flows like signup/checkout (slower, ~60-90s, uses one credit); depth='quick' (default) is a fast static check that does NOT see mobile or visual issues — use 'deep' when the user mentions mobile, layout, or visual problems. IMPORTANT: if this returns status 'running' with a scanId, the findings are not ready yet — wait ~30s, then call get_report_markdown(scanId), repeating until it returns the report. Always fetch and present the findings before stopping, then offer to fix the top issues.
The public URL to scan (e.g. your deployed app or preview URL).
'quick' (default, fast, free) or 'deep' (clicks through flows + visual review, ~1 credit).
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Run a CanaryUsers UX scan on a DEPLOYED URL (your live or preview app — not source code). A flock of AI personas evaluates the page and reports where real users would get stuck, with concrete fixes. Returns AI-ready findings you can act on immediately. Use depth='deep' for the thorough scan that renders the page, checks it VISUALLY on desktop + mobile (catches mobile breakage and layout issues), and clicks through key flows like signup/checkout (slower, ~60-90s, uses one credit); depth='quick' (default) is a fast static check that does NOT see mobile or visual issues — use 'deep' when the user mentions mobile, layout, or visual problems. IMPORTANT: if this returns status 'running' with a scanId, the findings are not ready yet — wait ~30s, then call get_report_markdown(scanId), repeating until it returns the report. Always fetch and present the findings before stopping, then offer to fix the top issues.
| Argument | Type | Description |
|---|---|---|
| url* | string | The public URL to scan (e.g. your deployed app or preview URL). |
| depth | string | 'quick' (default, fast, free) or 'deep' (clicks through flows + visual review, ~1 credit). |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "The public URL to scan (e.g. your deployed app or preview URL)."
},
"depth": {
"enum": [
"quick",
"deep"
],
"type": "string",
"description": "'quick' (default, fast, free) or 'deep' (clicks through flows + visual review, ~1 credit)."
}
}
}Get one scan's full report as AI-ready markdown: the findings ranked by severity, why each matters, and how to fix it. Pass a scanId from list_recent_scans.
| Argument | Type | Description |
|---|---|---|
| scanId* | string | The scan id (UUID) to fetch. |
{
"type": "object",
"required": [
"scanId"
],
"properties": {
"scanId": {
"type": "string",
"description": "The scan id (UUID) to fetch."
}
}
}List the most recent CanaryUsers UX scans for your account (id, URL, CanaryScore, grade, status, date). Use this to find a scan to dig into.
| Argument | Type | Description |
|---|---|---|
| limit | number | How many to return (default 10, max 50). |
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "How many to return (default 10, max 50)."
}
}
}