REST API + MCP server

SEO Report API for
Developers and AI Agents

Create reports over REST, poll them to completion, and read the same saved report object your team sees on the website. The same API key connects any MCP-capable agent.

Access model

Free account + API key

API access is account-linked. Create a free account, issue an API key, and start with score previews. No card is required for the evaluation path.

One report object

Website sessions, API calls, and agent sessions read from the same saved report state.

Straightforward flow

Create a report, poll for status, then read preview or full results from the same object.

Available endpoints

POST/api/v1/reports/preview

Create a score preview for partner and product-launch flows.

POST/api/v1/reports

Create a new report or reuse one that already exists.

GET/api/v1/reports/:id

Get the latest report status and sections.

GET/api/v1/reports/:id/result

Read the full report results once the report is unlocked.

GET/api/v1/reports/:id/download?format=json

Export the report payload as JSON for programmatic integrations.

Official TypeScript Client

Zero-config auth, free-tier ready, launch-platform ready.

Command Line

Run reports from your terminal. One global install, instant previews.

Bash
npm install -g @seoreport/client

MCP server — same API, same key

Point any MCP-capable client at https://seoreport.dev/mcp and authenticate with the same Bearer API key you use for REST. The report and account tools are advertised on connect, so an agent can run an audit and read the findings without any glue code.

MCP client configJSON
{
  "mcpServers": {
    "seoreport": {
      "url": "https://seoreport.dev/mcp",
      "headers": {
        "Authorization": "Bearer sr__live_your_api_key"
      }
    }
  }
}
create_report

Start a report for a URL and get a job ID back.

get_report_status

Poll a job until the report is ready.

get_report

Read the finished report with its score and findings.

list_reports

List the reports on the account.

get_report_download

Get a download URL for JSON, Markdown, text, or PDF.

get_usage

Check remaining credits and the current billing period.

Checkout, cancellation, and account deletion return a browser confirmation URL instead of acting directly. An agent can start them; only a person can finish them.

Example ResponseJSON
{
  "success": true,
  "report": {
    "jobId": "383c5318-5e81-45a8-9df8-579d10442f72",
    "stage": "snapshot_ready",
    "status": "completed",
    "targetUrl": "https://rbeckner.com",
    "isSnapshotReady": true,
    "preview": {
      "sectionKeys": ["hero_summary", "top_findings"]
    },
    "paidUnlock": {
      "unlockEligible": true,
      "unlocked": false
    }
  },
  "pollAfterMs": 0
}

Ready to build?

Get your free API key and start integrating SEO reports into your product.