MCP server for the Google Tag Manager API v2: containers, workspaces, tags, triggers, publishing.
Connect Runs on your machine
claude mcp add mcp-google-tagmanager -e GOOGLE_TAGMANAGER_CLIENT_ID=<GOOGLE_TAGMANAGER_CLIENT_ID> -e GOOGLE_TAGMANAGER_CLIENT_SECRET=<GOOGLE_TAGMANAGER_CLIENT_SECRET> -e GOOGLE_TAGMANAGER_REFRESH_TOKEN=<GOOGLE_TAGMANAGER_REFRESH_TOKEN> -e GOOGLE_TAGMANAGER_ACCESS_TOKEN=<GOOGLE_TAGMANAGER_ACCESS_TOKEN> -e GOOGLE_TAGMANAGER_OAUTH_PORT=<GOOGLE_TAGMANAGER_OAUTH_PORT> -e GOOGLE_TAGMANAGER_API_BASE=<GOOGLE_TAGMANAGER_API_BASE> -e GOOGLE_TAGMANAGER_TIMEOUT_MS=<GOOGLE_TAGMANAGER_TIMEOUT_MS> -e GOOGLE_TAGMANAGER_MAX_RETRIES=<GOOGLE_TAGMANAGER_MAX_RETRIES> -e GOOGLE_TAGMANAGER_MIN_INTERVAL_MS=<GOOGLE_TAGMANAGER_MIN_INTERVAL_MS> -- npx -y [email protected]
{
"mcpServers": {
"mcp-google-tagmanager": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"GOOGLE_TAGMANAGER_CLIENT_ID": "<GOOGLE_TAGMANAGER_CLIENT_ID>",
"GOOGLE_TAGMANAGER_CLIENT_SECRET": "<GOOGLE_TAGMANAGER_CLIENT_SECRET>",
"GOOGLE_TAGMANAGER_REFRESH_TOKEN": "<GOOGLE_TAGMANAGER_REFRESH_TOKEN>",
"GOOGLE_TAGMANAGER_ACCESS_TOKEN": "<GOOGLE_TAGMANAGER_ACCESS_TOKEN>",
"GOOGLE_TAGMANAGER_OAUTH_PORT": "<GOOGLE_TAGMANAGER_OAUTH_PORT>",
"GOOGLE_TAGMANAGER_API_BASE": "<GOOGLE_TAGMANAGER_API_BASE>",
"GOOGLE_TAGMANAGER_TIMEOUT_MS": "<GOOGLE_TAGMANAGER_TIMEOUT_MS>",
"GOOGLE_TAGMANAGER_MAX_RETRIES": "<GOOGLE_TAGMANAGER_MAX_RETRIES>",
"GOOGLE_TAGMANAGER_MIN_INTERVAL_MS": "<GOOGLE_TAGMANAGER_MIN_INTERVAL_MS>"
}
}
}
}
{
"mcpServers": {
"mcp-google-tagmanager": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"GOOGLE_TAGMANAGER_CLIENT_ID": "<GOOGLE_TAGMANAGER_CLIENT_ID>",
"GOOGLE_TAGMANAGER_CLIENT_SECRET": "<GOOGLE_TAGMANAGER_CLIENT_SECRET>",
"GOOGLE_TAGMANAGER_REFRESH_TOKEN": "<GOOGLE_TAGMANAGER_REFRESH_TOKEN>",
"GOOGLE_TAGMANAGER_ACCESS_TOKEN": "<GOOGLE_TAGMANAGER_ACCESS_TOKEN>",
"GOOGLE_TAGMANAGER_OAUTH_PORT": "<GOOGLE_TAGMANAGER_OAUTH_PORT>",
"GOOGLE_TAGMANAGER_API_BASE": "<GOOGLE_TAGMANAGER_API_BASE>",
"GOOGLE_TAGMANAGER_TIMEOUT_MS": "<GOOGLE_TAGMANAGER_TIMEOUT_MS>",
"GOOGLE_TAGMANAGER_MAX_RETRIES": "<GOOGLE_TAGMANAGER_MAX_RETRIES>",
"GOOGLE_TAGMANAGER_MIN_INTERVAL_MS": "<GOOGLE_TAGMANAGER_MIN_INTERVAL_MS>"
}
}
}
}
{
"servers": {
"mcp-google-tagmanager": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"GOOGLE_TAGMANAGER_CLIENT_ID": "<GOOGLE_TAGMANAGER_CLIENT_ID>",
"GOOGLE_TAGMANAGER_CLIENT_SECRET": "<GOOGLE_TAGMANAGER_CLIENT_SECRET>",
"GOOGLE_TAGMANAGER_REFRESH_TOKEN": "<GOOGLE_TAGMANAGER_REFRESH_TOKEN>",
"GOOGLE_TAGMANAGER_ACCESS_TOKEN": "<GOOGLE_TAGMANAGER_ACCESS_TOKEN>",
"GOOGLE_TAGMANAGER_OAUTH_PORT": "<GOOGLE_TAGMANAGER_OAUTH_PORT>",
"GOOGLE_TAGMANAGER_API_BASE": "<GOOGLE_TAGMANAGER_API_BASE>",
"GOOGLE_TAGMANAGER_TIMEOUT_MS": "<GOOGLE_TAGMANAGER_TIMEOUT_MS>",
"GOOGLE_TAGMANAGER_MAX_RETRIES": "<GOOGLE_TAGMANAGER_MAX_RETRIES>",
"GOOGLE_TAGMANAGER_MIN_INTERVAL_MS": "<GOOGLE_TAGMANAGER_MIN_INTERVAL_MS>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
GOOGLE_TAGMANAGER_CLIENT_IDOptional | Google OAuth client id (refresh-token flow). |
GOOGLE_TAGMANAGER_CLIENT_SECRETOptional, secret | Google OAuth client secret (refresh-token flow). Treat it as a secret. |
GOOGLE_TAGMANAGER_REFRESH_TOKENOptional, secret | Google OAuth refresh token; exchanged for access tokens automatically. Treat it as a secret. |
GOOGLE_TAGMANAGER_ACCESS_TOKENOptional, secret | Ready-made OAuth access token (~1h lifetime). Alternative to the client-id/secret/refresh-token trio. |
GOOGLE_TAGMANAGER_OAUTH_PORTOptional | Fixed port for the loopback listener of the in-chat login (127.0.0.1 + PKCE). Set it when the client runs over SSH port forwarding; otherwise a free port is picked per login. |
GOOGLE_TAGMANAGER_API_BASEOptional | API root host override. |
GOOGLE_TAGMANAGER_TIMEOUT_MSOptional | Per-request timeout in milliseconds. |
GOOGLE_TAGMANAGER_MAX_RETRIESOptional | Retries on transient errors (429, quota 403, and 5xx/network for reads). |
GOOGLE_TAGMANAGER_MIN_INTERVAL_MSOptional | Minimum spacing between API requests, for the 0.25 QPS quota. |
Details
| Package | [email protected] (NPM, stdio) |
| First published | 12 Nov 2026 |
| Last updated | 12 Nov 2026 |
| Registry name | io.github.A1-x-Tech/mcp-google-tagmanager |
More search and web servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
