Context / Problem
I run multiple Stape MCP servers (GTM, GA4, Google Ads) across several businesses, each pointing at a different Google account. Because each server instance authenticates to a single Google account via OAuth, managing more than one account currently means running several separate server instances of the same product — one per account.
This is currently very difficult to manage in practice, for two compounding reasons:
-
No way to tell which server is asking for re-authentication. When the OAuth prompt fires, it opens a generic Google login page with no indication of which MCP server instance (and therefore which Google account) triggered it. In Claude Desktop, all servers show as “Running” in the UI regardless of authentication state — a server that has lost its token still shows “Running”, it just can’t complete requests, so there’s no visual cue in the interface pointing to the one that needs attention either.
-
Re-authentication happens frequently, and the window to act is short. In my experience, tokens seem to require re-authentication at least once a day, sometimes several times a day, as detailed in this support request: How to prolong Oauth authentication? It's requested many times daily - #6 by Inspired_Earth . The auth link itself expires quickly — well under a couple of minutes — so there’s no realistic way to pause, cross-reference logs or config files, and figure out which account to log in with before the link goes stale. I believe this frequent-expiry behaviour is a broader MCP OAuth ecosystem issue at the moment (there are open reports of similar token-refresh problems across other MCP clients and servers, not just Stape), but regardless of the root cause, it makes the identification problem above far worse — the more often I’m interrupted, the more often I’m forced to guess.
Combined, these two issues mean it is effectively impossible to reliably run Stape MCP servers against more than one Google account at a time. I either mis-authenticate the wrong account against the wrong server, or I disable all but one server to avoid the ambiguity — which defeats the point of having them connected at all.
The Request
Please implement native multi-account management within each Stape MCP server (GTM, GA4, Google Ads), rather than requiring one server instance per Google account.
Concretely, this would mean:
-
The ability to connect and store credentials for more than one Google account within a single server connection.
-
An account/property (or container) selector parameter exposed on tool calls, so a request can specify which connected account it should run against.
-
A way to list currently connected accounts and their status from within the MCP tools themselves.
This would remove the need to run duplicate server instances per account, and with it, the OAuth-identification problem described above.
Precedent — other MCP servers already do this
Several existing MCP servers already implement exactly this pattern, so it’s a proven approach rather than a novel one:
-
Google Drive multi-account MCP servers (e.g. community implementations built on
@piotr-agier/google-drive-mcpand similar) — support multiple named/aliased Google accounts within a single server connection, with anaccount_idoraliasparameter on tool calls to select which account a request runs against. -
Gmail MCP servers — several implementations support connecting multiple Gmail accounts simultaneously and specifying which mailbox a given call should act on.
-
Notion, Slack, and Asana MCP integrations — commonly support multiple connected workspaces/teams per server, with a workspace or team selector on relevant tools.
Adopting the same pattern for GTM, GA4, and Google Ads would bring Stape’s MCP offering in line with how multi-tenant access is already being handled elsewhere in the MCP ecosystem, and would solve a real, current usability blocker for anyone managing more than one Google account through Stape.