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…
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.
Web request
It starts when a POST with Basic Auth reaches the search-console-chat webhook with:
A Markdown table of Search Console results in the webhook’s reply, with the raw data beside it
What you need before you start.
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
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
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
Checked by Mindket on 13 Nov 2026
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.
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.
| Industry | Who uses it | How they use it | Example |
|---|---|---|---|
| SEO agencies | Account managers | Pull a client’s top queries before a call | A manager asks for last month’s top 50 queries with clicks and impressions. |
| Publishing | Editors | See which pages bring search traffic | An editor asks for the top pages by clicks over the last 3 months, as a table. |
| Ecommerce | Site owners | Check where search visitors come from | An owner asks for clicks by country and device. |
| Software | Growth marketers | See which queries lead to which pages | A 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.
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.
chatInput and sessionId as JSON with Basic AuthDownload saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. The Google credential takes the longest.
| Need | Detail |
|---|---|
| n8n | On n8n Cloud or on a server of your own, with a public address |
| A Cloud project with the Search Console API on, an OAuth client, and an account that can see the properties | |
| OpenAI | An API key that can use gpt-4o |
| Postgres | A database for the chat history. The memory node creates its table |
| Webhook login | A Basic Auth username and password of your choosing |
workflow.json.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.Postgres Chat Memory.OpenAI Chat Model.Call Search Console Tool calls it by its own id, so it needs the saved copy.{"chatInput": "Which sites can you see?", "sessionId": "test-1"}./webhook/search-console-chat.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.
| To change | Where |
|---|---|
| The agent’s manner and defaults | The system message in AI Agent: the greeting, 3 months, 100 rows and the table format |
| The model | gpt-4o in OpenAI Chat Model, with a limit of 16000 output tokens |
| History kept in view | Postgres Chat Memory: a window of 5 exchanges, and the table name |
| The query | The body of the HTTP Request node that runs it, which sends dataState as all |
| The webhook | Its path and authentication in the webhook node |
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.
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.
| Node | What it does | What to know |
|---|---|---|
| The webhook | A POST with Basic Auth, answered by Respond to Webhook | The reply is the agent’s whole item, intermediateSteps included |
Set fields | Takes chatInput and sessionId from the body or the top level, and adds the date | The agent’s prompt carries date_message, so it can work out relative dates |
Call Search Console Tool | A Tool Workflow node set to this workflow’s own id | The workflow must be saved |
| The query request | A POST to the property’s searchAnalytics/query | startRow is fixed at 0 |
Postgres Chat Memory | Stores the chat history by session | The model sees the last 5 exchanges |
The endpoint is open to anyone you give the login to, and gpt-4o is scheduled to go.
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-minidataState is all, which includes fresh dataAn 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.
workflow.json: the workflow as n8n exports it, 30 nodes, fourteen of them sticky notes. It holds no credential.Tool calling.README.md: these notes.Call Search Console Tool pointed at a workflow id in its author's n8n, which was the id of this same workflow. It now{{ $workflow.id }}, so the tool calls whichever copy you import./chat. It is now search-console-chat.workflow.json.https://www.googleapis.com/auth/webmasters.readonly, then connect your account. Select it inSearch Console - Get Custom Insights and ## Search Console - Get List of Properties.Postgres Chat Memory. The table is insights_chat_histories.OpenAI Chat Model.Webhook - ChatInput.Call Search Console Tool calls it by its own id, so it needs the saved copy.{"chatInput": "Which sites can you see?", "sessionId": "test-1"}. The reply holds output with the agent's answer andintermediateSteps with the raw tool results./webhook/search-console-chat.Webhook - ChatInput takes a POST with Basic Auth. Set fields copies chatInput and sessionId from the body, ordate_message.AI Agent reads the message and the date. On the first message of a session its instructions have it fetch the list ofCall Search Console Tool with a JSON string. request_type is website_list or custom_insights.Tool calling. Set fields - Consruct API CALL parses the string into fields, and Switchrequest_type.custom_insights goes to Search Console - Get Custom Insights, a POST to the property's searchAnalytics/querywebsite_list goes to## Search Console - Get List of Properties.response, which the tool returns to the agent.Respond to Webhook sends the agent's item back as the webhook's reply.AI Agent, which sets the greeting, the defaults of 3 months and 100 rowsgpt-4o in OpenAI Chat Model, with a limit of 16000 output tokens.Postgres Chat Memory keeps its default window of 5 exchanges, and the table name isSearch Console - Get Custom Insights. It sends dataState as all.Webhook - ChatInput.gpt-4o, withgpt-6-luna as the replacement. Change the model in OpenAI Chat Model before then. The sticky notes still namegpt-4o and gpt-4o-mini.dataState of all includes fresh data.NOTICE.md 688 B README.md 6 KB workflow.json 27 KB
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…
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…
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…
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…
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…
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…