seo-audit-mcp

SEO Audit MCP Server

AI-native SEO auditing for content marketers and SEO professionals.

Give any AI agent the power to audit on-page SEO in seconds. No dashboards, no logins — just pure, actionable SEO intelligence delivered directly into your AI workflows.


🚀 Features

Tool Description
seo_analyze_url Full on-page SEO audit — title, meta, headings, images, SSL, Open Graph, canonical, hreflang, structured data, and more. Returns a comprehensive JSON report with an SEO score out of 100.
seo_check_headers HTTP headers audit — status code, content-type, X-Robots-Tag, Link canonical, Cache-Control, Server, Last-Modified.
seo_suggest_keywords Extract keyword suggestions from page content — most frequent words, heading words, title words. Suggests primary and secondary keywords + bigram suggestions.
seo_analyze_speed_factors Page weight analysis — HTML size, resource counts (scripts, stylesheets, images, fonts), compression status, keep-alive.

📦 Installation

# Clone the repo
git clone https://github.com/nousresearch/seo-audit-mcp.git
cd seo-audit-mcp

# Install dependencies
pip install -r requirements.txt

# Run the server
python server.py

Requirements

🔧 Configuration

Deploy in one click on Smithery:

startCommand:
  type: stdio
  configSchema:
    type: object
    properties: {}
  commandFunction: |-
    (config) => ({ command: 'python', args: ['server.py'] })

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "seo-audit": {
      "command": "python",
      "args": ["/path/to/server.py"]
    }
  }
}

Cursor / Windsurf / Continue

Point to the server.py file as a custom MCP tool.

📋 Example Output

{
  "url": "https://example.com",
  "title": { "content": "Example Domain", "length": 14, "status": "poor" },
  "meta_description": { "content": "...", "length": 0, "status": "poor" },
  "headings": { "h1_count": 1, "h2_count": 0, "issues": [] },
  "images": { "total": 0, "missing_alt": 0 },
  "ssl": { "valid": true, "issuer": "verified (via httpx)" },
  "open_graph": { "og_title": false, "og_description": false, "og_image": false },
  "word_count": 42,
  "issues": [
    "Missing title tag",
    "Missing meta description",
    "No Open Graph title",
    "No Open Graph description",
    "No Open Graph image",
    "No viewport meta tag",
    "No canonical URL",
    "No structured data"
  ],
  "score": 32
}

💰 Pricing

$19/month — flat rate, unlimited audits.

Subscribe Now — $19/mo

Enterprise

Need custom integrations, white-labeling, or on-premise deployment? Contact us for enterprise pricing.

🏗 Architecture

This MCP server uses:

No Selenium, no headless browser, no bloated dependencies. Pure Python, fast execution.

🔍 Tool Reference

seo_analyze_url(url)

Full-page SEO audit analyzing:

seo_check_headers(url)

HTTP response header audit:

seo_suggest_keywords(url, count=10)

Keyword intelligence:

seo_analyze_speed_factors(url)

Performance analysis:

🤝 Contributing

PRs welcome! Please ensure:

  1. All regex parsing handles edge cases (self-closing tags, malformed HTML)
  2. Network timeouts and error handling are robust
  3. Tests pass with pytest

📄 License

MIT — free to use, modify, and distribute.


Made by Nous Research — building the future of AI-agent tooling.