SearchLink Lite (Google Search Console)

Connects Google Search Console to your AI assistant. Ask how your site did this month, which pages lost clicks, which queries get impressions but no clicks, or whether a page is indexed. Six read-only tools, runs locally with a service account or gcloud credentials. Totals match the Search Console UI.

Documentation

SearchLink Lite

HOL Guard Scanner Indexed on TensorBlock MCP Index

Google Search Console inside Claude, Cursor and any MCP client. Runs on your machine, read-only, free (MIT).

Ask things like:

  • "How did example.com do on Google in the last 28 days?"
  • "Which pages lost the most clicks?"
  • "Which queries get impressions but no clicks?"
  • "Is https://example.com/pricing indexed?"

Tools

ToolWhat it answers
list_sitesWhich sites are in your Search Console
site_overviewClicks, impressions, CTR, position vs the previous period, biggest drops and gains, up to 3 things to do now
search_performanceAny breakdown by query, page, country, device or date, with filters and period comparison
find_opportunitiesHigh impressions but low CTR, queries ranking #8-20, pages losing clicks
inspect_urlIs this page indexed, last crawl, Google's canonical
sitemapsSitemap status, errors and URL counts
page_checkTitle, description, canonical, noindex, headings, thin content, alt text, structured data errors
algorithm_updatesGoogle's own ranking update history, so you know whether a drop was an update

Totals come from the date dimension, so they match the Search Console UI. (Summing page rows double-counts impressions.)

Setup (about 10 minutes)

You need a Google credentials file that can read Search Console. A service account is the most reliable option.

  1. In Google Cloud Console, pick or create a project and enable the Google Search Console API.
  2. Go to IAM & Admin > Service accounts, create one (no roles needed), then Keys > Add key > JSON. Save the file somewhere safe.
  3. In Search Console, open Settings > Users and permissions > Add user, paste the service account email, and choose Restricted. Repeat for each site.
  4. Add the server to your client (below), pointing GOOGLE_APPLICATION_CREDENTIALS to the JSON file.

Already use gcloud? This also works instead of steps 1-3:

gcloud auth application-default login --scopes=https://www.googleapis.com/auth/webmasters.readonly,https://www.googleapis.com/auth/cloud-platform

Claude Desktop

In claude_desktop_config.json:

{
  "mcpServers": {
    "searchlink": {
      "command": "npx",
      "args": ["-y", "github:GlobalMatchHub/searchlink-lite"],
      "env": { "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/key.json" }
    }
  }
}

Claude Code

claude mcp add searchlink -e GOOGLE_APPLICATION_CREDENTIALS=/path/to/key.json -- npx -y github:GlobalMatchHub/searchlink-lite

Cursor

In ~/.cursor/mcp.json, use the same block as Claude Desktop.

One file install

If your client supports MCP bundles, download searchlink-lite-0.2.0.mcpb from Releases and open it. It asks for your credentials file and nothing else.

It is also in the official MCP Registry as com.namubase.searchlink/searchlink-lite.

Requires Node.js 18 or newer.

Privacy

Everything runs locally. Your credentials and data go only to Google's APIs. Nothing is sent to us.

Want it without the setup?

SearchLink is the hosted version (see a live report, no sign-in): sign in with Google (no key files), and it adds change tracking with before-and-after measurement, content decay, brand split, history kept past Google 16 months, Copilot citation tracking, page speed, a one-screen dashboard, a Monday email with 3 things to fix, and alerts when clicks drop. Works in Claude, ChatGPT and Cursor. Free for 1 site.

License

MIT