mcp-tagmanager
Google Tag Manager MCP
Tag Manager 전용 MCP 커넥터로, "Gustavo google ads- mcp"와 동일한 기준으로 구축되었습니다: 모든 작업이 계정/컨테이너/워크스페이스(또는 버전)를 명시적으로 요청하며 — 암시적인 것은 없음 — 프로덕션에 영향을 주는 작업(태그 일시중지, 버전 게시)은 confirm=true를 요구합니다. 이는 이전의 "Chrome을 열고 화면을 읽는" 접근 방식을 대체합니다. 해당 접근 방식은 웹 인터페이스에 의존했기 때문에 패널에서 가장 취약한 탭이었으며, 타입이 지정된 API 대신 사용되었습니다.
비용: Tag Manager API는 무료입니다(일반적인 사용 시 Google 요금 없음). "Gustavo google ads- mcp"와 동일하게 Render의 무료 Web Service로 배포됩니다 — 동일한 플랜, 동일한 비용(0원)으로 현재 이미 사용 중입니다.
자격 증명 구성 방식 (표준화된 패턴)
이 서버는 프로덕션에서 token.json 파일을 사용하지 않습니다 — Render의 다른 커넥터와 동일하게 환경 변수를 사용합니다:
GOOGLE_ADS_CLIENT_ID/GOOGLE_ADS_CLIENT_SECRET— 재사용됩니다. "Gustavo google ads- mcp"가 이미 사용하는 동일한 OAuth 클라이언트입니다. 도구별로 새 클라이언트를 만들 필요가 없습니다.GTM_REFRESH_TOKEN— 유일한 새 값으로, Tag Manager 전용입니다.
혹시 나중에 Tag Manager 전용으로 별도의 OAuth 클라이언트를 원한다면, GTM_CLIENT_ID / GTM_CLIENT_SECRET을 정의할 수 있으며 이 값들이 Google Ads 값보다 우선합니다.
Related MCP server: Samarth GTM MCP Server
1. 코드를 GitHub에 업로드
저장소가 이미 생성됨:
github.com/gustavomkt/mcp-tagmanager(공개).이 폴더의 모든 파일을 업로드하되
client_secret.json,token.json,.flow_state.json은 제외합니다 (이 파일들은 로컬 테스트 전용이며 절대 업로드하면 안 됩니다 —.gitignore가 이미 제외하고 있습니다).
2. Render에 배포
Render → New → Web Service →
mcp-tagmanager저장소를 연결합니다.Runtime: Docker (
Dockerfile을 자동으로 감지합니다).Plan: Free.
Environment Variables (Render 대시보드에서 직접 추가해야 합니다 — 자격 증명이므로 제가 대신 채워드릴 수 없습니다):
GOOGLE_ADS_CLIENT_ID= Google Ads 서비스에 이미 있는 값과 동일합니다.GOOGLE_ADS_CLIENT_SECRET= Google Ads 서비스에 이미 있는 값과 동일합니다.GTM_REFRESH_TOKEN= Tag Manager용으로 이미 생성한 refresh token입니다 (채팅에서 별도로 공유해 드렸습니다).
Create Web Service. 빌드가 완료되면 공개 URL을 복사합니다 (예:
https://mcp-tagmanager.onrender.com).
3. Claude에 연결
이전 단계의 Render URL을 가리키는 새 원격 MCP 커넥터로 추가합니다 (끝에 /mcp를 붙임, 예: https://mcp-tagmanager.onrender.com/mcp — 표준 streamable-http 엔드포인트입니다). 연결되면 알려주시면, 제어판의 Tag Manager 탭을 업데이트하여 브라우저 기반 지침 대신 이러한 실제 도구를 사용하도록 하겠습니다.
대안: 파일로 로컬 실행 (Render 없이)
혹시 Render 대신 노트북에서 실행하고 싶다면:
pip install -r requirements.txt
python auth_setup.py # una vez, abre tu navegador
python server.py # sin PORT definido, corre por stdioserver.py는 먼저 환경 변수에서 GTM_REFRESH_TOKEN + client_id/secret을 찾습니다. 찾지 못하면 token.json으로 대체합니다.
사용 가능한 도구
읽기 (아무것도 변경하지 않음):
list_accounts()list_containers(account_id)list_workspaces(account_id, container_id)list_tags(account_id, container_id, workspace_id)get_tag(account_id, container_id, workspace_id, tag_id)list_triggers(account_id, container_id, workspace_id)list_variables(account_id, container_id, workspace_id)audit_workspace(account_id, container_id, workspace_id)— 트리거가 없는 태그, 태그가 없는 트리거, 가능한 중복, Consent Mode 구성 여부를 확인합니다. 이전에 Chrome의 Claude에게 "화면을 읽고 추측하라"고 요청했던 것의 신뢰할 수 있는 버전입니다.list_versions(account_id, container_id)
쓰기 (confirm=true 필요):
pause_tag(...)/resume_tag(...)— 워크스페이스에서 태그를 일시중지하거나 재개합니다. 컨테이너를 게시하지 않습니다.create_version(...)— 워크스페이스에서 버전을 생성합니다. 게시하지 않습니다.publish_version(account_id, container_id, version_id, confirm=true)— 버전을 게시합니다 (프로덕션에 반영). 롤백에도 사용하세요:list_versions에서 이전 버전의version_id를 전달하면 됩니다.
안정성 참고 사항
Google API에 대한 각 호출은 명확한 메시지(
{"ok": false, "error": "..."})를 반환하는 오류 처리를 포함하며, 설명 없이 MCP 연결을 끊지 않습니다 — 이러한 종류의 조용한 실패는 다른 커넥터가 경고 없이 "다운"되는 이유 중 일부였습니다.토큰은 refresh token을 사용하여 각 호출에서 자동으로 갱신됩니다. 만약 언젠가 토큰이 해지되면(비밀번호 변경, myaccount.google.com에서 수동 해지), 오류가 명시적으로 알려주며 새
GTM_REFRESH_TOKEN을 생성하기만 하면 됩니다.무료 Render Web Service이므로 일정 시간 사용하지 않으면 "절전" 상태가 되며, 그 후 첫 번째 호출은 응답에 ~50초가 걸립니다 — 오늘의 "Gustavo google ads- mcp"와 동일합니다. 커넥터가 "다운"된 것처럼 보이는 가장 흔한 원인입니다: 오류가 아니라 무료 플랜의 콜드 스타트입니다. 이 지연을 없애고 싶다면 유일한 방법은 Render 유료 플랜입니다 — 제가 요청 없이 변경하지 않는, 전적으로 귀하의 결정입니다.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceMCP server for Google Tag Manager API, enabling users to manage containers, tags, and triggers through natural language using Google Application Default Credentials.1830Apache 2.0
- AlicenseBqualityAmaintenanceProduction-grade MCP server for the Google Tag Manager API v2 with read-only GA4 (Admin + Data API) tooling. 107 tools covering the full GTM surface, including server-side containers. Ships read-only: writes, publishes, and deletes are each gated behind separate opt-in flags, every mutation requires per-call confirmation, and a dry-run mode simulates changes. Includes container audits1008,2161MIT
- AlicenseAqualityAmaintenanceMCP server for Google Tag Manager and GA4, enabling tag management, consent auditing, workspace versioning, and analytics reporting through natural language.18552MIT
- AlicenseNot gradedqualityCmaintenanceMCP server for Google Tag Manager API v2, enabling programmatic management of accounts, containers, workspaces, tags, triggers, variables, and version workflows.4814MIT
Related MCP Connectors
MCP server for interacting with the Supabase platform
The official MCP Server from Mia-Platform to interact with Mia-Platform Console
MCP server for managing Prisma Postgres.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/gustavomkt/mcp-tagmanager'
If you have feedback or need assistance with the MCP directory API, please join our Discord server