MCP server: One MCP server.

SEO

@rog0xMCP server · External

SEO analysis - meta tags, keywords, links, page speed

SEOv1.0.1MITTypeScript
Freeno charge per call

Runs on your machine from its package; the steps are below.

What it does

  1. Reads
  2. Writes
  3. High impact

At most: only reads or looks up information.

What it costs

Free

Odel charges nothing per call. The publisher may charge for its own service.

Runs locally over stdio

This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).

npm@rog0x/mcp-seo-toolsv1.0.1

Run

npx -y @rog0x/mcp-seo-tools

MCP client config

{
  "mcpServers": {
    "seo": {
      "command": "npx",
      "args": [
        "-y",
        "@rog0x/mcp-seo-tools"
      ]
    }
  }
}
README2 min read

mcp-seo-tools

An MCP (Model Context Protocol) server that gives AI agents a suite of SEO analysis tools. Analyze any public webpage for meta tags, heading structure, broken links, keyword density, page speed, and sitemap health — all without external API keys.

Tools

ToolDescription
seo_meta_analyzeAudit meta tags, Open Graph, and Twitter Card tags with scoring
seo_heading_checkValidate H1-H6 hierarchy, detect skipped levels and duplicates
seo_link_checkFind broken links, redirects, and missing anchor text
seo_keyword_densityMeasure keyword frequency and check target keyword placement
seo_page_speedMeasure TTFB, load time, HTML size, and resource counts
seo_sitemap_parseParse sitemap.xml, check freshness, duplicates, and compliance

Requirements

  • Node.js 18+
  • No API keys needed — all tools use direct HTTP requests and HTML parsing

Installation

bash
git clone <repo-url>
cd mcp-seo-tools
npm install
npm run build

Usage with Claude Code

Add to your Claude Code MCP configuration:

bash
claude mcp add seo-tools node D:/products/mcp-servers/mcp-seo-tools/dist/index.js

Usage with Claude Desktop

Add to your claude_desktop_config.json:

json
{
  "mcpServers": {
    "seo-tools": {
      "command": "node",
      "args": ["D:/products/mcp-servers/mcp-seo-tools/dist/index.js"]
    }
  }
}

Tool Details

seo_meta_analyze

Fetches a URL and inspects all meta-related elements. Checks title length (optimal: 30-60 chars), meta description length (optimal: 120-160 chars), canonical URL, viewport tag, language attribute, Open Graph completeness, and Twitter Card setup. Returns a 0-100 score.

Input: { "url": "https://example.com" }

seo_heading_check

Parses all headings on a page and builds a visual hierarchy tree. Flags: missing H1, multiple H1s, skipped heading levels, empty headings, overly long headings (>70 chars), and duplicate headings.

Input: { "url": "https://example.com" }

Extracts all anchor tags from a page, resolves relative URLs, deduplicates, and probes each link with a HEAD request (falling back to GET when needed). Classifies links as ok, broken, redirect, timeout, or error. Reports internal vs. external link ratio.

Input: { "url": "https://example.com", "max_links": 100 }

seo_keyword_density

Strips scripts, styles, and navigation, then tokenizes the remaining body text. Computes frequency and density for single words, bigrams, and trigrams (filtering stop words). When a target keyword is provided, checks whether it appears in the title, H1, meta description, and first paragraph.

Input: { "url": "https://example.com", "target_keyword": "seo tools" }

seo_page_speed

Measures Time to First Byte and total download time from the server's perspective. Counts external scripts, stylesheets, images, and iframes. Detects render-blocking scripts (missing async/defer), images without alt text or dimensions, missing compression, and absence of lazy loading.

Input: { "url": "https://example.com" }

seo_sitemap_parse

Accepts a sitemap URL or any page URL (automatically appends /sitemap.xml). Falls back to checking robots.txt for a Sitemap directive. Handles both <sitemapindex> and <urlset> formats. Validates URL count limits, lastmod freshness, duplicate entries, protocol consistency, and trailing slash patterns.

Input: { "url": "https://example.com" }

License

MIT

Similar modules

Browse SEO