Free SEO and AI-visibility checks in Claude Code and CI: Claude Code plugin and GitHub Action, powered by the OnPage.dev MCP server.
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
git clone https://github.com/seoonpage/onpage-tools{
"mcpServers": {
"onpage-tools": {
"command": "node",
"args": ["/path/to/onpage-tools/dist/index.js"]
}
}
}Resumen de MCP Servers
<p align="center">
<a href="https://onpage.dev/mcp"><img src="assets/onpage-dev-banner.png" alt="OnPage.dev: free SEO and AI-visibility checks for AI assistants" width="720"></a>
</p>
<h1 align="center">OnPage.dev MCP server</h1>
<p align="center">
<b>The SEO scanner your AI assistant uses to fix your site itself.</b><br>
Scan, fix, check before deploy, confirm after. For Google and for AI search.
</p>
<p align="center">
<a href="https://onpage.dev/mcp"><img alt="Hosted MCP server" src="https://img.shields.io/badge/MCP-hosted-4f46e5"></a>
<img alt="Free, no API key" src="https://img.shields.io/badge/price-free%2C%20no%20key-0a7a43">
<img alt="20 tools" src="https://img.shields.io/badge/tools-20-4f46e5">
<a href="https://github.com/seoonpage/onpage-tools/actions/workflows/test.yml"><img alt="Tests" src="https://github.com/seoonpage/onpage-tools/actions/workflows/test.yml/badge.svg"></a>
<a href="LICENSE"><img alt="MIT license" src="https://img.shields.io/badge/license-MIT-0b0b0f"></a>
</p>
<p align="center">
<a href="#install-in-one-minute">Install</a> ·
<a href="#built-for-agents">Built for agents</a> ·
<a href="#what-it-can-do">Tools</a> ·
<a href="#why-it-is-different">Why it is different</a> ·
<a href="#claude-code-plugin">Claude Code plugin</a> ·
<a href="#github-action-seo-gate">GitHub Action</a> ·
<a href="https://onpage.dev">onpage.dev</a>
</p>
---
Most SEO tools give you a report. OnPage.dev gives your assistant something to **do**: write the fix, check it before you publish, and confirm it worked. It also checks what AI search sees, not only Google: which AI crawlers may read your site, whether your content is ready to be quoted, and whether you have an `llms.txt`.
```
You: Fix the SEO on our pricing page and keep going until it scores 90 or more.
Assistant: scan_page 46/100 no meta description, no H1, title 14 characters
get_fix_pack title, description and canonical, written from the page
generate_schema Product JSON-LD, 2 values to fill in
(edits pricing.html)
scan_html 92/100 before deploying, all errors gone
rescan_and_compare 94/100 live, +48 since the first scan
Done. 46 to 94. Two prices in the JSON-LD still need your real values.
```
## Built for agents
What makes OnPage.dev different from every other SEO MCP server:
- **Stable issue codes and typed results.** Every issue has a fixed code like `meta-missing` or `h1-missing`, and the main tools declare an output schema. An agent can work through issues one by one and prove each one is gone.
- **It checks the code the agent writes.** `scan_html`, `validate_schema` and `compare_html` test new HTML and JSON-LD before it ships, and catch regressions such as a stray `noindex` or a removed canonical.
- **Launch and migration built in.** `check_urls` follows every redirect chain for up to 20 URLs at once; `test_robots` answers "may this bot fetch this URL" with Google's own matching rules, including `*` and `$` wildcards.
- **Whole sites, step by step.** `start_site_audit` runs as a job the agent works through, so a 25-page audit fits a free hosted service. It reports issues across the site by code, broken and orphan pages and duplicates.
- **You vs the pages that rank.** `compare_pages` puts a page next to up to 3 competitors with content gaps and fixes to catch up; `suggest_internal_links` shows which pages should link where.
- **No made-up advice.** The `onpage://rules` resource gives the assistant every check, threshold and fix, so it explains SEO from the same rules the scanner uses.
- **Free and hosted.** Paste one URL. No account, no API key, no install.
## Install in one minute
The server is hosted. There is nothing to install or run, and no key.
**Server URL:** `https://onpage.dev/mcp`
<details open>
<summary><b>Claude Code</b></summary>
```bash
claude mcp add --transport http onpage https://onpage.dev/mcp
```
Or install the [plugin](#claude-code-plugin) for the server plus ready commands and skills.
</details>
<details>
<summary><b>Claude (claude.ai and desktop)</b></summary>
Settings → Connectors → **Add custom connector** → paste `https://onpage.dev/mcp` → save. Turn the connector on in a chat.
</details>
<details>
<summary><b>ChatGPT</b></summary>
Add a custom connector with `https://onpage.dev/mcp` (Settings → Connectors, with developer mode on). Which plans can use custom connectors is up to OpenAI.
</details>
<details>
<summary><b>Cursor</b></summary>
`~/.cursor/mcp.json` or `.cursor/mcp.json` in your project:
```json
{
"mcpServers": {
"onpage": { "url": "https://onpage.dev/mcp" }
}
}
```
</details>
<details>
<summary><b>VS Code</b></summary>
`.vscode/mcp.json`:
```json
{
"servers": {
"onpage": { "type": "http", "url": "https://onpage.dev/mcp" }
}
}
```
</details>
<details>
<summary><b>Any other MCP client</b></summary>
Streamable HTTP transport at `https://onpage.dev/mcp`. JSON responses, no authentication.
</details>
## What it can do
20 tools in five jobs. Every result links to the full visual report on [onpage.dev](https://onpage.dev). Issues carry stable codes; the full list is in the `onpage://rules` resource.
### Audit and fix
| Tool | What it does | Example result |
|---|---|---|
| `scan_page` | Score from 0 to 100, the issues to fix first with why and how, AI readiness and key facts | `46/100, 5 fixes` |
| `deep_audit` | Everything measured, by section: speed hints, links and anchor texts, accessibility, image SEO, rich results, security headers, content and technical facts | `8 sections` |
| `get_fix_pack` | Ready-to-paste HTML for every issue, written from the page's own content | `<title>`, `<meta>`, canonical, social tags |
| `generate_schema` | Article, Product, FAQ, Organization or breadcrumb JSON-LD, validated against Google's rich result rules. Values it cannot read are marked TODO, never invented | `Product: eligible` |
| `rescan_and_compare` | Scan again after a fix: score change, what got fixed, what is new | `46 → 94` |
### Whole site and competitors
| Tool | What it does | Example result |
|---|---|---|
| `start_site_audit` | Audit up to 25 pages from the sitemap as a job. Returns an `audit_id` and the first progress | `3 of 25 scanned` |
| `get_site_audit` | Continue until complete, then read the site-wide results: issues by code with affected pages, broken, orphan and duplicate pages | `25 pages, average 92` |
| `suggest_internal_links` | Which audited pages should link to a page, with anchor text. Works for a new page by topic | `3 links to add` |
| `compare_pages` | A page next to up to 3 competitors: side by side, content gaps, structured data they have and fixes to catch up. Flags cookie walls | `You lead on 12 of 14` |
### AI search
| Tool | What it does | Example result |
|---|---|---|
| `check_ai_visibility` | Which AI crawlers may read the page (GPTBot, ClaudeBot, PerplexityBot, Google-Extended and more), llms.txt, 11 checks for AI answers, and the page as a model reads it | `7 of 8 crawlers allowed` |
| `find_answer_passages` | Does the page answer a question well enough for AI to quote it? Returns the best passages with length and fit | `Best passage, 64 words` |
| `ai_crawler_policy` | robots.txt rules for 13 AI crawlers from a policy (allow all, AI search only, block all), merged into your existing file | `13 bots, merged` |
| `generate_llms_txt` | A ready `llms.txt` built from the sitemap and home page | `llms.txt, 42 pages` |
### Launch and migration
| Tool | What it does | Example result |
|---|---|---|
| `check_urls` | Status codes and full redirect chains for up to 20 URLs, checked against where each should land. Flags chains and temporary redirects | `19 of 20 OK` |
| `test_robots` | May Googlebot, GPTBot, ClaudeBot or any crawler fetch this URL? Uses Google's matching rules and returns the exact deciding rule. Can test a proposed robots.txt too | `Blocked by "Disallow: /search?"` |
### Writing and code
| Tool | What it does | Example result |
|---|---|---|
| `scan_html` | Scan HTML that is not live yet: a local build, a template or a draft. Same score and fixes as `scan_page` | `92/100 before deploy` |
| `compare_html` | SEO diff between two versions of a page: score, issues fixed and introduced (by code), and changes to title, description, H1, canonical, robots and structured data | `72 → 18, noindex added` |
| `validate_schema` | Check JSON-LD you wrote: syntax, @context and @type, ISO dates, absolute URLs, placeholders and Google's required fields | `2 errors, 3 warnings` |
| `check_focus_keyword` | Eight checks for one search term: title, description, H1, URL, opening text, subheadings, alt texts and keyword use | `6 of 8` |
| `check_snippet` | Pixel-width estimate of title and description against Google's cut-off, desktop and mobile | `612 px, cut off` |
### Ready workflows (MCP prompts)
One click in clients that show prompts:
- **Full SEO and AI audit**: scan, AI check and fix pack, then a prioritised plan.
- **Why can't AI find my site?**: which assistants can read and quote you, and what to change.
- **Launch checklist**: a tick or cross for everything a page needs before going live.
- **AI visibility makeover**: robots.txt, llms.txt and answer passages in one go.
- **Pre-deploy SEO gate**: scan the built HTML and block the release below a minimum score.
### Reference resource
`onpage://rules`: every check with its stable code, why it matters and how to fix it, plus the key thresholds (title and description length in pixels, word counts, alt text, server response, AI answer length).
### Score card in the chat
In clients that support MCP Apps (Claude) or the Apps SDK (ChatGPT), scan results also show as a visual card:
<p align="center"><img src="assets/score-card.png" alt="OnPage.dev score card in the chat: score 46, AI readiness 27, and the fixes to make first" width="420"Lo que la gente pregunta sobre onpage-tools
¿Qué es seoonpage/onpage-tools?
+
seoonpage/onpage-tools es mcp servers para el ecosistema de Claude AI. Free SEO and AI-visibility checks in Claude Code and CI: Claude Code plugin and GitHub Action, powered by the OnPage.dev MCP server. Tiene 1 estrellas en GitHub y su última actualización registrada es del 2026-10-05.
¿Cómo se instala onpage-tools?
+
Puedes instalar onpage-tools clonando el repositorio (https://github.com/seoonpage/onpage-tools) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.
¿Es seguro usar seoonpage/onpage-tools?
+
Nuestro agente de seguridad ha analizado seoonpage/onpage-tools y le ha asignado un Trust Score de 95/100 (tier: Verified). Revisa el desglose completo de comprobaciones superadas y flags en esta página.
¿Quién mantiene seoonpage/onpage-tools?
+
seoonpage/onpage-tools es mantenido por seoonpage. La última actividad registrada en GitHub es del 2026-10-05, con 0 issues abiertos.
¿Hay alternativas a onpage-tools?
+
Sí. En ClaudeWave puedes explorar mcp servers similares en /categories/mcp, ordenados por popularidad o actividad reciente.
Despliega onpage-tools en tu cloud
Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.
¿Mantienes este repo? Añade un badge a tu README
Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.
[](https://claudewave.com/repo/seoonpage-onpage-tools)<a href="https://claudewave.com/repo/seoonpage-onpage-tools"><img src="https://claudewave.com/api/badge/seoonpage-onpage-tools" alt="Featured on ClaudeWave: seoonpage/onpage-tools" width="320" height="64" /></a>Más MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
The fastest path to AI-powered full stack observability, even for lean teams.