Mindket

Chat agent for your Google Search Console data

Newversion 1 · updated

Overview

An n8n workflow with a webhook chat endpoint and an OpenAI agent. It lists your Search Console properties, builds a query from your request, calls the API with your Google login and answers with a Markdown table.

Chat agent for your Google Search Console data is an n8n workflow in the Marketing & SEO category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.

At a glance

Runs in
  • n8n Cloud: import the file into a new workflow there
  • Your own n8n server: the same file and steps, behind a public address
  • A chat front end: any tool that can post chatInput and sessionId as JSON with Basic Auth
  • Postgres or Supabase: the chat history table lives there

Platform

Connects 3 apps

How it works

Trigger

Web request

It starts when a POST with Basic Auth reaches the search-console-chat webhook with:

  • chatInput, your message
  • sessionId, a key for the conversation

Actions

  1. The webhook takes the message and the session id, and adds today’s date
  2. The agent lists your Search Console properties and asks which one you mean
  3. It builds a query with dates, dimensions and a row limit from your request
  4. The Search Console API is called with your Google login, and the rows are gathered
  5. The agent writes a Markdown table, and Postgres keeps the session’s history
  6. The webhook sends back the answer and the raw tool results

Result

A Markdown table of Search Console results in the webhook’s reply, with the raw data beside it

Integrations

What you need before you start.

OpenAI

Language model

Runs gpt-4o as the agent’s model, which asks follow-up questions, builds the queries and writes the table.

NeedsOpenAI API key

Google Search Console

Search data

Lists your properties and returns search performance rows for the dates, dimensions and row limit the agent asks for.

NeedsA Google OAuth2 credential with the read-only Search Console scope

PostgreSQL

Chat memory

Stores each session’s messages in a table, and the model sees the last 5 exchanges.

NeedsA Postgres login. The memory node creates its table

Workflow check

Checked by Mindket on 13 Nov 2026

Steps
13 steps, starting when another workflow calls it or when its webhook is called
AI
1 step calls an AI model: AI Agent
Sign-ins
Signs in to: www.googleapis.com, Postgres and OpenAI
API keys
No API key is left in the file
Step types
Mindket’s checker reads 7 of its 8 step types. It does not read: HTTP Request

Read from the workflow’s file, not from a run.

About

What it is

This n8n workflow lets you chat with your Google Search Console data. A webhook takes a message and a session id, and an OpenAI agent starts by listing the properties your Google account can reach. It asks which one you mean, turns your request into a Search Console query and replies with a Markdown table. The query step is the lower half of the same workflow, which the agent calls as a tool. A Postgres table keeps each session’s history, and the model sees the last 5 exchanges. Sixteen nodes do the work, beside fourteen sticky notes.

Who it suits

SEO specialists, site owners and agencies who want quick answers from Search Console without opening its reports, and who can set up a Google OAuth credential. Skip it if you need charts or a ready chat page. The workflow only answers requests posted to its webhook, so a front end is yours to bring.

Who uses it, and how
IndustryWho uses itHow they use itExample
SEO agenciesAccount managersPull a client’s top queries before a callA manager asks for last month’s top 50 queries with clicks and impressions.
PublishingEditorsSee which pages bring search trafficAn editor asks for the top pages by clicks over the last 3 months, as a table.
EcommerceSite ownersCheck where search visitors come fromAn owner asks for clicks by country and device.
SoftwareGrowth marketersSee which queries lead to which pagesA marketer asks for the top queries by page for the last month.

You need solid n8n for this one: a Google Cloud OAuth client, a Postgres database, a webhook login and a front end that posts to it.

Where to use it

Any n8n with a public address that can reach Google, OpenAI and your database will run it. The agent’s answer is sent back as the webhook’s reply.

  • n8n Cloud: import the file into a new workflow there
  • Your own n8n server: the same file and steps, behind a public address
  • A chat front end: any tool that can post chatInput and sessionId as JSON with Basic Auth
  • Postgres or Supabase: the chat history table lives there

Setup

Download saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. The Google credential takes the longest.

What you need first
NeedDetail
n8nOn n8n Cloud or on a server of your own, with a public address
GoogleA Cloud project with the Search Console API on, an OAuth client, and an account that can see the properties
OpenAIAn API key that can use gpt-4o
PostgresA database for the chat history. The memory node creates its table
Webhook loginA Basic Auth username and password of your choosing
  1. In n8n, create a workflow, open its menu, choose Import from File and pick workflow.json.
  2. Add an OAuth2 API credential for Google with your client’s id and secret and the read-only scope https://www.googleapis.com/auth/webmasters.readonly, then connect your account. Select it in the two HTTP Request nodes that call Google’s webmasters API, both named Search Console.
  3. Add a Postgres credential and select it in Postgres Chat Memory.
  4. Add an OpenAI credential and select it in OpenAI Chat Model.
  5. Add a Basic Auth credential with a username and password you choose, and select it in the webhook node.
  6. Save the workflow. Call Search Console Tool calls it by its own id, so it needs the saved copy.
  7. Open the webhook’s test address and post a message with your login and a body such as {"chatInput": "Which sites can you see?", "sessionId": "test-1"}.
  8. Press Publish. The production address ends in /webhook/search-console-chat.

How to use it

Post each message with the same sessionId for one conversation. The agent greets you with your properties, asks which one you want and confirms the dates, dimensions and row count before it queries. The reply holds output with its answer and intermediateSteps with the raw tool results, which a front end can chart.

What to change for a different result
To changeWhere
The agent’s manner and defaultsThe system message in AI Agent: the greeting, 3 months, 100 rows and the table format
The modelgpt-4o in OpenAI Chat Model, with a limit of 16000 output tokens
History kept in viewPostgres Chat Memory: a window of 5 exchanges, and the table name
The queryThe body of the HTTP Request node that runs it, which sends dataState as all
The webhookIts path and authentication in the webhook node

Example

An SEO manager posts “Which sites can you see?”, picks one property from the reply and asks for the top 20 queries of the last 3 months with clicks and impressions.

The agent calls the tool twice: once with website_list and once with custom_insights, with the property, two dates, the query dimension and a row limit of 20. The rows come back as a Markdown table. Check the dates it chose before you rely on the figures.

For newcomers and experts

If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. The top half is the chat: a webhook, the agent, its model, its memory and the tool. The lower half is that tool, which turns the agent’s request into a Search Console call. Start with the property list before you ask for any data.

For experts. The tool passes one JSON string. The first Set node parses it with parseJson(), and Switch routes on request_type.

Where to look closer
NodeWhat it doesWhat to know
The webhookA POST with Basic Auth, answered by Respond to WebhookThe reply is the agent’s whole item, intermediateSteps included
Set fieldsTakes chatInput and sessionId from the body or the top level, and adds the dateThe agent’s prompt carries date_message, so it can work out relative dates
Call Search Console ToolA Tool Workflow node set to this workflow’s own idThe workflow must be saved
The query requestA POST to the property’s searchAnalytics/querystartRow is fixed at 0
Postgres Chat MemoryStores the chat history by sessionThe model sees the last 5 exchanges

Good to know

The endpoint is open to anyone you give the login to, and gpt-4o is scheduled to go.

  • Models: OpenAI’s deprecations page, read on 12 November 2026, gives 14 January 2027 as the shutdown of gpt-4o, with gpt-6-luna as the replacement. Change the model in OpenAI Chat Model before then. The sticky notes still name gpt-4o and gpt-4o-mini
  • Open endpoint: the webhook is protected only by the Basic Auth you add. Without it, anyone with the address can use your OpenAI key and list your properties
  • Paging: the query always starts at row 0, so ask for a larger row limit. The API allows 1 to 25,000 rows a request, and 1,000 by default
  • Fresh data: dataState is all, which includes fresh data
  • Dimensions: the agent’s prompt lists page, query, searchAppearance, device and country. The API also takes date and hour
  • Sessions: a session id is the only key to a chat’s history, so use ids that are hard to guess
  • Your data: the Search Console rows, your questions and the history go to OpenAI, and the history stays in your Postgres table
  • Credentials: the JSON holds none, and the tool’s workflow id is the workflow’s own

README and files

README

Chat agent for your Google Search Console data

An n8n workflow that answers questions about your Search Console data. A webhook takes a message and a session id, and an
OpenAI agent lists your Search Console properties, builds a query from your request, calls Google's API and replies with a
Markdown table. A Postgres table keeps each session's chat history.

What is inside

  • workflow.json: the workflow as n8n exports it, 30 nodes, fourteen of them sticky notes. It holds no credential.
    The agent and its tool sit in one file: the tool is the lower half of the canvas, which starts at Tool calling.
  • README.md: these notes.

What we changed from the original copy

  • Every credential link is gone, so you select your own: OpenAI, Postgres, Basic Auth and the Google OAuth2 one.
  • Call Search Console Tool pointed at a workflow id in its author's n8n, which was the id of this same workflow. It now
    reads {{ $workflow.id }}, so the tool calls whichever copy you import.
  • The webhook's path was its author's webhook id followed by /chat. It is now search-console-chat.
  • The workflow was saved as active. Mindket's copy is inactive until you publish it.
  • The big sticky note held the author's screenshots, a link to n8n's guide and some advice on scopes. It now holds a short title.
  • Nothing else. The file has no Code node, and its expressions needed no repair.

Before you start

  • An n8n instance, on n8n Cloud or your own server, with a public address for the webhook.
  • An OpenAI API key.
  • A Postgres database for the chat history, such as a Supabase project's. The memory node creates its table.
  • A Google Cloud project with the Search Console API enabled, an OAuth client, and a Google account that can see the
    properties you want to ask about.
  • A chat front end that can post JSON to a webhook, or a command line tool that can.

Set it up

  1. In n8n, create a workflow, open its menu and choose Import from File. Pick workflow.json.
  2. Add an OAuth2 API credential for Google with your client's id and secret and the read-only scope
    https://www.googleapis.com/auth/webmasters.readonly, then connect your account. Select it in
    Search Console - Get Custom Insights and ## Search Console - Get List of Properties.
  3. Add a Postgres credential and select it in Postgres Chat Memory. The table is insights_chat_histories.
  4. Add an OpenAI credential and select it in OpenAI Chat Model.
  5. Add a Basic Auth credential with a username and password of your choosing, and select it in Webhook - ChatInput.
  6. Save the workflow. Call Search Console Tool calls it by its own id, so it needs the saved copy.
  7. Open the webhook's test address and post a message with its Basic Auth login and a body such as
    {"chatInput": "Which sites can you see?", "sessionId": "test-1"}. The reply holds output with the agent's answer and
    intermediateSteps with the raw tool results.
  8. Press Publish. The production address ends in /webhook/search-console-chat.

How a run goes

  1. Webhook - ChatInput takes a POST with Basic Auth. Set fields copies chatInput and sessionId from the body, or
    from the top level, and adds today's date as date_message.
  2. AI Agent reads the message and the date. On the first message of a session its instructions have it fetch the list of
    properties before it replies. It then confirms the property, the dates, the dimensions and the row count with you.
  3. It calls Call Search Console Tool with a JSON string. request_type is website_list or custom_insights.
  4. The lower half starts at Tool calling. Set fields - Consruct API CALL parses the string into fields, and Switch
    routes on request_type.
  5. custom_insights goes to Search Console - Get Custom Insights, a POST to the property's searchAnalytics/query
    endpoint with the start and end date, the dimensions and the row limit. website_list goes to
    ## Search Console - Get List of Properties.
  6. A Set node and an Aggregate node fold the rows into one field, response, which the tool returns to the agent.
  7. The agent writes a Markdown table, and Respond to Webhook sends the agent's item back as the webhook's reply.

Change the look

  • The agent's behaviour: its system message in AI Agent, which sets the greeting, the defaults of 3 months and 100 rows
    and the table format.
  • The model: gpt-4o in OpenAI Chat Model, with a limit of 16000 output tokens.
  • How much history the model sees: Postgres Chat Memory keeps its default window of 5 exchanges, and the table name is
    set there.
  • The query: the body of Search Console - Get Custom Insights. It sends dataState as all.
  • The webhook: its path and its authentication in Webhook - ChatInput.

Good to know

  • Models: OpenAI's deprecations page, read on 12 November 2026, gives 14 January 2027 as the shutdown of gpt-4o, with
    gpt-6-luna as the replacement. Change the model in OpenAI Chat Model before then. The sticky notes still name
    gpt-4o and gpt-4o-mini.
  • Open endpoint: the webhook is protected only by the Basic Auth you add. Without it anyone with the address can use your
    OpenAI key and read your properties.
  • The query always starts at row 0, so the agent cannot page through results. Ask for a larger row limit instead. Google's
    API allows 1 to 25,000 rows a request and 1,000 by default, and dataState of all includes fresh data.
  • The agent's prompt lists the dimensions page, query, searchAppearance, device and country. The API also takes date and
    hour.
  • A session id is the only key to a chat's history, so use ids that are hard to guess.
  • Your data: the figures Search Console returns, your questions and the chat history go to OpenAI. The history is also kept
    in your Postgres table.
  • The webhook's trigger only answers requests, so a chat window of your own must call it.
Files
NOTICE.md  688 B
README.md  6 KB
workflow.json  27 KB

3 files, 34 KB, downloaded as a zip.

What’s new

  • Version 1 · 2026-11-12

Reviews

No ratings yet

Write a review

No reviews yet.

More from Mindket

See all from Mindket

Huashu Design

alchaincyf · Skill

Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…

New29.4k

Guizang PPT Skill

op7418 · Skill

Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…

New29.8k

Claude Code Skills & Plugins

alirezarezvani · Skill

Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…

New29.8k

Similar in Marketing & SEO

See all in Marketing & SEO

Pixel Art XL

nerijs · Kit

A pixel art style add-on for Stable Diffusion XL that turns text prompts into pixel-style images, with an optional LCM LoRA for faster runs. For game makers, d…

New

Licon MSR for LTX-2.5

LiconStudio · Kit

Keeps characters, clothing, objects and backgrounds consistent in generated video by feeding the model up to five reference images. A LoRA for LTX-2.5 in Comfy…

New

Flux.2-Klein-9B-MatchingPose

nhathoangfoto · Kit

A LoRA for FLUX.2 Klein 9B that puts a character into the pose shown by a mannequin reference while keeping the character's face and style. For artists and des…

New