Vai al contenuto principale

Strumenti della guida

Claude Code Claude Code Search Console Search Console
~8 min di lettura Agg. 31 ago 2026

Google Search Console dentro Claude Code

Collegare i dati di ricerca del tuo sito a un agente che li legge nel terminale: setup OAuth, le due trappole di Google Cloud, e le domande giuste da fargli.

Il limite da conoscere subito

Se sei arrivato qui pensando «collego Search Console e gli faccio indicizzare tutto», la risposta va data prima del setup, non dopo: non si può. E non è un limite dell'MCP, è un limite di Google.

L'Indexing API — l'unica API che accetta una richiesta di scansione — è ristretta a due tipi di contenuto. La documentazione ufficiale è di una riga sola e non lascia margini:

«The Indexing API can only be used to crawl pages with either JobPosting or BroadcastEvent embedded in a VideoObject

Annunci di lavoro e dirette video. Tutto il resto viene scartato, anche se la chiamata risponde 200. Diffida di qualsiasi server MCP che pubblicizza un «batch submit, 200 URL al giorno» per pagine normali: sta chiamando un endpoint che ignora quelle pagine.

Nemmeno la URL Inspection API indicizza: è in sola lettura. Ti dice cosa Google ha deciso su una URL, non le fa cambiare idea.

Il valore vero sta altrove, ed è più grande: l'MCP ti fa leggere il verdetto di Google, URL per URL. Sapere che 900 pagine sono ferme su «Crawled – currently not indexed» vale più di mille pulsanti «richiedi indicizzazione», perché quel verdetto nomina la causa — e la causa si corregge nel codice.

Cosa ti serve prima di partire

Tre cose, e vale la pena verificarle adesso: ognuna delle tre, se manca, si scopre a metà del setup OAuth, cioè nel punto peggiore.

  • property Una property verificata in Search Console, e soprattutto l'account Google che la possiede. Il token OAuth eredita i permessi di quell'account: autorizzare con l'indirizzo sbagliato produce una lista di property vuota e nessun messaggio d'errore utile.
  • uv Il server è in Python e si esegue con uvx, che scarica e aggiorna il pacchetto da solo: niente clone, niente virtualenv.
  • progetto Un progetto Google Cloud qualsiasi, anche quello di default. Non serve la fatturazione: la Search Console API sta nella quota gratuita.

Il server MCP è AminForou/mcp-gsc, open source. Non è di Google: nell'elenco ufficiale dei server MCP di Google ci sono oltre sessanta servizi Cloud, più Drive, Gmail e Calendar — Search Console non c'è. Un server ufficiale non esiste, e questo è il modo di verificarlo invece di supporlo.

Il client OAuth su Google Cloud

Cinque passi nella console di Google Cloud. Falli in quest'ordine: il terzo, se lo rimandi, ti costa un secondo giro fra sette giorni.

  1. 1

    Abilita la Search Console API

    Nella API Library del progetto, cerca «Search Console API» e premi Abilita. È gratis: non serve attivare la fatturazione, e il banner della prova da 300 $ va ignorato.

  2. 2

    Compila la schermata di consenso

    Tipo utente Esterno, nome dell'app, email di supporto e di contatto. È la schermata che vedrai tu stesso fra due minuti, non un modulo per Google.

  3. 3

    Pubblica l’app in produzione

    Il passo che quasi tutti saltano. Un'app lasciata in stato «Test» produce refresh token che muoiono dopo sette giorni: rifaresti il login ogni settimana. In produzione il token resta valido.

  4. 4

    Dichiara lo scope

    Uno solo: webmasters, lettura e scrittura. La scrittura serve a una cosa sola e legittima — inviare o reinviare la sitemap.

  5. 5

    Crea il client, tipo App desktop

    Non «Applicazione web». Il flusso usato dall'MCP è quello loopback su localhost, e solo il client desktop lo dichiara. Scarica il JSON: è la credenziale.

Alla fine Google mostrerà un avviso giallo: «la tua app richiede la verifica». Ignoralo. La verifica serve solo a togliere la schermata di allerta e ad alzare il tetto dei 100 utenti. Tu sei un utente, e l'app è tua: al login farai Avanzate → Vai a … (non sicuro), ed è corretto così.

Le due trappole

La chiave del service account è bloccata

Il percorso «ovvio» — service account + chiave JSON — sbatte contro l'organization policy iam.disableServiceAccountKeyCreation, che Google applica di default ai progetti nuovi. Per disattivarla serve il ruolo Organization Policy Administrator a livello di organizzazione; se il progetto sta in «No organization», quell'organizzazione non esiste e non c'è nulla da modificare. Vicolo cieco: usa OAuth.

Il client sbagliato non dà errore

Un client «Applicazione web» scarica un JSON che si apre con la chiave web e senza redirect_uris; quello desktop si apre con installed e contiene http://localhost. L'MCP accetta solo il secondo — e il primo non fallisce al momento del download, fallisce dopo, quando il browser non si apre. Controlla il file prima di andare avanti.

Metti il JSON scaricato dove resterà, fuori dal repo: è una credenziale viva sulla tua Search Console.

METTERE VIA LA CREDENZIALE
mkdir -p ~/.config/gsc
mv ~/Downloads/client_secret_*.json ~/.config/gsc/client_secrets.json
chmod 600 ~/.config/gsc/client_secrets.json

Poi verifica di avere il client giusto — trenta secondi che ne fanno risparmiare venti:

CONTROLLO DEL CLIENT
python3 -c "import json,os; d=json.load(open(os.path.expanduser('~/.config/gsc/client_secrets.json'))); print(list(d.keys()))"
# -> ['installed']  corretto
# -> ['web']        client sbagliato, rifallo

Collegare l’MCP a Claude Code

Un comando solo. --scope local lo registra solo per questo progetto e solo per te: non finisce in un file versionato, che è quello che vuoi per una credenziale personale.

NEL TERMINALE
claude mcp add gsc --scope local \
  --env GSC_OAUTH_CLIENT_SECRETS_FILE=$HOME/.config/gsc/client_secrets.json \
  -- "$(which uvx)" mcp-search-console

Poi riavvia Claude Code: i server MCP si caricano all'avvio della sessione, quindi quella in corso non vedrà ancora gli strumenti. Alla prima chiamata si apre il browser, scegli l'account, superi l'avviso di app non verificata e concedi l'accesso. Una volta sola: da lì in poi il token è in cache.

Se il browser non si apre, quasi sempre è il client sbagliato (trappola numero due). Ricontrolla che il JSON si apra con installed e non con web.

Cosa chiedergli il primo giorno

Una ventina di strumenti, ma sei fanno il lavoro. Uno solo scrive: tutti gli altri leggono.

  • list_properties Elenca le property visibili. Se torna vuoto hai autorizzato con l’account Google sbagliato: è il primo controllo, sempre.
  • list_sitemaps_enhanced Quante URL ha letto Google dalla tua sitemap, con errori e avvisi. Il confronto con quante ne emetti è la prima diagnosi.
  • manage_sitemaps Invia o rimuove una sitemap. È l’unica azione di scrittura di tutto il set.
  • get_search_analytics Query, click, impression, CTR, posizione. Filtrabile per pagina, paese, dispositivo.
  • compare_search_periods Due intervalli a confronto: serve a distinguere un calo reale dalla stagionalità.
  • batch_url_inspection Ispeziona fino a 10 URL per volta e restituisce il verdetto di Google su ognuna. È lo strumento che conta di più.

L'ordine che funziona è dal generale al singolo. Prima list_properties, per essere certo di parlare del sito giusto. Poi la sitemap: quante URL ne emetti e quante ne ha lette Google — se i due numeri divergono, il problema è lì e non serve guardare altro.

Solo dopo scendi sulle singole pagine. E qui c'è la mossa che cambia il risultato: ispeziona a campioni separati, non a caso. Dieci URL di una sezione, dieci di un'altra, dieci delle lingue secondarie. Un campione casuale ti restituisce una media; tre campioni per gruppo ti dicono quale gruppo è rotto.

Il verdetto che torna va letto alla lettera, perché ogni formula è una causa diversa con una correzione diversa: «Crawled – currently not indexed» punta a contenuto giudicato debole o duplicato; «Discovered – currently not indexed» a un problema di crawl budget; «Duplicate without user-selected canonical» a una canonical che non stai dichiarando come credi. Tre diagnosi, tre interventi. È questa la parte che l'MCP ti fa fare, e che il pulsante «richiedi indicizzazione» non ti farebbe fare mai.

Le fonti (e perché contano)

Questa guida tocca due argomenti dove il ricordo sbaglia spesso: i limiti di un'API e i nomi esatti di pacchetti e variabili. Sono cose da verificare alla fonte ogni volta, quindi la fonte è qui — con il motivo per cui è stata consultata.

Una nota di metodo che vale oltre questa guida: l'assenza di una cosa si dimostra con un elenco, non con una ricerca a vuoto. «Non ho trovato un MCP ufficiale di Google» e «Search Console non compare nell'elenco ufficiale dei prodotti con MCP» sembrano la stessa frase. Solo la seconda è una verifica.

Da brief confuso a UX/UI completa Un brief vago diventa un’app navigabile. Spot prodotto da una foto Una foto diventa uno spot animato, senza codice. Far guardare i video a Claude Claude guarda i tuoi video e li trasforma in testo. Higgsfield in Claude Code Genera immagini e video mentre programmi in Claude Code. Da un Loom a una pagina web Un video schermo diventa una pagina web, senza codice. Video Shorts con NotebookLM Le tue fonti diventano uno short verticale. Landing luxury su Lovable Landing page di lusso con un solo prompt. Excalidraw in locale Excalidraw gratis sul tuo computer, senza codice. Mistral OCR nel flow Estrai testo dai documenti con Mistral OCR. Claude SEO nel terminale 25 skill SEO gratis dentro Claude Code. Google Search Console dentro Claude Code I dati di Search Console dentro il terminale. Routine di Claude Code Claude che lavora da solo, a computer spento. Clonare una landing in React con v0 Clona una landing reale in codice React. Context economy con Claude Lavora leggero e non bruciare i limiti di Claude. Dal prompt alla skill auto-evolutiva Skill Claude che imparano dai tuoi errori. Da NotebookLM a Canva: presentazioni Slide da NotebookLM, finalmente editabili in Canva. La mappa per capire ogni tool AI 12 categorie per incasellare qualsiasi tool AI. PNG trasparenti con ChatGPT PNG con trasparenza reale, non la scacchiera finta. Infografiche animate con Gemini Infografiche che si animano in loop con Gemini. Ricerca di mercato con Deep Research Deep Research come tuo analista di mercato. Farti citare dai motori AI (AEO) Diventa una fonte che ChatGPT e Perplexity citano.