The Nuxt SEO MCP server gives AI assistants the module documentation and free SEO checks for any URL. It needs no account and no API key.
Installation
claude mcp add --transport http nuxt-seo https://nuxtseo.com/mcp// .cursor/mcp.json
{
"mcpServers": {
"nuxt-seo": {
"type": "http",
"url": "https://nuxtseo.com/mcp"
}
}
}// .vscode/mcp.json
{
"mcpServers": {
"nuxt-seo": {
"type": "http",
"url": "https://nuxtseo.com/mcp"
}
}
}// ~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"nuxt-seo": {
"serverUrl": "https://nuxtseo.com/mcp"
}
}
}// Zed settings
{
"context_servers": {
"nuxt-seo": {
"settings": {
"url": "https://nuxtseo.com/mcp"
}
}
}
}1. Go to **Settings** > **Connectors**
2. Add a new connector with URL: `https://nuxtseo.com/mcp`Tools
Documentation Tools
search_pages: search the full text of the Nuxt SEO docs. Returns the best matching pages with their route, title, and description.
| Parameter | Type | Description |
|---|---|---|
query | string | Search terms, for example og-image fonts |
limit | number | Optional. Maximum number of results |
search_pages({ query: 'schema-org breadcrumbs' })get_page_markdown: read one docs page as Markdown. Use a route from search_pages or list_pages.
get_page_markdown({ route: '/docs/sitemap/getting-started/installation' })list_pages: list docs pages with their route, title, and description.
list_pages({ limit: 50, offset: 0 })get_module_setup: get the installation guide for a Nuxt SEO module. Returns the install command, the guide content, and the navigation tree.
| Parameter | Type | Description |
|---|---|---|
module | string | nuxt-seo, robots, sitemap, og-image, schema-org, link-checker, seo-utils, site-config, ai-ready, skew-protection |
get_module_setup({ module: 'schema-org' })To find content on other pages, use search_pages.
list_modules: list all Nuxt SEO modules with stats (stars, downloads, versions).
list_modules()SEO Analysis Tools
These tools let AI assistants check and debug the SEO of any public URL.
diagnose_url: run a full SEO diagnosis of a URL in one call. It checks indexability, meta tags, Schema.org, social cards, the sitemap, and robots.txt. It uses the same engine as the free Site Audit tool.
diagnose_url({ url: 'https://example.com' })Returns:
score(0 to 100) andgrade(AtoF)summary: one line that states the main resultfindings: ordered by severity, highest first. Each finding has anid, aseverity(error,warning, ornotice), acategory, atitlethat states the problem, adetailthat states the fix, and an optionaldocslink.stats: counts of errors, warnings, notices, and passed checkschecks: the raw facts that the findings come fromurl,finalUrl(after redirects),status(HTTP status), andfetchedAt
Start with diagnose_url. Use the tools below when you need the full detail of one area.
check_meta_tags: extract and parse the meta tags of a URL.
check_meta_tags({ url: 'https://example.com' })Returns: parsed title, description, og:*, twitter:*, canonical, robots, and other meta tags.
debug_social_share: debug the social share cards of a URL. Returns the parsed Open Graph and Twitter Card tags with validation warnings.
debug_social_share({ url: 'https://example.com' })Returns: og:title, og:description, og:image, Twitter Card tags, and warnings for missing or invalid tags.
validate_schema: validate the Schema.org structured data on a URL. Detects JSON-LD and Microdata markup.
validate_schema({ url: 'https://example.com' })Returns: all detected schemas, validation errors, warnings, and rich result eligibility.
analyze_robots_txt: fetch and parse the robots.txt of a site.
analyze_robots_txt({ url: 'https://example.com' })Returns: the raw content, the rules for each user agent, and the sitemap directives. If the site has no robots.txt, the result says so. This is not an error: crawlers can then crawl every page.
validate_sitemap: validate the content of an XML sitemap.
validate_sitemap({ xml: '<?xml version="1.0"?>...' })Returns: validation status, URL count, errors (duplicates, invalid URLs), and warnings.
convert_html_to_markdown: convert the HTML of a page to clean Markdown.
// From URL
convert_html_to_markdown({ url: 'https://example.com' })
// From HTML string
convert_html_to_markdown({ html: '<h1>Hello</h1>', extractContent: true })Returns: the Markdown content with the original and converted sizes.
Rate Limits
The tools that fetch a URL have the same limits as the free web tools. Each IP address can make 20 requests per minute and 100 requests per day for each tool.
Resources
nuxtseo://reference: a complete reference for all modules, config, and Schema.org patterns in one resource.
URI: nuxtseo://reference
Includes:
- Module overview with key config
- Key composables quick reference
- Complete nuxt.config.ts example
- Schema.org patterns for Article, Product, Person, FAQ, Organization
nuxtseo://modules: a list of all modules with stats (stars, downloads, versions).
URI: nuxtseo://modules
Nuxt SEO Pro MCP
The free server checks one URL at a time. The Nuxt SEO Pro MCP reads the data of the sites you connect. Its tools include:
next_actions: the ranked list of fixes for a sitegsc_query: Google Search Console clicks, impressions, and positionsinspect_url: every recorded issue for one URL, from index coverage, the crawl, Lighthouse, and Core Web Vitalscrux_vitals: Core Web Vitals field data from the Chrome UX Reportkeyword_researchandbacklinks: keyword, SERP, and backlink data