Site Audit & Link Preview Tools
Audit an entire site's SEO and social metadata, or instantly check how a single URL will preview on Facebook, X, LinkedIn, and Google, directly from your AI assistant.
These tools require signing in with your account. They aren't available with an API key alone. See Signing In.
Overview
The OpenGraph MCP Server includes eighteen tools covering two related products: Site Audit and Link Preview. They fall into four groups: running an audit, tracking a site over time, turning findings into a fix list, and checking a single URL.
Running an audit
- discoverSiteUrls – Crawl a domain and list every page found
- startSiteAudit – Kick off a full, multi-page SEO/social audit
- getSiteAuditStatus – Poll an in-progress audit
- getSiteAuditReport – Retrieve the completed report
- deleteSiteAudit – Permanently delete an audit and its results
Tracking a site over time
- listWebsites – Every site you have audited, with its current score, trend, and next scheduled run
- listSiteAudits – Past audits, filterable by domain, status, date range, or website
- getSiteAuditChanges – What changed since the previous run, and what to fix first
- getMonitoringSchedule / setMonitoringSchedule – Read or change a site's recurring-audit schedule
- getConnectionContext – Which organization this connection acts for, and what its plan allows
Handing findings to a developer
- listFixItems / saveFixItems / deleteFixItem – Build the list of exact changes you want made
- exportFixItemsCsv – Export that list as CSV
- emailSiteAuditReport – Email the full report to your own account
Checking a single URL
- previewPageAudit – Instant quality check of a single URL
- getLinkPreview – Instant check of how a single URL previews on social platforms
Tracking a site over time
A website is the durable object behind repeated audits of the same domain. Because issues are tracked across runs rather than by comparing two lists, an issue that was fixed and has come back is reported as regressed rather than as new — which is the difference between "someone undid our fix" and "this is the first we have seen of it".
listWebsitesshows current score and trend, critical issue and regression counts, and when the next scheduled audit runs.getSiteAuditChangesseparates new, fixed, and regressed issues, reports pages added or removed and the score delta, and groups the remaining issues by priority.setMonitoringSchedulere-runs the audit weekly or monthly at a wall-clock time you choose, in your timezone.
Scheduled runs consume page quota on every run, and disabling a schedule removes its configuration rather than pausing it — use the pause option if you intend to resume. Alert recipients are managed in the dashboard and cannot be set through MCP.
What changed on example.com since the last audit? If anything we already fixed has come back, audit it weekly from now on.Turning findings into a fix list
A fix list records the exact title, description, or image you want each page changed to, so an audit becomes work someone can action. Fix items are hand-authored — they are not regenerated by re-running the audit, so an agent that overwrites them cannot recover the originals.
exportFixItemsCsv returns the list as CSV for handoff. PDF export and sending a report to someone else are dashboard actions; emailSiteAuditReport delivers only to the account that authorized the connection.
For every page that failed the title check, draft a better title, save it to the fix list, and export the list as CSV.Auditing a whole site
A full site audit runs in four steps. Your AI assistant handles all of them; just tell it what you want audited:
- Discover –
discoverSiteUrlscrawls the domain and its sitemap, returning every page found along with your remaining monthly audit quota. The assistant will ask whether you want the whole site, just the core pages, a specific section, or a hand-picked list. - Start –
startSiteAuditkicks off the audit for the pages you chose (or crawls the domain itself if you skip discovery) and returns an audit ID right away. - Poll –
getSiteAuditStatusis checked every few seconds until the audit finishes. - Report –
getSiteAuditReportreturns the full results: an overall score, an AI-generated summary with top priorities, and per-page scores and issues.
Audit my site https://example.comIf you already know exactly which pages you want audited, you can skip discovery entirely and hand your assistant the URLs directly; it will pass all of them through, even for large lists.
Auditing or previewing a single page
For a quick check on one URL, there's no need to run a full audit:
- previewPageAudit – returns a quality score (0–100), a score label (Well Optimized / Good / Room for Improvement / Needs Attention / Poor), a breakdown of the checks performed, any issues found, and mock social previews.
- getLinkPreview – returns the same score, plus platform-specific preview cards showing exactly what Facebook, X/Twitter, LinkedIn, and Google will display when the URL is shared, along with a list of fixes.
Both are synchronous and return instantly; neither counts against your audit quota.
Check the link preview for https://example.com/pricing. How will it look on Facebook and X?Tool Reference
| Tool | Input | Returns |
|---|---|---|
| discoverSiteUrls | domain | All discovered URLs grouped by depth, plus remaining monthly quota |
| startSiteAudit | domain, optional urls[], pagesRequested | An audit ID, initial status, and page count |
| getSiteAuditStatus | auditId | Current status (queued, crawling, scoring, complete) and progress counts |
| getSiteAuditReport | auditId | Overall score, AI summary, and per-page scores, issues, and previews |
| previewPageAudit | url | Score, checks, issues, and mock social previews for that page |
| getLinkPreview | url | Score plus Facebook, X/Twitter, LinkedIn, and Google preview cards and fix list |
| listSiteAudits | optional q, status, from/to, websiteId, limit/offset | Past audits with ID, domain, status, score, issue count, and date |
| getSiteAuditChanges | auditId, optional baseline | New, fixed, and regressed issues, pages added or removed, score delta, and prioritized issue groups |
| listWebsites | optional websiteId, q, health | Websites with score and trend, issue and regression counts, next run |
| getMonitoringSchedule | websiteId | Frequency, anchored day and time, paused state, next run |
| setMonitoringSchedule | websiteId, frequency, optional timing and enabled | The saved schedule, or confirmation that monitoring was removed |
| getConnectionContext | none | Organization name and ID, and the Site Audit features the plan allows |
| listFixItems | auditId | Saved fix items grouped by page, each with an ID |
| saveFixItems | auditId, pageUrl, items[] | Confirmation of how many items were saved for that page |
| deleteFixItem | auditId, fixItemId | Confirmation the item was removed |
| exportFixItemsCsv | auditId | The fix list as CSV text |
| deleteSiteAudit | auditId | Confirmation the audit and its results were deleted |
| emailSiteAuditReport | auditId | The address the report was sent to, and the attached filenames |