Categories › Web & Browser › SEO & site audits
Free SEO MCP that closes the loop: find, fix, ship as a PR or to a CMS, prove. 37 tools, no key.
Remote server: your requests and data go to onpage.dev. Claude Code: claude mcp add --transport http onpage-dev https://onpage.dev/mcp · Claude app: Settings → Connectors → Add custom connector.
The tools this server listed when we connected to it, in its own words.
site_memory — A memory per site that every OnPage.dev tool writes to, across chats and clients. Open it first when working on a site over time. Pick with scan_page — Scan a page for Google and AI search: 0-100 score, issues to fix first with why and how, AI readiness and key facts. Pick with mode: page = site_audit — Audit a whole site, step by step, and work with the result. Pick with mode: start = Start an audit of up to 25 pages; returns audit_id. Needwatch — Monitoring that runs on its own and posts changes to a webhook. Each kind takes action create (default), status or stop where it applies. Pidashboard — A daily SEO data feed for key pages and a live dashboard in the chat. Pick with mode: feed = Start a daily feed of key pages; returns feed_imeasure — Prove and measure with numbers from the user's Search Console, GA4, Ahrefs or Semrush, including numbers the user pastes. Use it instead of find_opportunities — Turn Search Console, GA4 or Ahrefs rows (also rows the user pastes) into the fastest wins, instead of judging them by hand; content_decay anbacklinks — Turn backlink data from Ahrefs, Semrush or similar into links won back, won or cleaned up. Pick with mode: broken = Broken and lost backlinkai_visibility — Whether AI assistants can read, quote and recommend a site. Pick with mode: check = AI crawler access, llms.txt, 15 citability checks and thanswer_readiness — Whether a page answers the questions people ask AI and Google. Pick with mode: questions = Sub-questions AI Mode fans out to, and which the get_fix_pack — Fixes ready to ship: as code, for a CMS through its MCP, as a pull request or at the edge. Pick with mode: fixes = Title, description, canonedge_worker — Fixes applied at the edge on the user's own Cloudflare, on any CMS. Pick with mode: rules = One Worker that fixes a whole section by rules. fix_log — Record shipped fixes, keep them live and report on them. Pick with mode: log = Record a shipped fix; checked every 6 hours, restore code on request_recrawl — Get changed pages recrawled. Pick with mode: recrawl = Check pages are indexable, sitemap lastmod entries, IndexNow and Search Console stepsexplain_google — Explain what Google Search Console and Bing Webmaster Tools report, and what to do. Pick with mode: index_status = Index coverage and rich rcheck_keyword — How pages target a keyword. Pick with mode: focus = One page against one keyword: 8 checks. Needs url, keyword. cannibalization = Your pagesaccessibility — Accessibility for people and the European Accessibility Act. Pick with mode: wcag = WCAG 2.1 AA checks. Needs url. screen_reader = The page local — Local search: the site, the Business Profile and the map. Pick with mode: check = LocalBusiness markup, NAP, locations and the Business Proftracking — Whether analytics and consent are set up right, and whether the numbers add up. Pick with mode: ga4 = GA4 tags, events and duplicates. Needscheck_links — Status of URLs and links. Pick with mode: urls = Status, redirect chain and canonical of a list of URLs. Needs urls. outbound = Dead or moveweb_vitals — Core Web Vitals from real Chrome users. Pick with mode: now = The latest field data for a page or site. Needs url. trend = Weekly history, bshare — Send results where the team works. Pick with mode: link = A link to the visual report. Needs url. export = A Google Sheet, CSV, Slack messagplan — Plans for migrations, experiments and the team. Pick with mode: redirects = Redirect map for a migration or URL change. split_test = SEO splcontent — What to write and how, in the site's own voice, from the pages that rank and the user's search data. Pick with mode: brief = A content brieftechnical — Technical checks across pages and logs. Pick with mode: hreflang = Hreflang across language versions, with the corrected tag set. Needs url.llms_txt — The llms.txt file for AI assistants. Pick with mode: generate = Write one from the sitemap and home page. Needs url. validate = Check an exischema — JSON-LD structured data for rich results. Pick with mode: generate = Write JSON-LD for a page: type Article, Product, FAQPage, Organization,robots_txt — robots.txt for search and AI crawlers. Pick with mode: test = Which crawlers may fetch a URL, and the rule that decides. Needs url. ai_policsitemap — The XML sitemap. Pick with mode: check = Check the sitemap and a sample of its URLs. Needs url. generate = Write a sitemap from a page list layout — What visitors and crawlers see on every screen size. Pick with mode: render = First screen on phone, tablet and desktop in a real browser, ainternal_links — Internal links and link equity. Pick with mode: suggest = Links to add, with anchors, applied by Worker or CMS. Needs audit_id. equity = Intcompare — Compare pages side by side. Pick with mode: pages = Your page against up to 3 competitors. Needs url, competitors. html = Two versions of HTsnippet — How a page looks in Google and when shared, measured in pixels the way Google truncates. Use it instead of estimating title or description lentity — How Google understands who is behind a site. Pick with mode: graph = Organization, sameAs, logo and founder in structured data. Needs url. ttext_quality — Readability and correct language. Pick with mode: readability = Readability that fits the page and the pages that rank. Needs url. spelling track_rankings — Use for ongoing rank tracking without picking keywords by hand. Each run, fetch Search Console rows by query and page (last 7 or 28 days) anprioritize_fixes — Use when Search Console, GA4, Ahrefs or Semrush data is available, also to explain a traffic drop (pass clicks_previous): ranks the fixes byNot tested by KitScout yet. When our harness runs it, pros, cons and the tasks we tried appear here, with the date and evidence.