Skip to main content
Glama
AI SEO Toolkit

AI SEO Toolkit

by Bishwas-py

SEO Toolkit

Eight SEO and AI-search workflows for Claude and ChatGPT, built on measured data rather than invented numbers. MIT licensed.

Workflow

What it does

gsc_audit

Reads a Search Console export: striking distance, cannibalisation, decay, click-through gaps

traffic_drop

Diagnoses lost rankings in cost order, rendering and crawl before any talk of an update

keyword_clusters

Seed keyword into themes, long-tails, intent, titles, metas

ai_citations

Getting quoted by AI answers, from Google's published guidance

competitor_gap

Reads the page that outranks you, writes past it

content_refresh

Audits a page you own against what currently ranks

schema_markup

Valid JSON-LD, placeholders instead of invented values

article_draft

A first draft a human finishes

Install

In claude.ai or the Claude desktop app, go to Customize > Plugins > Add > Add marketplace and enter:

Bishwas-py/ai-seo-toolkit

Then select AI SEO Toolkit and Add.

From Claude Code instead:

/plugin marketplace add Bishwas-py/ai-seo-toolkit
/plugin install ai-seo-toolkit@webmatrices-seo

That is the whole install. It covers chat on web, desktop and mobile, Cowork, and Claude Code from one account. To pick up a new version later, run /plugin update ai-seo-toolkit@webmatrices-seo, or turn on auto-update for the marketplace.

Other clients

The plugin carries two things, and they reach different places. The skill is the routing and the house rules, and it loads in Claude only. The MCP server carries each workflow's full procedure in the tool's own response, so it stands on its own anywhere it can run.

Client

Skill

Workflows

Notes

Claude Code

yes

yes

Everything, and the only place setup can be automated for you

Claude Desktop, Cowork

yes

yes

Cowork runs the bundled server. For the tools in a plain chat, add the server by hand, below

Codex

no

yes

Server only. The workflows are self-contained, so nothing is really lost

ChatGPT

no

no

It will not launch a local server. See below

Claude Desktop, by hand. The bundled server runs in Cowork and Claude Code, not in a plain desktop chat. To get the workflows there, add it to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "ai-seo": { "command": "npx", "args": ["-y", "ai-seo-toolkit"] }
  }
}

Codex. Either codex mcp add ai-seo --command npx --args -y ai-seo-toolkit, or write it into ~/.codex/config.toml yourself:

[mcp_servers.ai-seo]
command = "npx"
args = ["-y", "ai-seo-toolkit"]

The skill does not load in Codex, so no workflow is chosen for you. Call the one you want by name and follow what it returns.

ChatGPT. Not supported, and not through any flag. ChatGPT reaches MCP servers over HTTPS and never launches one on your machine, so a local stdio server is out of reach. Hosting this behind an HTTPS endpoint or OpenAI's Secure MCP Tunnel would work, and would also put the browsing and the Search Console session on a server rather than your own signed-in Chrome, which is most of why the numbers here are measured. The Chrome extension is the honest answer for ChatGPT.

Related MCP server: GSC-MCP

Pair with MCP Browser

Every workflow that touches a URL must fetch the page and prove it read it. A plain HTTP fetch cannot distinguish a genuinely thin page from one that only looks empty to a fetcher, and that distinction is the entire diagnosis when a site renders through JavaScript.

MCP Browser drives real Chrome with your signed-in session, so the toolkit can render JavaScript, fetch both ways and compare, and read Reddit, BlackHatWorld and forums behind a login.

brew install --cask bishwas-py/tap/mcpbrowser

macOS on Apple Silicon, free for 50 requests a day. Everything here works without it, and will say in one line when it could not verify rendering.

What it refuses to recommend

Google publishes an AI optimisation guide that contradicts most of what is sold as GEO and AEO. These workflows encode the guide. They will not tell you to add an llms.txt file, chunk your content, write in a special style for AI, treat structured data as a citation requirement, or buy brand mentions, and they will push back if asked.

Two findings they do hold to: a page must be indexed and eligible to show with a snippet before it can appear in a generative answer, and across 1.4 million prompts the title, snippet and URL decided whether a page was opened at all, while the average cited page was around 500 days old.

Develop

npm install
npm test                             # drives the real server over stdio
npm start                            # run the server directly
claude --plugin-dir .                # load the plugin from this working copy
claude plugin validate .             # check the manifest and components

server/workflows.js is the single source of truth. Each workflow declares its arguments once, and the server derives both the MCP prompt and the MCP tool from that declaration, so the two can never drift apart.

Release

Pushing a tag is the whole release.

npm version patch && git push --follow-tags

That bumps package.json, mirrors the number into .claude-plugin/plugin.json through the version lifecycle hook, commits, tags, and pushes. CI then runs the tests, refuses to continue if the tag disagrees with package.json, publishes the server to npm and cuts a GitHub release with generated notes.

Installed plugins pick the new version up from this repository on their own. The npm package is what .mcp.json starts, so it is plumbing rather than something anyone installs by hand.

There is no NPM_TOKEN. The workflow authenticates with npm trusted publishing, which exchanges a short-lived GitHub OIDC token for publish rights and attaches provenance automatically, so there is no long-lived credential to leak or rotate.

One-time setup

Trusted publishing is configured on an existing package, so the first publish is manual:

npm login
npm publish            # claims the name

Then on npmjs.com, under the package's Settings, add a trusted publisher: repository Bishwas-py/ai-seo-toolkit, workflow release.yml. Every release after that is the one-liner above.

The repository must also be public before the release asset is downloadable by anyone else. While it is private, the download link on the landing page returns 404 for everyone but you.

The test suite asserts the MCP surface over a real stdio connection and checks the content guarantees, including that no workflow recommends a tactic Google has said does not work.

Available Tools

8 tools
ai_citationsA

Get a page quoted by AI Overviews, AI Mode, ChatGPT search and Perplexity, using Google's published guidance rather than GEO folklore. Returns the full instructions to follow; carry them out rather than summarising them.

Inputs: subject (required), region, tongue.

article_draftC

A first draft a human finishes, ending with the three things only they can add. Returns the full instructions to follow; carry them out rather than summarising them.

Inputs: topic (required), voice, length, tongue.

competitor_gapB

Read a page that outranks you, find what it is missing, and write the replacement. Returns the full instructions to follow; carry them out rather than summarising them.

Inputs: url (required), voice, tongue.

content_refreshA

Audit a page you own against what currently ranks, and say exactly what to change. Returns the full instructions to follow; carry them out rather than summarising them.

Inputs: url (required), depth, region, target, +1 more.

gsc_auditB

Turn a Google Search Console export into a ranked fix list: striking distance, cannibalisation, decay and click-through gaps. Works from measured data, not estimates. Returns the full instructions to follow; carry them out rather than summarising them.

Inputs: days, site, focus, region, +1 more.

keyword_clustersB

Turn a seed keyword into themed clusters with long-tail terms, intent, titles and meta descriptions. Returns the full instructions to follow; carry them out rather than summarising them.

Inputs: seed (required), width, region, tongue.

schema_markupB

Valid JSON-LD for any Schema.org type, with placeholders instead of invented values. Returns the full instructions to follow; carry them out rather than summarising them.

Inputs: subject (required), type, output.

traffic_dropB

Diagnose lost rankings or traffic in cost order: rendering, indexing and crawl before any talk of an algorithm update. Returns the full instructions to follow; carry them out rather than summarising them.

Inputs: url (required), when, shape, region, +1 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.5/5.0

    Scored across 8 tools

    Disambiguation4/5

    Each tool targets a distinct SEO task (GSC audit, traffic drop diagnosis, keyword clustering, AI citations, competitor gap, content refresh, schema, article draft). Minor overlap exists between gsc_audit and traffic_drop for diagnosing rankings, and between competitor_gap and content_refresh for content auditing, but descriptions clarify the intended use.

    Naming Consistency5/5

    All tools use consistent snake_case with noun_noun or acronym_noun patterns (e.g., traffic_drop, ai_citations). No mixing of conventions, and names are predictable and readable.

    Tool Count5/5

    8 tools is well within the ideal 3–15 range for a focused SEO toolkit. Each tool has a clear distinct workflow and earns its place.

    Completeness4/5

    Covers keyword research, content creation/refresh, competitor analysis, schema markup, AI citations, and diagnostic workflows from GSC/traffic data. Minor gaps like backlink analysis or technical site audits exist but are beyond the apparent AI-era content focus.

    Maintenance

    ActivitySlowing
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      B
      maintenance
      Lets you ask Claude questions about your Google Search Console data and get real analysis, not raw API rows. Provides 20 tools for analysis, indexing, and safety.
      29
      2,162 npm
      186
      Apache 2.0
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables natural language analysis of Google Search Console data through Claude, with pre-built tools for quick wins, cannibalization detection, content decay, and more.
      Apache 2.0
    • A
      license
      B
      quality
      C
      maintenance
      Connects Claude to Google Search Console, GA4, Bing Webmaster Tools, IndexNow, PageSpeed Insights, AdSense and Google Ads Keyword Planner, plus live technical SEO audits of pages and sitemaps. Users ask plain-language questions about traffic drops, index status, canonicals, AI referral traffic and keyword volumes, and answers are pulled live from the APIs in real time.
      28
      14 npm
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables Claude, ChatGPT, Cursor, and other MCP clients to query Google Search Console, GA4, PageSpeed Insights, and live SERPs through 38 read-only SEO tools for quick wins, content decay, indexing, Core Web Vitals, AI traffic, and conversion analysis.
      2
      MIT