SCMCP
SCMCP — Mehrinstanzenfähiger Google Search Console MCP
Ein gehosteter MCP-Server, der es beliebig vielen Benutzern ermöglicht, Claude mit ihren eigenen Google-Search-Console-Daten zu verbinden — mit benutzerdefinierten SEO-Analysen, die die rohe GSC nicht kann: Quick Wins, Content Decay, Kannibalisierung, CTR-Ausreißer, Marken-Splits, Ordner-Roll-ups, Intent-Klassifizierung und Korrelation mit Algorithmus-Updates.
Jeder Benutzer meldet sich mit Google an, erstellt eingeschränkte Zugriffstokens und verbindet Claude. Jedes Token kann nur die Daten seines Besitzers lesen. Alle Tools sind schreibgeschützt.
Erstellt durch Wiederverwendung des MCP-Servers von SearchPulse.
Architektur
Google sign-in ──► NextAuth ──► Account (OAuth tokens, ENCRYPTED at rest)
│
Claude ──HTTP──► /api/mcp ──► token → userId (+ site scope) ──► tools ──► GSC API
│
IP + per-token rate limits · revocation · expiry · auditLogin: Google OAuth (
webmasters.readonly), Sitzungen als signierte JWTs.Pro-Benutzer-MCP-Tokens:
scmcp_+ 256 Bit Entropie, nur als SHA-256-Hash gespeichert. Mehrere benannte Tokens pro Benutzer, jeweils optional site-scoped und ablaufend, einzeln widerrufbar, mit Audit zu letzter Nutzung/IP/Anzahl.Zustand: Postgres über Prisma.
Related MCP server: GSC MCP Server v2 - Remote Edition
MCP-Härtung
Maßnahme | Wo |
Tokens nur als SHA-256-Hashes gespeichert (256-Bit-Entropie) |
|
Formatprüfung vor jedem DB-Zugriff |
|
Widerrufene / abgelaufene Tokens authentifizieren nie |
|
Ein generischer 401 für fehlende/ungültige/widerrufene/abgelaufene (keine Aufzählung) |
|
Pro-Token-Site-Allow-Liste zentral bei jedem Aufruf erzwungen |
|
Pro-IP + Pro-Token-Ratenbegrenzung; DB-gestützt, fällt auf einen In-Memory-Limiter pro Instanz zurück, wenn die DB ausfällt (nicht vollständig offen) |
|
Client-IP nur aus Proxy-kontrollierten Headern + IP-validiert, sodass ein gefälschter |
|
Nutzungs-Audit (letzte Nutzung, IP, Anzahl) |
|
Google-OAuth-Tokens verschlüsselt im Ruhezustand (AES-256-GCM); Entschlüsselungsfehler gibt null zurück, nie rohen Chiffretext |
|
Schreibgeschützte Tool-Oberfläche (keine Schreib-Tools) |
|
|
|
Header-Auth bevorzugt; |
|
Same-Origin (CSRF)-Prüfung bei Token-Erstellung/Widerruf + Konsolenrouten |
|
Einrichtung
1. Datenbank
Erstellen Sie eine Postgres-Datenbank (z. B. Neon Free-Tier) und kopieren Sie deren Verbindungszeichenfolge.
2. Google Cloud
Google Cloud Console → Projekt erstellen/auswählen.
APIs aktivieren → Google Search Console API.
Anmeldedaten → OAuth-Client-ID erstellen → Webanwendung.
Autorisierte Weiterleitungs-URIs:
http://localhost:3000/api/auth/callback/google(Entwicklung)https://your-app.vercel.app/api/auth/callback/google(Produktion)
OAuth-Zustimmungsbildschirm: Extern; Benutzer als Testbenutzer hinzufügen (für eine private, nicht verifizierte App in Ordnung).
3. Konfigurieren und ausführen
npm install
cp .env.example .env.local # fill in all values
npm run db:push # create the tables
npm run devLanding: http://localhost:3000
Anmelden: http://localhost:3000/login
Dashboard (Tokens + Playground): http://localhost:3000/dashboard
Health: http://localhost:3000/api/health
MCP-Endpunkt:
http://localhost:3000/api/mcp
Generieren Sie Geheimnisse mit openssl rand -base64 32 (für NEXTAUTH_SECRET und
ENCRYPTION_KEY).
Auf Vercel + Neon bereitstellen
In ein Git-Repo pushen und in Vercel Importieren. Die Neon-Integration hinzufügen (oder eine
DATABASE_URLeinfügen).Umgebungsvariablen setzen:
DATABASE_URL,NEXTAUTH_URL(Ihre Produktions-URL),NEXTAUTH_SECRET,GOOGLE_CLIENT_ID,GOOGLE_CLIENT_SECRET,ENCRYPTION_KEY.Das Schema einmal gegen die Produktions-DB ausführen:
npm run db:push(lokal mit der Produktions-DATABASE_URLoder als einmaliger Job).Die Produktions-Weiterleitungs-URI in Google Cloud hinzufügen. Bereitstellen.
Verwendung
Ein Benutzer besucht Ihre URL, meldet sich mit Google an und landet auf /dashboard.
Er erstellt ein Token (optional auf bestimmte Sites / mit Ablaufdatum eingeschränkt) und kopiert es einmal.
Er verbindet Claude mit dem Snippet, das das Dashboard anzeigt:
claude mcp add --transport http scmcp "https://your-app.vercel.app/api/mcp" --header "Authorization: Bearer <TOKEN>"Dann fragen: "Was sind meine Quick Wins diesen Monat für sc-domain:example.com?"
Das Dashboard hat auch einen Tool-Playground (sitzungsauthentifiziert), um jedes Tool gegen Ihre eigenen Daten auszuführen, ohne Claude zu öffnen.
Tools
Live-GSC-API — list_gsc_properties · gsc_totals · gsc_top_queries ·
gsc_top_pages · gsc_performance_timeseries · gsc_compare_queries ·
gsc_compare_pages · gsc_page_queries · gsc_query_pages · gsc_breakdown ·
gsc_quick_wins · gsc_content_decay · gsc_cannibalization ·
gsc_new_lost_keywords · gsc_ctr_outliers · gsc_branded_split ·
gsc_folder_performance · gsc_query_intent · list_algorithm_updates
BigQuery-Bulk-Export (historisch, ungesampelt, ohne 1000-Zeilen-Limit) — bq_status ·
bq_totals · bq_top_queries · bq_top_pages · bq_timeseries ·
bq_by_country · bq_by_device · bq_page_queries · bq_query_pages ·
bq_custom_query
Weitere in src/lib/tools.ts / src/lib/tools-bq.ts
hinzufügen — ein Eintrag pro Tool; Bereichsprüfung und beide Transporte übernehmen es automatisch.
BigQuery-Connector
Der Bulk Data Export der Search Console streamt kontinuierlich Ihre vollständigen, ungesampelten GSC-Daten in BigQuery. SCMCP fragt diesen Export ab, damit Claude historische/große Daten über die Grenzen der Live-API hinaus abrufen kann.
Keine neuen Geheimnisse. Abfragen laufen mit dem eigenen OAuth-Token des Benutzers (SCMCP fügt den Bereich
bigquery.readonlyhinzu) gegen das eigene Google-Cloud-Projekt des Benutzers. Es gibt keine Service-Account-Schlüssel zu speichern.Einrichtung (pro Benutzer): In der Search Console → Einstellungen → Bulk-Datenexport, den Export auf ein GCP-Projekt ausrichten. Dann im SCMCP-Dashboard → Analytics → BigQuery, Projekt-ID, Dataset (beginnt mit
searchconsole) und Standort eingeben. Da der BigQuery-Zugriff ein neuer Bereich ist, müssen bestehende Benutzer sich einmal ab- und wieder anmelden.Sicherheit: Jede Abfrage verwendet BigQuery-NAMED-Parameter (injektionssicher), begrenzt abgerechnete Bytes (
BQ_MAX_BYTES_BILLED, Standard 10 GB) und respektiert die Site-Bereichsbegrenzung eines Tokens.bq_custom_queryführt ein einzelnes schreibgeschütztesSELECTaus und ist bei site-scoped Tokens deaktiviert.
Fragen Sie Claude: "Hole die letzten 12 Monate Top-Queries aus BigQuery für sc-domain:example.com."
Analytics-Dashboard
/dashboard/analytics rendert Ihre Daten als Diagramme (Recharts): Metrik-Karten mit
Vorperioden-Deltas, ein dual-achsigem Performance-Liniendiagramm mit Metrik-Umschalter,
sortierbare/durchsuchbare Top-Pages- und Top-Queries-Tabellen sowie Länder-/Geräte-Balken.
Ein Quellen-Umschalter wechselt die gesamte Ansicht zwischen der Live-GSC-API und
BigQuery. Es ist sitzungsauthentifiziert — kein MCP-Token erforderlich, um Ihre eigenen Daten anzusehen.
Stack
Next.js 16 · NextAuth v5 (Google) · Prisma + Postgres · mcp-handler ·
@modelcontextprotocol/sdk · googleapis · zod.
This server cannot be deployed
Maintenance
Related MCP Connectors
GA4, Google Ads and Search Console in Claude. Read-only OAuth, multi-account for agencies.
SEO research, Search Console, GA4 and PPC tools for Claude and ChatGPT.
SEO audits, Search Console, GA4, keyword and backlink data for Claude, ChatGPT and Cursor.
Google Search Console, GA4 and Bing Webmaster data for SEO and AI-search work. 20 read-only tools.
Related MCP Servers
- AlicenseBqualityCmaintenanceConnects Google Search Console with Claude AI to enable SEO professionals to analyze their SEO data through natural language conversations, providing access to property information, search analytics, URL inspection, and sitemap management.9,053 PyPI2,028MIT
- AlicenseNot gradedqualityNot gradedmaintenanceConnects Claude AI to Google Search Console with OAuth 2.0 authentication, enabling users to analyze search performance, inspect URLs, manage sitemaps, and export analytics data through natural language conversations.2-
- AlicenseNot gradedqualityDmaintenanceConnects Google Search Console with Claude AI to analyze SEO data through natural language, enabling search analytics reporting, URL inspection, indexing status checks, sitemap management, and data visualization for SEO professionals.MIT
- AlicenseNot gradedqualityDmaintenanceEnables Claude to access Google Search Console data including search performance, URL indexation, sitemaps, and built-in SEO analysis tools such as trending queries, cannibalization detection, and traffic drop diagnostics.189 npm11MIT