Developers

Your audit, as your agent sees it

Every audit on your account is one MCP call away. Add it, sign in once, and your coding agent can read every report, compare them, fix what it can, ask us to quote the rest, run the next audit, and even set up a new one with payment in the browser.

claude code · 2 websites
Use the Refreshly MCP: look at every report on my account from the last 6 months, compare the major issues across them, prioritise, fix what you can in this codebase worst-first, then run a fresh audit and list anything that needs me.
▸ list_sites
2 websites: harbourlane.example (Pro, 71 C, 5 reports) and northpier.example (Essentials, 84 B, 2 reports).
▸ compare_reports{"site":"harbourlane.example","sinceDays":183}
5 reports, March to September. Score 63 → 71. 3 issues open in the latest report: 2 have been there since March, 1 came back after being fixed.
▸ get_issue{"report":"rep_09c4","key":"perf.images.oversized:hero"}
11 images served at 2x to 4x their display size on 3 pages. Fix: resize at build and serve WebP.
agentSwitched the hero and product grid to next/image with sizes set. Fixed the two recurring accessibility issues in components/Header.tsx.
▸ request_fix_quote{"report":"rep_09c4","issues":["security.headers.csp:missing"],"message":"The CSP header is set at the CDN, outside this repository."}
Received. Refreshly will reply by email with a quote.
▸ run_audit{"site":"harbourlane.example"}
Queued. 2 extra audits left this month; the new report appears within about two hours.
agent2 of 3 open issues fixed here, 1 sent for a quote, re-audit running to verify.

What the agent can reach

31 tools: everything the audits know, and everything your dashboard can do.

Across your account5

Every website on the account

list_sitesRead

Each website with its plan, whether an audit is running, how many reports it has and the newest one.

The reports list, across websites

list_reportsRead

Every audit, newest first, with its scores, issue counts and how it compares with the one before.

Issues across audits: open, fixed, regressed

compare_reportsRead

How one website's issues moved over its audits: what is still open, what came back, what was fixed, and what the latest audit did not re-check.

Start the next audit

run_auditReadWrite

Starts one of the plan's extra audits and says how many are left this month.

Ask Refreshly to quote the rest

request_fix_quoteWrite

Sends the issues your agent cannot fix to Refreshly with a note, and confirms we will reply by email.

Inside one report14

The score ring and the eight section grades

get_report_overviewRead

The site, when it was audited, every score, issue counts by severity and the five worst issues by key.

The findings list, worst first

list_issuesRead

One compact row per issue with its key, severity, what was found and the fix in one line. Filter by severity, section, check or page.

A single finding card, opened

get_issueRead

Why it matters, the recommended fix, supporting detail, before-and-after examples, the technical note and every affected URL.

The pages table with speed and issue counts

list_pagesRead

Every page the audit read: status, issue count, worst severity and PageSpeed scores on phone and desktop.

A single page's row, with its issues

get_pageRead

Everything wrong with one URL and its speed measurements, so a fix can be scoped to one template or route.

The AI SEO section: crawler matrix and evidence

get_ai_readinessRead

A verdict per assistant crawler plus the llms.txt, structured data, contact, pricing and freshness evidence behind the score. On an Essentials report the crawler verdicts are the robots.txt half only, and a `withheld` line says what Pro adds.

The accessibility section: every WCAG criterion and its status

get_accessibilityRead

Every WCAG 2.2 A and AA success criterion with its status (fails, potential issue, no automated failures found, or needs a person), the repeated components behind the failures, and the potential issues. Automated testing cannot establish conformance, and the answer says so.

The page speed table and Core Web Vitals

get_performanceRead

The site score, field vitals, every measured page on phone and desktop, what could not be measured, and the performance issues.

The AI visibility section: who the assistants cite

get_answer_visibilityRead

Whether ChatGPT, Google AI Overviews, Perplexity and Claude cite the site for a buyer's questions, question by question with the sources they cited, plus the competitors and platforms cited. It sits outside the letter grade and never judges whether an answer is fair or accurate.

The local search panel: Google Maps, search by search

get_local_searchRead

Where the business sits on Google Maps and in the local map pack for each search, beside each competitor, with the top three businesses Google showed.

The Google Business Profile panel, site and competitors

get_business_profileRead

Each Google Business Profile, the site's first: claimed or not, category, rating and reviews, the newest review, owner replies and what the profile leaves blank. One that could not be found reads as not found, never as missing.

Keyword visibility and the keywords you rank for

get_keywordsRead

Each target keyword's on-page state with its best page and monthly searches, what Google ranks the site and each competitor for, and the searches a competitor ranks for that the site does not.

The competitor analysis: scoreboard and link authority

get_competitor_comparisonRead

The site's score beside each competitor's, section by section, where each side is ahead, how much of the web links to every domain, and any competitor that could not be measured, with the reason.

The strengths list

list_passesRead

Every check the audit found correct, so an agent leaves a working setup alone.

Actions12

Plans

Cancel a plan at the end of its periodcancel_plan

Cancels at the end of the paid period and says when the entitlement ends.

Write
Undo a pending cancellationresume_plan

Undoes a pending cancellation so the plan keeps auditing.

Write
The rivals a Pro audit benchmarks againstset_competitors

Replaces the rivals the next Pro audit compares against and returns what was stored.

Write
The daily watch between auditsset_site_watch

Turns the daily site watch on or off for one website.

Write

Reports

A 30-day read-only link to a reportshare_report

Mints a read-only link to one report and says when it expires.

ReadWrite
Revoke every share link for a reportstop_sharing

Rotates the report's share secret, so every link handed out stops opening.

Write

Audits and billing

The free first Essentials audit of a websitestart_free_audit

Starts the first Essentials audit of a website never audited before, free and complete, and confirms it is queued.

Write
A new paid audit, paid in the browserstart_new_audit

Creates a Stripe Checkout session for a paid audit; the audit starts when payment completes. For a website that already has a plan, use run_audit; for the first Essentials audit of a new website, use start_free_audit.

ReadWrite
Cards, invoices and receiptsget_billing_portal_link

A Stripe billing portal link for this account, to open in a browser.

Read

Try each tool

Sample answers from an example account, in the exact shape the server returns.

Across your account5

Inside one report14

Actions12

list_sites

Read

Every website on the account

The call

▸ list_sites

No arguments beyond the optional report, which defaults to your only website.

What comes back

{
  "sites": [
    {
      "siteId": "site_harbourlane",
      "hostname": "harbourlane.example",
      "origin": "https://harbourlane.example",
      "name": "Harbour Lane Coffee Roasters",
      "plan": {
        "name": "pro",
        "status": "active",
        "nextAuditAt": "2026-10-04T09:00:00.000Z",
        "extraRuns": {
          "used": 1,
          "limit": 3,
          "resetsAt": "2026-10-01T00:00:00.000Z"
        }
      },
      "running": false,
      "reportCount": 5,
      "latestReport": {
        "reportId": "rep_09c4",
        "createdAt": "2026-09-04T09:12:00.000Z",
        "tier": "pro",
        "visibility": "full",
        "score": 71,
        "grade": "C"
      }
    },
    {
      "siteId": "site_northpier",
      "hostname": "northpier.example",
      "origin": "https://northpier.example",
      "plan": {
        "name": "essentials",
        "status": "active",
        "nextAuditAt": "2026-09-22T09:00:00.000Z",
        "extraRuns": {
          "used": 0,
          "limit": 3,
          "resetsAt": "2026-10-01T00:00:00.000Z"
        }
      },
      "running": false,
      "reportCount": 2,
      "latestReport": {
        "reportId": "rep_08b6",
        "createdAt": "2026-08-21T08:40:00.000Z",
        "tier": "essentials",
        "visibility": "full",
        "score": 84,
        "grade": "B"
      }
    }
  ],
  "howToUse": "Pass a hostname or report id as `report` to the report tools; call compare_reports with a hostname to see how its issues moved over time."
}

Connect it

One line in your terminal, one sign-in in your browser.

terminal
claude mcp add --transport http refreshly https://mcp.refreshly.tech
Added HTTP MCP server refreshly
claude
/mcp
refreshly · needs authentication → Authenticate
Opening your browser…
✓ Authentication successful. Connected to refreshly.
Use the Refreshly MCP to list my websites
▸ list_sites
2 websites: harbourlane.example (Pro, 71 C), northpier.example (Essentials, 84 B)
refreshly.tech/agent/consent

Claude Code wants to use your Refreshly account

Signed in as you@example.com

  • Read every website and report
  • Compare audits and open issues
  • Start audits and manage plans on your behalf
  • Ask Refreshly for fix quotes
CancelAllow

Your browser opens once. Press Allow and every future session is already signed in.

claude mcp add --transport http refreshly https://mcp.refreshly.tech

Then run /mcp in Claude Code and choose Authenticate: sign in to Refreshly once.

Acts as you

Exactly what your dashboard allows: start audits, manage plans, share reports, ask for quotes.

Your account only

The agent reaches the websites and reports on your account and nothing else.

Disconnect anytime

Under AI agent in your dashboard. Access also lapses after 90 days unused.

Then say

One sentence, and the session runs itself.

Use the Refreshly MCP: look at every report on my account from the last 6 months, compare the major issues across them, prioritise, fix what you can in this codebase worst-first, then run a fresh audit and list anything that needs me.
  1. See every website

    list_sites

    Plans, scores and the newest report per website.

  2. Compare the audits

    compare_reportslist_reports

    Which issues are open, which came back, which were fixed.

  3. Fix worst first

    get_issueget_page

    Full detail per issue, then the change in your own code.

  4. Verify and hand back

    run_auditrequest_fix_quote

    A fresh audit checks the work; a quote request covers what is outside the code.

Ready when you are

Run an audit, add the server, sign in.