Product
Tag Manager
Google Tag Manager accounts, containers, tags, triggers and variables.
Install
gtm is one plugin in the google-services-mcps marketplace, and it runs one MCP server with the same name. Install it for Claude Code with the command below. For Codex, OpenCode or Antigravity, change --agent; the product id stays the same.
Install for Claude Code
npx google-services-mcps install --agent claude --plugin gtmWhat it manages
The server carries 1 generated API bindings and 1 gateway APIs. Gateway APIs are reached through api_search, api_describe and api_call, which every product with gateway APIs lists.
| API | Version |
|---|---|
| tagmanager | v2 |
| API | Version |
|---|---|
| tagmanager | v1 |
Tools
The plugin's server registers 118 tools: 45 reads, 52 writes, 20 destructive actions and 1 dynamic tools. A read never asks. A write is listed only when Allow write tools is on, and asks before it runs. A destructive action asks twice. A dynamic tool decides per call.
Every tool name starts with mcp__plugin_gtm_gtm__, so a call traces back to this product. The table lists the tools this server registers, with the safety class from the plugin's tool map.
| Tool | Class | What it does |
|---|---|---|
| account_remove | write | Remove a signed-in account |
| account_set_default | write | Set the default account |
| accounts_list | read | Signed-in accounts |
| api_call | dynamic | Call an API method |
| api_describe | read | Describe an API method |
| api_methods | read | gtm: API methods |
| api_search | read | Search API methods |
| auth_login | write | Sign in to Google |
| auth_setup_client | write | Save the Google OAuth client |
| auth_status | read | Sign-in status |
| gtm_publish_version | destructive | Publish a Tag Manager version |
| health | read | Server health |
| tag_accts_ctrs_ws_built_in_variables_create | write | tagmanager.accounts.containers.workspaces.built_in_variables.create |
| tag_accts_ctrs_ws_built_in_variables_delete | destructive | tagmanager.accounts.containers.workspaces.built_in_variables.delete |
| tag_accts_ctrs_ws_built_in_variables_revert | write | tagmanager.accounts.containers.workspaces.built_in_variables.revert |
| tag_ctrs_ws_folders_move_entities_to_folder | write | tagmanager.accounts.containers.workspaces.folders.move_entities_to_folder |
| tagmg_accts_ctrs_ws_built_in_variables_list | read | tagmanager.accounts.containers.workspaces.built_in_variables.list |
| tagmgr_accounts_containers_combine | write | tagmanager.accounts.containers.combine |
| tagmgr_accounts_containers_create | write | tagmanager.accounts.containers.create |
| tagmgr_accounts_containers_delete | destructive | tagmanager.accounts.containers.delete |
| tagmgr_accounts_containers_destinations_get | read | tagmanager.accounts.containers.destinations.get |
| tagmgr_accounts_containers_environments_get | read | tagmanager.accounts.containers.environments.get |
| tagmgr_accounts_containers_get | read | tagmanager.accounts.containers.get |
| tagmgr_accounts_containers_list | read | tagmanager.accounts.containers.list |
| tagmgr_accounts_containers_lookup | read | tagmanager.accounts.containers.lookup |
| tagmgr_accounts_containers_move_tag_id | write | tagmanager.accounts.containers.move_tag_id |
| tagmgr_accounts_containers_snippet | read | tagmanager.accounts.containers.snippet |
| tagmgr_accounts_containers_update | write | tagmanager.accounts.containers.update |
| tagmgr_accounts_containers_versions_delete | destructive | tagmanager.accounts.containers.versions.delete |
| tagmgr_accounts_containers_versions_get | read | tagmanager.accounts.containers.versions.get |
| tagmgr_accounts_containers_versions_live | read | tagmanager.accounts.containers.versions.live |
| tagmgr_accounts_containers_versions_publish | destructive | tagmanager.accounts.containers.versions.publish |
| tagmgr_accounts_containers_versions_update | write | tagmanager.accounts.containers.versions.update |
| tagmgr_accounts_containers_workspaces_get | read | tagmanager.accounts.containers.workspaces.get |
| tagmgr_accounts_containers_workspaces_list | read | tagmanager.accounts.containers.workspaces.list |
| tagmgr_accounts_containers_workspaces_sync | write | tagmanager.accounts.containers.workspaces.sync |
| tagmgr_accounts_get | read | tagmanager.accounts.get |
| tagmgr_accounts_list | read | tagmanager.accounts.list |
| tagmgr_accounts_update | write | tagmanager.accounts.update |
| tagmgr_accounts_user_permissions_create | destructive | tagmanager.accounts.user_permissions.create |
| tagmgr_accounts_user_permissions_delete | destructive | tagmanager.accounts.user_permissions.delete |
| tagmgr_accounts_user_permissions_get | read | tagmanager.accounts.user_permissions.get |
| tagmgr_accounts_user_permissions_list | read | tagmanager.accounts.user_permissions.list |
| tagmgr_accounts_user_permissions_update | destructive | tagmanager.accounts.user_permissions.update |
| tagmgr_accts_ctrs_destinations_link | write | tagmanager.accounts.containers.destinations.link |
| tagmgr_accts_ctrs_destinations_list | read | tagmanager.accounts.containers.destinations.list |
| tagmgr_accts_ctrs_envs_create | write | tagmanager.accounts.containers.environments.create |
| tagmgr_accts_ctrs_envs_delete | destructive | tagmanager.accounts.containers.environments.delete |
| tagmgr_accts_ctrs_envs_list | read | tagmanager.accounts.containers.environments.list |
| tagmgr_accts_ctrs_envs_reauthorize | write | tagmanager.accounts.containers.environments.reauthorize |
| tagmgr_accts_ctrs_envs_update | write | tagmanager.accounts.containers.environments.update |
| tagmgr_accts_ctrs_ver_headers_latest | read | tagmanager.accounts.containers.version_headers.latest |
| tagmgr_accts_ctrs_ver_headers_list | read | tagmanager.accounts.containers.version_headers.list |
| tagmgr_accts_ctrs_vers_set_latest | write | tagmanager.accounts.containers.versions.set_latest |
| tagmgr_accts_ctrs_vers_undelete | write | tagmanager.accounts.containers.versions.undelete |
| tagmgr_accts_ctrs_ws_bulk_update | write | tagmanager.accounts.containers.workspaces.bulk_update |
| tagmgr_accts_ctrs_ws_clients_create | write | tagmanager.accounts.containers.workspaces.clients.create |
| tagmgr_accts_ctrs_ws_clients_delete | destructive | tagmanager.accounts.containers.workspaces.clients.delete |
| tagmgr_accts_ctrs_ws_clients_get | read | tagmanager.accounts.containers.workspaces.clients.get |
| tagmgr_accts_ctrs_ws_clients_list | read | tagmanager.accounts.containers.workspaces.clients.list |
| tagmgr_accts_ctrs_ws_clients_revert | write | tagmanager.accounts.containers.workspaces.clients.revert |
| tagmgr_accts_ctrs_ws_clients_update | write | tagmanager.accounts.containers.workspaces.clients.update |
| tagmgr_accts_ctrs_ws_create | write | tagmanager.accounts.containers.workspaces.create |
| tagmgr_accts_ctrs_ws_create_ver | destructive | tagmanager.accounts.containers.workspaces.create_version |
| tagmgr_accts_ctrs_ws_delete | destructive | tagmanager.accounts.containers.workspaces.delete |
| tagmgr_accts_ctrs_ws_folders_create | write | tagmanager.accounts.containers.workspaces.folders.create |
| tagmgr_accts_ctrs_ws_folders_delete | destructive | tagmanager.accounts.containers.workspaces.folders.delete |
| tagmgr_accts_ctrs_ws_folders_entities | read | tagmanager.accounts.containers.workspaces.folders.entities |
| tagmgr_accts_ctrs_ws_folders_get | read | tagmanager.accounts.containers.workspaces.folders.get |
| tagmgr_accts_ctrs_ws_folders_list | read | tagmanager.accounts.containers.workspaces.folders.list |
| tagmgr_accts_ctrs_ws_folders_revert | write | tagmanager.accounts.containers.workspaces.folders.revert |
| tagmgr_accts_ctrs_ws_folders_update | write | tagmanager.accounts.containers.workspaces.folders.update |
| tagmgr_accts_ctrs_ws_get_status | read | tagmanager.accounts.containers.workspaces.getStatus |
| tagmgr_accts_ctrs_ws_gtag_config_create | write | tagmanager.accounts.containers.workspaces.gtag_config.create |
| tagmgr_accts_ctrs_ws_gtag_config_delete | destructive | tagmanager.accounts.containers.workspaces.gtag_config.delete |
| tagmgr_accts_ctrs_ws_gtag_config_get | read | tagmanager.accounts.containers.workspaces.gtag_config.get |
| tagmgr_accts_ctrs_ws_gtag_config_list | read | tagmanager.accounts.containers.workspaces.gtag_config.list |
| tagmgr_accts_ctrs_ws_gtag_config_update | write | tagmanager.accounts.containers.workspaces.gtag_config.update |
| tagmgr_accts_ctrs_ws_quick_preview | write | tagmanager.accounts.containers.workspaces.quick_preview |
| tagmgr_accts_ctrs_ws_resolve_conflict | write | tagmanager.accounts.containers.workspaces.resolve_conflict |
| tagmgr_accts_ctrs_ws_tags_create | write | tagmanager.accounts.containers.workspaces.tags.create |
| tagmgr_accts_ctrs_ws_tags_delete | destructive | tagmanager.accounts.containers.workspaces.tags.delete |
| tagmgr_accts_ctrs_ws_tags_get | read | tagmanager.accounts.containers.workspaces.tags.get |
| tagmgr_accts_ctrs_ws_tags_list | read | tagmanager.accounts.containers.workspaces.tags.list |
| tagmgr_accts_ctrs_ws_tags_revert | write | tagmanager.accounts.containers.workspaces.tags.revert |
| tagmgr_accts_ctrs_ws_tags_update | write | tagmanager.accounts.containers.workspaces.tags.update |
| tagmgr_accts_ctrs_ws_tmpls_create | write | tagmanager.accounts.containers.workspaces.templates.create |
| tagmgr_accts_ctrs_ws_tmpls_delete | destructive | tagmanager.accounts.containers.workspaces.templates.delete |
| tagmgr_accts_ctrs_ws_tmpls_get | read | tagmanager.accounts.containers.workspaces.templates.get |
| tagmgr_accts_ctrs_ws_tmpls_list | read | tagmanager.accounts.containers.workspaces.templates.list |
| tagmgr_accts_ctrs_ws_tmpls_revert | write | tagmanager.accounts.containers.workspaces.templates.revert |
| tagmgr_accts_ctrs_ws_tmpls_update | write | tagmanager.accounts.containers.workspaces.templates.update |
| tagmgr_accts_ctrs_ws_transformations_create | write | tagmanager.accounts.containers.workspaces.transformations.create |
| tagmgr_accts_ctrs_ws_transformations_delete | destructive | tagmanager.accounts.containers.workspaces.transformations.delete |
| tagmgr_accts_ctrs_ws_transformations_get | read | tagmanager.accounts.containers.workspaces.transformations.get |
| tagmgr_accts_ctrs_ws_transformations_list | read | tagmanager.accounts.containers.workspaces.transformations.list |
| tagmgr_accts_ctrs_ws_transformations_revert | write | tagmanager.accounts.containers.workspaces.transformations.revert |
| tagmgr_accts_ctrs_ws_transformations_update | write | tagmanager.accounts.containers.workspaces.transformations.update |
| tagmgr_accts_ctrs_ws_triggers_create | write | tagmanager.accounts.containers.workspaces.triggers.create |
| tagmgr_accts_ctrs_ws_triggers_delete | destructive | tagmanager.accounts.containers.workspaces.triggers.delete |
| tagmgr_accts_ctrs_ws_triggers_get | read | tagmanager.accounts.containers.workspaces.triggers.get |
| tagmgr_accts_ctrs_ws_triggers_list | read | tagmanager.accounts.containers.workspaces.triggers.list |
| tagmgr_accts_ctrs_ws_triggers_revert | write | tagmanager.accounts.containers.workspaces.triggers.revert |
| tagmgr_accts_ctrs_ws_triggers_update | write | tagmanager.accounts.containers.workspaces.triggers.update |
| tagmgr_accts_ctrs_ws_update | write | tagmanager.accounts.containers.workspaces.update |
| tagmgr_accts_ctrs_ws_variables_create | write | tagmanager.accounts.containers.workspaces.variables.create |
| tagmgr_accts_ctrs_ws_variables_delete | destructive | tagmanager.accounts.containers.workspaces.variables.delete |
| tagmgr_accts_ctrs_ws_variables_get | read | tagmanager.accounts.containers.workspaces.variables.get |
| tagmgr_accts_ctrs_ws_variables_list | read | tagmanager.accounts.containers.workspaces.variables.list |
| tagmgr_accts_ctrs_ws_variables_revert | write | tagmanager.accounts.containers.workspaces.variables.revert |
| tagmgr_accts_ctrs_ws_variables_update | write | tagmanager.accounts.containers.workspaces.variables.update |
| tagmgr_accts_ctrs_ws_zones_create | write | tagmanager.accounts.containers.workspaces.zones.create |
| tagmgr_accts_ctrs_ws_zones_delete | destructive | tagmanager.accounts.containers.workspaces.zones.delete |
| tagmgr_accts_ctrs_ws_zones_get | read | tagmanager.accounts.containers.workspaces.zones.get |
| tagmgr_accts_ctrs_ws_zones_list | read | tagmanager.accounts.containers.workspaces.zones.list |
| tagmgr_accts_ctrs_ws_zones_revert | write | tagmanager.accounts.containers.workspaces.zones.revert |
| tagmgr_accts_ctrs_ws_zones_update | write | tagmanager.accounts.containers.workspaces.zones.update |
| tagmgr_ctrs_ws_tmpls_import_from_gallery | write | tagmanager.accounts.containers.workspaces.templates.import_from_gallery |
The plugin option toolset can list fewer tools. google lists 17 tools that do the same jobs as Google's official MCP server for this product; curated lists the hand-written and gateway tools; all is the default.
Sign-in
gtm belongs to the business login group. Log in once for the group: create a Desktop OAuth client in a Google Cloud project, save its file with npx google-services-mcps setup-client, then run npx google-services-mcps login business.
The plugin's scope file lists 7 OAuth scopes for 1 APIs. A login asks only for the scopes of its profile: readonly (the default), readwrite, full, or an exact list.
| API | Scope |
|---|---|
| gtm | https://www.googleapis.com/auth/tagmanager.delete.containers |
| gtm | https://www.googleapis.com/auth/tagmanager.edit.containers |
| gtm | https://www.googleapis.com/auth/tagmanager.edit.containerversions |
| gtm | https://www.googleapis.com/auth/tagmanager.manage.accounts |
| gtm | https://www.googleapis.com/auth/tagmanager.manage.users |
| gtm | https://www.googleapis.com/auth/tagmanager.publish |
| gtm | https://www.googleapis.com/auth/tagmanager.readonly |
Plugin details
- Plugin
- gtm
- MCP server
- gtm
- Display name
- Tag Manager
- Version
- 2.17.0
- Marketplace
- google-services-mcps
- Login group
- business
- Marketplace category
- marketing
- Plugin options
- allow_writes, confirmation, token_dir, toolset
- Server kind
- curated+discovery