Seo

io.github.rog0xPublished by GitHub account rog0xv1.0.1Updated Oct 24, 2026

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

VerifiedSTDIODesktop onlyWeb Search & ScrapingDeveloper Tools

Overview

AI-generated overview

Local MCP server that gives an assistant SEO audit tools to analyze public webpages for meta tags, headings, links, keywords, speed and sitemaps.

What you can do
  • Audit meta tags, Open Graph and Twitter Card tags with a 0-100 score
  • Validate heading hierarchy and flag missing, skipped or duplicate headings
  • Probe page links and classify them as ok, broken, redirect, timeout or error
  • Measure keyword frequency and density, and check target keyword placement
  • Measure TTFB, load time, HTML size and resource counts, plus render-blocking and image issues
  • Parse sitemap.xml or robots.txt sitemap directives and check freshness, duplicates and compliance
When to use it
Useful when you want an assistant to audit a public site or page for on-page SEO issues and produce structured findings without signing up for an external SEO service.
Requirements
Runs as a local stdio process via the npm package @rog0x/mcp-seo-tools; needs Node.js 18 or newer. No API keys or environment variables are declared. Network access is required because tools fetch the target pages and links directly.
Before you install
Tools make outbound HTTP requests to whatever URL is supplied, including HEAD/GET probes of every link on a page, so internal or private addresses could be reached. Link checking is capped by a max_links parameter. Results reflect a single fetch from the local machine, not a full crawl or real-user performance data.

Installation

In SourceWeft

  1. Open Seo in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

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-toolsnpm installnpm 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" }

seo_link_check

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

Source: README.md at commit 9e4140d

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v1.0.1LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts