
Company News
AWS Security Hub Adds Socket for Supply Chain Security
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.
@rog0x/mcp-seo-tools
Advanced 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.
| Tool | Description |
|---|---|
seo_meta_analyze | Audit meta tags, Open Graph, and Twitter Card tags with scoring |
seo_heading_check | Validate H1-H6 hierarchy, detect skipped levels and duplicates |
seo_link_check | Find broken links, redirects, and missing anchor text |
seo_keyword_density | Measure keyword frequency and check target keyword placement |
seo_page_speed | Measure TTFB, load time, HTML size, and resource counts |
seo_sitemap_parse | Parse sitemap.xml, check freshness, duplicates, and compliance |
git clone <repo-url>
cd mcp-seo-tools
npm install
npm run build
Add to your Claude Code MCP configuration:
claude mcp add seo-tools node D:/products/mcp-servers/mcp-seo-tools/dist/index.js
Add to your claude_desktop_config.json:
{
"mcpServers": {
"seo-tools": {
"command": "node",
"args": ["D:/products/mcp-servers/mcp-seo-tools/dist/index.js"]
}
}
}
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" }
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 }
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" }
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" }
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" }
MIT
FAQs
MCP server providing SEO analysis tools for AI agents
We found that @rog0x/mcp-seo-tools demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Company News
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.

Research
/Security News
Popular npm packages keyv and cacheable compromised.

Security News
A misconfiguration gave three Anthropic models internet access, and one, believing it was in a simulation, shipped a credential-stealing package to PyPI.