We spent a day connecting n8n to the GoodBarber MCP server and wiring up a real automation: a workflow that translates our app's blog articles into French every morning, as drafts ready for review. This is the exact setup we used, what broke along the way, and the three lessons that will save you an afternoon.
Why n8n + MCP rather than Zapier + REST
The short answer: with MCP, the API explains itself to the machine — you don't build requests by hand.
A classic REST integration means reading API docs, building each HTTP request, handling auth and pagination yourself. MCP (Model Context Protocol) inverts that work: your GoodBarber app exposes its operations as tools that any MCP client can discover and call. Our test app — a Content App — exposed 62 tools the moment we connected: articles, paragraphs, events, maps, galleries, videos, sounds.
n8n matters here because it's one of the rare automation platforms with a native MCP Client node — and because its AI Agent nodes can hand those 62 tools to Claude and let the model decide which to call. Zapier-style platforms automate apps; n8n + MCP automates your app.
| REST + classic automation | MCP + n8n | |
|---|---|---|
| Integration work | One hand-built request per action | Tools discovered automatically |
| Auth | API keys per request | One OAuth connection |
| AI in the loop | You parse, AI sees fragments | The agent calls tools directly |
Setup: n8n connected to GoodBarber in 5 minutes
The whole connection is one node and one OAuth screen. Here's the sequence we followed on n8n.cloud:
- Create a workflow, add an AI Agent node, attach a Claude model (an Anthropic API key in n8n's credentials).
- Attach an MCP Client Tool node with the endpoint https://mcp.goodbarber.dev/mcp/sse, transport HTTP Streamable, authentication MCP OAuth2.
- Click Connect. n8n registers itself with the GoodBarber server automatically (dynamic client registration), and a GoodBarber authorization page opens.
- Paste your app's Public API key — you generate it in the back office, on the Public API / MCP server page — and validate.
That's it. The credential shows "Account connected", and the node lists every tool your app exposes — the GoodBarber MCP page covers the full catalog by app type. Five minutes, no code, no webhook gymnastics.
Workflow 1 — translating blog articles automatically
The goal: every published article in our English blog section gets a French translation in the French section, every morning at 9 a.m.
Our first version was the obvious one: a Schedule trigger and one AI Agent holding all the article tools — list the articles, spot the missing translations, translate, create. It worked on the first dry run. Then it hit a wall: an agent re-sends its whole conversation at every step, and article payloads are heavy. Our runs burned 40,000 to 77,000 input tokens per minute — past the rate limits of an entry-tier API account, whatever the model.
The version that runs in production every day is leaner, and it taught us the real pattern: use deterministic nodes for plumbing, and the model only where there's judgment. Four HTTP Request nodes call the MCP tools directly (n8n's MCP OAuth2 credential attaches to a plain HTTP node — that's the trick), a small Code node picks the oldest untranslated article, and a single Claude call translates the full article in one shot. The translations land in the CMS with images and embeds preserved, for about 5,000 tokens per run instead of 70,000.
Two design choices do the heavy lifting on cost. We only expose the tools the workflow actually needs — n8n's MCP Client node takes a tool selection, and trimming ours to the five article tools cut thousands of schema tokens per model call. And the skip logic is one slug convention: the French version of health-benefits-journaling is health-benefits-journaling-fr — if the slug exists, the article is done, so the pipeline never translates twice.
Today the pipeline writes drafts and we hit publish ourselves. That's an editorial choice, not a technical limit: Claude's translation quality is consistent enough that we'd trust this workflow with no human in the loop — straight to publish.
Workflow 2 — turning an RSS feed into article drafts
The same pattern ingests content instead of translating it. n8n's built-in RSS trigger watches any feed; a Claude node reformats each item into a clean title, summary, and body; cms_create_article and cms_create_article_paragraph create the draft in the section you choose. Your editorial team opens the back office in the morning to a queue of prepared drafts instead of a list of links to process.
Workflow 3 — a weekly editorial digest on Telegram
Reporting is where the agent shines, because the operation count is small. A Schedule trigger fires every Friday; the agent calls cms_list_articles on the week's window, Claude writes a short digest — what shipped, what's still in draft, what's scheduled — and a Telegram node delivers it to the team channel. Ten minutes of setup for a recurring editorial heartbeat.
What to watch out for
Honesty makes tutorials useful, so here are the two things that actually bit us.
- Entry-tier API limits don't fit chatty agents. On a low Anthropic tier, a single all-in-one agent run exceeded the per-minute token limits. Split plumbing from intelligence, or budget a higher tier.
- List responses are rich. Article lists return full content and image sets — great for an interactive assistant, heavy inside an agent loop. Fetch one article at a time when token budgets matter.
Where to go next
Our test app now translates itself every morning. If you want the same starting point: the 44 GoodBarber skills page explains what the MCP server exposes, Connect Claude walks through the assistant-side setup, and the open-source goodbarber-skills repository contains the ready-made recipes — including the CMS workflows this article is built on. And if you're wondering why we made our apps AI agent ready in the first place, we wrote that story too.

