Skip to main content
Glama
zhangluka

grain-seo-mcp

by zhangluka
README.md
# grain-seo-mcp

SEO analysis MCP server — Google Search Console, Bing Webmaster Tools, GA4 analytics, with custom Grain Analysis Tools.

> English | [简体中文](./README_zh-CN.md)

## Grain Analysis Tools (new)

| Tool | What it does |
|------|-------------|
| `grain_content_decay` | Detect pages with 3 consecutive 30-day traffic decline |
| `grain_traffic_drops` | Diagnose WHY traffic dropped: ranking loss / CTR collapse / demand decline |
| `grain_ctr_benchmark` | Compare CTR vs industry benchmarks by position |
| `grain_verify_claim` | Anti-hallucination: re-query GSC to verify numeric claims (±5% tolerance) |
| `grain_topic_cluster` | Aggregate performance for URL path patterns (e.g. /blog/) |
| `grain_content_recommendations` | Prioritized SEO actions: update / create / consolidate |

## Platform Tools

Google Search Console, Bing Webmaster Tools, Google Analytics 4 tools. See `tools_list.md` for full list.

## Setup

### Google Cloud Credentials

1. Go to [Google Cloud Console](https://console.cloud.google.com/)
2. Create project, enable **Search Console API**
3. Create OAuth credentials (Desktop app) or Service Account
4. Download JSON

### Claude Code Configuration

Add to `~/.claude/settings.json`:

```json
{
  "mcpServers": {
    "grain-seo": {
      "command": "node",
      "args": ["/Users/bobby/Projects/Github/zhangluka/grain-seo-mcp/dist/index.js"],
      "env": {
        "GSC_OAUTH_SECRETS_FILE": "/path/to/client_secrets.json"
      }
    }
  }
}
```

First use opens browser for Google sign-in. Token cached after that.

## License

MIT

TDQS

C2.6/5.0

Scored across 104 tools

Disambiguation1/5

Several tools are explicitly aliases of each other (bing_get_top_queries for bing_analytics_query, bing_get_top_pages for bing_analytics_page), and many bing_* tools mirror seo_* tools with only an engine difference (cannibalization, lost queries, striking distance, low CTR). The overlapping brand analysis tools and multiple URL submission tools further blur boundaries, making reliable tool selection very difficult.

Naming Consistency2/5

Naming is inconsistent across the set: some tools use noun_verb (sites_list, sitemaps_submit, analytics_query), some use verb_noun (compare_engines, get_started), and many use noun phrases with no verb at all (seo_cannibalization, grain_content_decay, diagnostics, opportunity_matrix). The aliases also break expectation, such as bing_get_top_queries vs bing_analytics_query.

Tool Count1/5

With 104 tools, this is an extreme count that far exceeds the well-scoped 3-15 range. The count is inflated by engine-specific duplicates, aliases, and many overlapping analytical variants rather than genuinely distinct capabilities.

Completeness4/5

The tool surface is broadly comprehensive, covering Google Search Console, Bing Webmaster Tools, GA4, PageSpeed, schema validation, indexing, and diagnostics. Minor gaps exist such as missing Google-side link or keyword research equivalents, but the core SEO workflow is well represented.

Maintenance

ActivityInactive
ResponsivenessNo issues