SEO Audit Console MCP

An MCP server joins Google Search Console history with a live site crawl and ranks findings by the clicks a fix could recover.

  • 101 ★ on the repository
  • Last commit
MCP server

Extended access

Why this level

  • The service account key opens read access to your Search Console history.
  • The paid DataForSEO and Majestic tiers spend money through your keys.
  • Crawling loads the site and checks pages' outbound links.
All reasons and checks

houtini-ai/seo-audit

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/seo-audit-console

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • The service account key opens read access to your Search Console history.
  • The paid DataForSEO and Majestic tiers spend money through your keys.
  • Crawling loads the site and checks pages' outbound links.

This is third-party code. Review the repository files before installing.

What it does

SEO Audit Console runs inside Claude, pulls Google Search Console history, crawls the site and joins both sources, so every finding carries its traffic at stake. There are more than a hundred and forty checks, ordered by expected clicks recovered rather than by how alarming the wording sounds. For each finding the server writes a ready fix: a 301 rule, JSON-LD markup or internal links. The core audit needs only your Search Console. DataForSEO, Majestic and a CrUX key are added later for competitors, keywords and links, and an empty value switches a tier off. Data for each property lives in a local SQLite file, and the fix generators never write to your site.

Who it is for. SEO specialists and site owners with Search Console access who want an audit prioritized by traffic rather than a crawler's list of remarks.

Good fit when

  • A page appears in search results but its CTR is below what its position suggests.
  • Traffic dropped and the pages losing clicks must be found.
  • Pages blocked in robots.txt still earn impressions and the decision about them should be deliberate.
  • After a migration a 301 redirect map is built from the 404 list.

Not a fit when

  • You want to audit someone else's site without access to its Search Console: the server crawls only sites you control.
  • You expect fixes to reach the site on their own: the generators only return output.
  • The machine has no Node.js 22 or newer.

Example request

Run an SEO audit for mysite.com, show the ten findings with the largest possible click recovery and prepare the fix for the first one.

MCP

Transport
stdio
Authentication
key is optional

Environment variables

GOOGLE_APPLICATION_CREDENTIALS required
Path to the Google service account JSON key with Search Console access
DATAFORSEO_USERNAME
DataForSEO login for the paid keyword and competitor data tier
DATAFORSEO_PASSWORD secret
DataForSEO password
MAJESTIC_API_KEY secret
Majestic key for the backlink data tier
CRUX_API_KEY secret
Google API key for Chrome UX Report field data

Limitations

Node.js 22 or newer and a Search Console property you own are required. The Google service account key is issued through Google Cloud, and the account email must be added as a user on the property in Search Console, or the server sees no data. DataForSEO and Majestic are paid, and spending goes through your keys. The Windows `.mcpb` bundle carries native modules for that system only, so on macOS and Linux connect through `npx`. Running through the Docker MCP gateway without a prebuilt image hits a timeout.

How to disable. Remove the `seo-audit-console` server from the client configuration with `claude mcp remove` or by editing the JSON. Delete the local database in `SAC_DATA_DIR` and the service account key separately.

FAQ

What does the core audit need?

Only `GOOGLE_APPLICATION_CREDENTIALS` with the path to the service account key and that account's access to the Search Console property. The other variables are optional.

What does CRUX_API_KEY do?

It turns on field Core Web Vitals data from the Chrome UX Report. The key is free and is restricted to the Chrome UX Report API.

Where does my data go?

Search Console history and the crawl live in local SQLite. Only the calls you trigger go out: Google and, if enabled, DataForSEO and Majestic. There is no telemetry.

How do I see the dashboard?

Ask "open the dashboard for mysite.com". The server returns a link to a local browser dashboard, and `get_dashboard` draws it in chat.

Why does every call time out under Docker MCP?

A `node:22-slim` worker with `npx` installs the package for 60-90 seconds, longer than the client waits. The README recommends an image with the package preinstalled and the `longLived: true` flag.

Discussion

No questions or reviews yet.

Google Search Console MCP

Google Search Console MCP Server for SEOs

An MCP server for Google Search Console: queries and pages with clicks and positions, URL indexing checks, sitemaps and ready SEO skills

MCP serverExtended access2.2KRepository stars

The seo command and an MCP server for SEO work: page audits, Search Console, analytics and keywords. Sign-in through Google

CLIExtended access620Repository stars

A CLI and agent skill for website SEO audits: technical SEO, Core Web Vitals, structured data, security and AI search readiness

CLIExtended access668Repository stars

All-In-One Free SEO Tool

All-In-One-Free-SEO-Tool

A self-hosted SEO suite with an MCP server and five skills for audits, keywords and site fixes in Claude Code and Cursor.

PluginBroad access126Repository stars
Official

crawlseo MCP compares the latest 28 days of site metrics with the preceding 28 days, alongside results from the latest crawl.

MCP serverExtended access694Repository stars

README in short

The audit rests on a `url_key` join that normalizes Search Console and crawl addresses. Findings are scored as expected clicks times yield and certainty, divided by effort. Each check can return a ready fix.

README badge

Report a problem