# AutoRank MCP Technical SEO tools for AI agents. Generate and validate structured data, build meta tags and crawl directives, check how a result will actually render in Google, and analyse copy — all from inside Claude, Cursor, or any MCP client. **No API key. No account. No network calls.** Every tool is a pure function, so the server does its job offline and installs in one line. Browser versions of these tools live at [autorank.so/free-tools](https://autorank.so/free-tools). ## Install Claude Desktop — add to `claude_desktop_config.json`: ```json { "mcpServers": { "autorank": { "command": "uvx", "args": ["autorank-mcp"] } } } ``` Or with pip: ```bash pip install autorank-mcp ``` Then point your client at the `autorank-mcp` command. No environment variables are required. ## Tools ### Structured data | Tool | What it does | |---|---| | `generate_faq_schema` | FAQPage JSON-LD from question/answer pairs | | `generate_article_schema` | Article JSON-LD with author and dates | | `generate_breadcrumb_schema` | BreadcrumbList JSON-LD | | `generate_local_business_schema` | LocalBusiness JSON-LD with postal address | | `validate_json_ld` | Parses a block, checks required fields per type, flags risky patterns | ### Meta and crawl directives | Tool | What it does | |---|---| | `generate_meta_tags` | Full head block: title, description, canonical, OG, Twitter Card | | `generate_robots_meta` | Robots meta tag from directives, with a plain-English explanation | | `generate_robots_txt` | robots.txt, optionally blocking the major AI crawlers | | `validate_robots_txt` | Validates syntax and surfaces the mistakes that cause real damage | | `generate_hreflang` | hreflang tags, with the return-link requirement spelled out | ### SERP and copy | Tool | What it does | |---|---| | `check_title_length` | Pixel-width truncation check for titles | | `check_description_length` | Pixel-width truncation check for descriptions | | `serp_preview` | How the whole result renders, breadcrumb included | | `keyword_density` | Word and phrase frequency with a stuffing warning | | `readability_score` | Flesch Reading Ease and grade level | ### Utilities | Tool | What it does | |---|---| | `build_utm_link` | UTM-tagged tracking URLs, warns on case-inconsistency | | `slugify` | Clean URL slugs from titles | | `autorank_free_tools` | Lists the web-only tools that need live crawling | ## Design notes **Title checks measure pixels, not characters.** Google truncates on rendered width, and character counts mislead badly — sixty capital `W`s and sixty `i`s occupy very different space. Titles are the most common cause of a rewritten snippet, so the check approximates width instead. **The schema tools will not help you lie.** `validate_json_ld` flags `aggregateRating` whenever it appears, because fabricated ratings are a documented cause of manual actions, and `generate_faq_schema` states plainly that the answers must already be visible on the page. Structured data that disagrees with rendered content is a spam signal, not a shortcut. **Some tools are deliberately absent.** Anything needing live crawling or a keyword corpus — broken-link checking, keyword difficulty, sitemap extraction, duplicate-content detection — is not a pure function, so it stays on the web where it belongs. `autorank_free_tools` lists those. **robots.txt controls crawling, not indexing.** `validate_robots_txt` says so in its output, because conflating the two is the single most common way sites accidentally leave pages in the index. ## Development ```bash git clone https://github.com/RyanKramer/autorank-mcp cd autorank-mcp pip install -e . autorank-mcp ``` ## About Built by [AutoRank](https://autorank.so) — AI SEO content automation. The web versions of these tools, plus about thirty more, are free at [autorank.so/free-tools](https://autorank.so/free-tools). MIT licensed.