Repository navigation
fix(google): GA funnel on v1alpha + Workspace MCP agentic-client readiness - #562
Merged
Merged
Conversation
The v1beta path does not exist for funnels, so run-funnel-report always returned 'Google Analytics API error: 404' (verified 2026-10-21 against property 355495152; the same request succeeds on v1alpha). decocms/reports already works around it the same way in api/connectors/data/ga4.ts. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ow a dedicated client From 2026-11-11 Google's Workspace MCP servers (gmailmcp, drivemcp, calendarmcp, chatmcp, people) reject OAuth clients not marked as agentic. This package proxies to exactly those servers, so it is the one MCP here that breaks if the client is not marked. - mcp-proxy: a 'not marked as an AI agent' rejection now says so and that re-auth will not help, instead of the generic 403 missing-scope hint. - main: optional GOOGLE_WORKSPACE_CLIENT_ID/SECRET for a dedicated agentic client (falls back to the shared GOOGLE_CLIENT_ID). - README: the deadline, what to mark, and which MCPs are unaffected (REST). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
deco-hosting
Bot
requested a deployment
to
preview/pr-562/airtable
October 21, 2026 16:41
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/blog-generator
October 21, 2026 16:41
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/content-scraper
October 21, 2026 16:41
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/deco-llm
October 21, 2026 16:41
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/deco-news-weekly-digest
October 21, 2026 16:41
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/discord-read
October 21, 2026 16:41
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/figma-mcp
October 21, 2026 16:42
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/google-analytics
October 21, 2026 16:42
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/google-big-query
October 21, 2026 16:42
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/google-calendar
October 21, 2026 16:42
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/google-calendar-sa
October 21, 2026 16:42
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/google-drive
October 21, 2026 16:42
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/google-meet
October 21, 2026 16:42
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/google-search-console
October 21, 2026 16:42
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/google-sheets
October 21, 2026 16:42
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/google-slides
October 21, 2026 16:42
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/google-tag-manager
October 21, 2026 16:42
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/google-workspace
October 21, 2026 16:42
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/grafana
October 21, 2026 16:43
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/hyperdx
October 21, 2026 16:43
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/magento
October 21, 2026 16:43
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/meta-ads
October 21, 2026 16:43
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/nanobanana
October 21, 2026 16:43
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/object-storage
October 21, 2026 16:43
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/pandadoc
October 21, 2026 16:43
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/perplexity
October 21, 2026 16:43
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/registry
October 21, 2026 16:43
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/shopify
October 21, 2026 16:43
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/slack-mcp
October 21, 2026 16:43
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/vtex-docs
October 21, 2026 16:44
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/whatsappagent
October 21, 2026 16:44
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/youtube-channel-admin
October 21, 2026 16:44
In progress
deco-hosting
Bot
requested a deployment
to
preview/pr-562/youtube-search
October 21, 2026 16:44
In progress
JonasJesus42
approved these changes
Nov 3, 2026
JonasJesus42
left a comment
Contributor
There was a problem hiding this comment.
Reviewed. GA: runFunnelReport now on the Data API v1alpha (the v1beta path 404s); every other Data API call stays on v1beta. Workspace: notAgenticError only replaces the error message when Google's body mentions agentic/AI agent; the optional GOOGLE_WORKSPACE_CLIENT_ID/SECRET fall back to the shared client (createGoogleOAuth config.clientId ?? env.GOOGLE_CLIENT_ID). LGTM.
This branch is being deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two Google fixes, kept together on request.
1. google-analytics:
run-funnel-reportuses v1alpharunFunnelReportonly exists on the GA4 Data API v1alpha; the tool calledv1betaand every call failed withGoogle Analytics API error: 404(verified 2026-10-21 via a Studio connection, property 355495152; the same steps on v1alpha return the funnel table).decocms/reportsalready does this inapi/connectors/data/ga4.ts. Insights MCP's INTERACTIONS_DASHBOARD needs it for "did X, then purchased".2. google-workspace: ready for Google's
is_agenticOAuth clientsGoogle's notice: from 2026-11-11 its Workspace MCP servers only accept OAuth clients marked agentic; from 2026-11-12 the flag is permanent (changing it = new client ID, everyone reconnects).
Which MCPs here are affected (checked in code):
google-workspace— affected. It proxies togmailmcp/drivemcp/calendarmcp/chatmcp/people.googleapis.com/mcp/v1. Without the flag it stops working on 11/11.google-gmail,google-drive,google-calendar,google-analytics,google-search-console, ...) — not affected on 11/11; Google still asks to mark agent clients.Code changes:
mcp-proxy.ts: a "not marked as an AI agent" rejection now says exactly that and that re-auth will not help (today every 403 says "missing scope, re-authenticate").main.ts: optionalGOOGLE_WORKSPACE_CLIENT_ID/GOOGLE_WORKSPACE_CLIENT_SECRETfor a dedicated agentic client; falls back to the sharedGOOGLE_CLIENT_ID.mcp-proxy.test.ts(2 tests, pass).Still a console action (not code)
Mark the OAuth client(s) used by these MCPs as agentic in Google Cloud (projects
decocms,deco-chat-460601) before 2026-11-11. If the sharedGOOGLE_CLIENT_IDis also used for non-agent traffic (e.g. human sign-in), create a separate agentic client and set the two new env vars instead.🤖 Generated with Claude Code
Summary by cubic
Fixes GA4 funnel reports (the v1beta path for
runFunnelReportalways 404s) and getsgoogle-workspaceready for Google's 2026-11-11 requirement that Workspace MCP OAuth clients be marked agentic.google-analytics
run-funnel-reportnow calls the Data API's v1alpha endpoint, whererunFunnelReportexists.google-workspace
GOOGLE_WORKSPACE_CLIENT_ID/GOOGLE_WORKSPACE_CLIENT_SECRETallow a dedicated agentic client, falling back to the sharedGOOGLE_CLIENT_ID; switching clients invalidates existing refresh tokens, so users reconnect once.Written for commit f582a1e. Summary will update on new commits.