Home · Developers

The free scan, as an API.

The website check behind our scanner is public: one endpoint, no key, a full report in seconds. Agents can call it through our MCP server too.

Websites built free for local businesses. Then the systems that get you booked. £39 a month keeps it online. No minimum term.

For developers and AI agents

One free endpoint. No key.

The scan behind our free website check is a public API. Send a website address, get back a 0 to 100 score across SEO, AI search, local signals, trust, conversion and speed, with every check and the fixes in priority order. Five scans per address every ten minutes, three hundred a day.

Scan a site

curl "https://buildmydigital.co.uk/api/v1/scan/?url=yourbusiness.co.uk"
curl -X POST https://buildmydigital.co.uk/api/v1/scan/ \
  -H "Content-Type: application/json" \
  -d '{"url": "yourbusiness.co.uk"}'

The response is {"id", "report"}. The report carries total, one score per categories entry, the full checks list with ok and hint, priorities sorted by weight, and a lighthouse block when Google PageSpeed answers. Errors come back as RFC 9457 problem details (application/problem+json: type, title, status, detail) that also carry a plain error line, with 400, 422, 429 or 502. Every response announces the allowance in RateLimit-Policy and RateLimit headers, and a 429 carries Retry-After.

Every report also carries an agent block: a separate agent-readiness score from 0 to 100 (can an AI agent find the site, read it and act on it) with three layers, its own checks and priorities, the count of checks that did not apply (no API, no MCP server, no form), and Ora's cached score for the domain when ora.ai has one, with a link to their report. It never changes total.

CLI and SDK

The same scan from a terminal or from code, published on npm as buildmydigital (MIT, no dependencies, Node 18 or newer).

npx buildmydigital yourbusiness.co.uk
npx buildmydigital yourbusiness.co.uk --json
npm install buildmydigital

import { scan } from "buildmydigital";
const report = await scan("yourbusiness.co.uk");
console.log(report.total, report.agent?.score, report.priorities);

A non-2xx answer throws a ScanError carrying the status and the problem body. Use sandbox as the address for the fixed sample report. Source, the agent skill and a Claude Code plugin live at github.com/buildmydigital/agent-kit.

Sandbox, retries and batches

Send url=sandbox and you get a fixed sample report outside the allowance, for testing a client without spending scans. Send an Idempotency-Key header on a POST and a retry with the same key within ten minutes returns the same answer instead of running a second scan. POST /api/v1/scan/batch/ takes {"urls": [...]}, up to three sites, and reports each one in place. Authentication is described at /auth.md: there is none to obtain.

Long scans and lists

A scan can take up to a minute; Google PageSpeed is the slow part. Send Prefer: respond-async on a scan request and the answer is a 202 straight away with a Location header and a job id. Poll GET /api/v1/jobs/{id}/, waiting the Retry-After seconds between calls, until status is done (the report is in the body) or failed (the reason is). The id a synchronous scan returns can be read from the same place. GET /api/v1/services/ lists every service with its published price and page, cursor-paginated: pass next_cursor back as cursor until it is null. It is the same list the MCP tool list_services returns.

Versioning

Stable paths live under /api/v1/. /api/scan/ is the unversioned alias the site and our own tools use and it stays. A breaking change would open /api/v2/.

Deprecation and sunset policy

When a path is replaced it keeps working for at least six months. From the day the replacement ships it answers with a Deprecation header (RFC 9745) and a Sunset header (RFC 8594) carrying the removal date, plus a Link to the replacement. The change is announced on this page and in /openapi.json under x-deprecation-policy. Nothing is retired without both headers having been live for the full six months.

Errors and access

No authentication, no key, no sandbox: every call is a real scan of a public site, and the free allowance is the sandbox. Cross-origin calls are allowed from any origin without credentials.

Reference

MCP server

Agents can call the same scan natively. Connect a Streamable HTTP client to https://buildmydigital.co.uk/mcp/. Three tools: scan_website runs the scan, list_services returns what we build with the published price of each, get_page reads any page as Markdown. A second server at https://buildmydigital.co.uk/mcp/docs/ is for questions rather than actions: search_pages and get_page. Server cards: product and docs. Discovery: /.well-known/ard.json.

claude mcp add build-my-digital --transport http https://buildmydigital.co.uk/mcp/

Rules

  • Public sites only. The scan reads what any visitor can read.
  • No authentication and no key. Rate limits are per address.
  • A scan of your own site may earn you a message from us. That is the whole business model, and it is the only thing we do with the address.
Straight answers

Developer questions.

Is the API really free?
Yes. The scan is the same one that runs on our free scanner page, and it costs nothing at any volume inside the limits: five scans per address every ten minutes and three hundred a day across everyone. There is no key to request, no account to open and no plan to pick. If you need more than that for a real project, email hello@buildmydigital.co.uk and we will open a lane for you.
What does the score measure?
Fifty-plus checks a person can verify: page titles, structured data, HTTPS, click-to-call, booking, AI crawler access, an answer AI can quote, local schema, internal links, content depth, HSTS and Google PageSpeed. Every check is listed in the response with its verdict and a plain-English fix.
Can I use it inside Claude or ChatGPT?
Yes, through the MCP server at https://buildmydigital.co.uk/mcp/. Add it as a connector and ask the assistant to scan a site.
Start here

Get your website, free.

Tell us your business name and town. We’ll send back a scan of your current web presence and a preview of your site. The build costs nothing, and you don’t have to book a call to get it.

Open Monday to Friday, 7am to 10pm. Calls and WhatsApp answered same day, emails within one working day. Or book a callback at a time that suits you.

Find us on