Why connect GTM to Windsurf (Devin Desktop)?
Windsurf's agent works across your files and terminal, but on its own it can't see what your campaigns are doing. Connected through Lemonado, it reads your GTM tags, triggers, variables and versions, so it can check tags against consent with today's numbers.
All your GTM data
Accounts, containers and workspaces, ready to ask about.
Always today's numbers
Triggers and the conditions behind them, synced from GTM automatically, so answers use today's numbers.
Connect all your tools
Questions like "Why did conversions drop?" use GTM and GA4, Google Ads at once.
How to connect GTM to Windsurf (Devin Desktop)
Before you start
- A Google Tag Manager account you can sign in to
- Windsurf installed
- A Lemonado account (the free trial works)
- 1
Connect Google Tag Manager in Lemonado
In Lemonado, open Connectors, find Google Tag Manager and sign in. Sign in with a Google account that has at least Read access to the GTM containers you want to audit. Pick the web container your site uses.
- 2
Turn on external access
In the company's settings, open External tools, turn the connection on, choose which sources it can reach and copy the server URL.
texthttps://mcp.lemonado.io/mcp - 3
Add the server (Devin Local)
Devin Desktop's default agent uses the Devin CLI config. Run these two commands and finish the browser sign-in.
bashdevin mcp add -s user lemonado https://mcp.lemonado.io/mcp devin mcp login lemonado - 4
Using legacy Cascade instead
In the Cascade panel, open … → MCPs → Open MCP config file and merge this in. Save, refresh, switch the server on and sign in.
json{ "mcpServers": { "lemonado": { "serverUrl": "https://mcp.lemonado.io/mcp" } } } - 5
Ask Windsurf (Devin Desktop) about GTM
Try "Compare last month's GTM numbers with the targets in config/targets.json and update the file where we're consistently off." Or ask: "What breaks if I rename this?" or "Does the dataLayer match GTM?"
Good to know
- Devin Local and legacy Cascade keep separate setups, so sign in to each one you use.
- Current versions keep user MCP config in ~/.config/devin/mcp_config.json on macOS and Linux.
What can Windsurf (Devin Desktop) do with GTM?
Windsurf's agent reads your GTM data and works the numbers into your code, from config checks to reports saved in the repo.
Compare last month's GTM numbers with the targets in config/targets.json and update the file where we're consistently off.
2 of 6 targets were missed three months running. I updated them in config/targets.json and left a comment with the numbers behind each change.
Source: Google Tag Manager + your code
If we rename ecommerce.value to ecommerce.revenue, which GTM variables, triggers and tags would stop working?
One variable reads it, and 9 purchase tags use that variable across Google Ads, Meta, TikTok and GA4.
Source: Google Tag Manager + your code
Compare every dataLayer.push key in our repo with the data layer variables and custom event triggers in our GTM container.
3 GTM triggers listen for events the code no longer pushes, including checkout_step.
Source: Google Tag Manager + your code
Write docs/tracking.md listing each dataLayer event, the GTM tags it fires and the platforms that receive it.
Saved. 18 events, 46 tags and a table of which platform gets each conversion.
Source: Google Tag Manager + your code
Summarize our GTM web container: how many tags of each type, which ones are paused, and which have no trigger.
84 tags: 31 GA4 events, 19 Google Ads, 12 Meta, 22 custom HTML. 9 are paused and 4 have no firing trigger, so they never run.
Source: Google Tag Manager
Compare the live GTM version with the one before it. What tags, triggers or variables changed?
Version 212 edited the purchase trigger to fire on /thank-you only. Checkout now ends on /order-complete, so the purchase tags stopped firing.
Source: Google Tag Manager
Connect GTM to another AI app.
Claude
Connect GTM to Claude
ChatGPT
Connect GTM to ChatGPT
Claude Code
Connect GTM to Claude Code
Cursor
Connect GTM to Cursor
VS Code (GitHub Copilot)
Connect GTM to VS Code (GitHub Copilot)
Codex
Connect GTM to Codex
Perplexity
Connect GTM to Perplexity
Google Antigravity
Connect GTM to Google Antigravity
Zed
Connect GTM to Zed
n8n
Connect GTM to n8n
Other integrations for Windsurf (Devin Desktop)
All Windsurf (Devin Desktop) integrations- Google Analytics in Windsurf (Devin Desktop)Ask Claude, ChatGPT or Cursor about GA4 traffic, conversions and funnels, next to your ad spend.
- Google Ads in Windsurf (Devin Desktop)Ask Claude, ChatGPT or Cursor about your Google Ads campaigns, search terms and spend.
- Meta Ads in Windsurf (Devin Desktop)Ask Claude, ChatGPT or Cursor about your Facebook and Instagram ads, creatives and results.
- Instagram organic in Windsurf (Devin Desktop)Ask Claude or ChatGPT which posts and reels grow your account, and which ones to turn into ads.
- Pinterest Ads in Windsurf (Devin Desktop)Ask Claude or ChatGPT which pins get saved, clicked and bought.
- Snapchat Ads in Windsurf (Devin Desktop)Ask Claude or ChatGPT which Snapchat ads get swipes and which ones sell.
Reading this as an AI agent?
Everything an agent needs to set this up, in plain text. Paste this page's link into Windsurf and ask it to connect you, or copy the block.
# Connect Google Tag Manager to Windsurf (Lemonado MCP) - Server URL: https://mcp.lemonado.io/mcp - Transport: Streamable HTTP - Auth: OAuth; the user signs in to Lemonado in the browser. No API keys. - In Lemonado: connect the GTM account and container. Sign in with a Google account that has at least Read access to the GTM containers you want to audit. Pick the web container your site uses. - In Windsurf: devin mcp add ```bash devin mcp add -s user lemonado https://mcp.lemonado.io/mcp devin mcp login lemonado ``` If you are Windsurf (Devin Desktop), run the setup yourself: Add the Lemonado MCP server: run devin mcp add -s user lemonado https://mcp.lemonado.io/mcp and then devin mcp login lemonado so I can sign in. Once I've signed in, list the Google Tag Manager accounts Lemonado can reach. First question to try: "Compare last month's GTM numbers with the targets in config/targets.json and update the file where we're consistently off." More: https://lemonado.io/integrations/google-tag-manager · https://lemonado.io/llms.txt
Frequently Asked Questions
Yes, through Lemonado. Connect your GTM account and container in Lemonado, add Lemonado with devin mcp add, and Windsurf can check tags against consent with your live data.
No, Google doesn't run one. Community servers exist, and most can edit and publish your container, so check what you grant them. Lemonado gives Windsurf read-only access to your containers, next to GA4 and your ad platforms.
Run devin mcp login lemonado again for Devin Local. Legacy Cascade keeps its own login, so refresh the server there and sign in too. In Lemonado, check that Google Tag Manager is connected and External tools is on for the company. If a container is missing, your Google user needs access to it in Tag Manager > Admin > User Management. Account access alone isn't always enough.
Yes, if both are connected in Lemonado. One connection reaches every source you allow, so you can ask things like "Google Ads conversions fell on Oct 18. Check which GTM version was published that week and what it changed."
MCP is included in Lemonado's paid plans and in the free trial, so you can try it before you pay.
Still have a question?
Shoot us an email at hello@lemonado.io.
Try for freeStop fighting with data. Start feeding your AI.
Connect your data to AI and free your team from reporting and busywork.
Try Lemonado free