Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.samarthanalytics-sj/samarth-gtm-mcp

NPM · SAMARTH-GTM-MCP · SCANNED SEP 20

Google Tag Manager + read-only GA4 MCP server. Read-only by default, gated writes, audits.

Available components

0 this week 90 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security89
  • No malware found by supply-chain analysis.Pass
  • CVE check failed: a known high-severity CVE affects uuid 9.0.1, reached via google-auth-library > gaxios > uuid. A fixed version is available. View diagnostics → Fail
  • No install/post-install scripts declared.Pass
  • 48 of 148 dependencies flagged as unhealthy (1 deprecated). View diagnostics → Partial
Provenance & Transparency100
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to samarthanalytics-sj/samarth-analytics-mcp). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 12 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability79
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 11859 tokens (~110/item across 107 items; 107 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management93
  • Stability observed for 28 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage91
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 72% of tool parameters carry a description.Partial
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 14 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "tags_delete" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 108 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the io.github.samarthanalytics-sj/samarth-gtm-mcp server?

io.github.samarthanalytics-sj/samarth-gtm-mcp runs locally as an npm package, launched with npx -y samarth-gtm-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · samarth-gtm-mcp

# add to Claude Code
claude mcp add samarthanalytics-sj-samarth-gtm-mcp -- npx -y samarth-gtm-mcp
// .cursor/mcp.json
{
  "mcpServers": {
    "samarthanalytics-sj-samarth-gtm-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "samarth-gtm-mcp"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "samarthanalytics-sj-samarth-gtm-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "samarth-gtm-mcp"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add samarthanalytics-sj-samarth-gtm-mcp -- npx -y samarth-gtm-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "samarthanalytics-sj-samarth-gtm-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "samarth-gtm-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add samarthanalytics-sj-samarth-gtm-mcp --command npx --arg -y --arg samarth-gtm-mcp
# ~/.hermes/config.yaml
mcp_servers:
  samarthanalytics-sj-samarth-gtm-mcp:
    command: "npx"
    args: ["-y", "samarth-gtm-mcp"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "samarthanalytics-sj-samarth-gtm-mcp": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "samarth-gtm-mcp"
      ]
    }
  }
}
# add to Vellum
assistant mcp add samarthanalytics-sj-samarth-gtm-mcp -t stdio -c npx -a -y samarth-gtm-mcp
// mcp.json
{
  "mcpServers": {
    "samarthanalytics-sj-samarth-gtm-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "samarth-gtm-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 20 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

  • 18 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 16 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 15 Sept 26 +1
    • CVE-2026-82417 no longer affects this package security
    • CVE-2026-82562 no longer affects this package security
    • Stability: 0.97 → pass security
  • 13 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

  • 11 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 9 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 8 Sept 26 +1
    • Stability: 0.97 → pass security
    • Security disclosure: unverified → pass functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Analysed npm/samarth-gtm-mcp@1.19.0

Provenance Verified

A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.

Result Verified
Ecosystem npm
Reason Verified
Discovered via Registry attestation endpoint
Source repo samarthanalytics-sj/samarth-analytics-mcp
Certificate issuer https://token.actions.githubusercontent.com
Certificate SAN https://github.com/samarthanalytics-sj/samarth-analytics-mcp/.github/workflows/release.yml@refs/heads/main
Rekor log index 1803910685
Predicate type https://slsa.dev/provenance/v1
Subject digest sha512:ef3892684692d00cfbe075fbf1afcc4ad65ddb758a73685655672f1a827dd0ce1f0ed9292149670be40c8673cbe456319a76b39a17145865910393931

Background: How many MCP packages publish verified provenance →

Vulnerabilities 1 finding
ID CVE Severity Vector Fix available
GHSA-w5hq-g745-h8pq CVE-2026-41907 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N yes

Background: What a vulnerability scan can and cannot prove →

Dependencies 148 packages
Packages resolved 148
Deprecated 1
Stale 47
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 107 exposed · ~11,055 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
gtag_config_delete ~106

[DELETE] Delete a GTM gtag config. Requires GTM_MCP_ENABLE_DELETES=true and confirm=true.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
confirmbooleanyesMust be true to confirm this delete operation.
containerIdstringyesThe GTM container ID.
gtagConfigIdstringyesThe gtag configs ID to delete.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

gtag_config_get ~73

Get a specific GTM gtag config.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
containerIdstringyesThe GTM container ID.
gtagConfigIdstringyesThe gtag configs ID.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

gtag_config_list ~118

List all GTM gtag configs in a workspace. Automatically follows pagination.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
containerIdstringyesThe GTM container ID.
maxPagesintegerMaximum number of API pages to fetch (default 50). If more pages remain, the result includes truncated:true and a nextPageToken.
pageTokenstringContinuation token to resume listing from a previous truncated result.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

gtag_config_update ~148

[WRITE] Update an existing GTM gtag config. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true. Pass the full resource as a JSON string in bodyJson.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
bodyJsonstringyesFull gtag configs resource as a JSON string.
confirmbooleanyesMust be true to confirm this write operation.
containerIdstringyesThe GTM container ID.
fingerprintstringCurrent fingerprint (for optimistic locking).
gtagConfigIdstringyesThe gtag configs ID to update.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

tags_create ~214

[WRITE] Create a new GTM tag. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true. Pass the full tag configuration as parameters.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
blockingTriggerIdarrayIDs of blocking triggers.
confirmbooleanyesMust be true to confirm this write operation.
containerIdstringyesThe GTM container ID.
firingTriggerIdarrayIDs of firing triggers.
namestringyesTag name.
notesstringOptional notes.
parameterarrayGTM parameter list. For list/map parameters, use the GTM UI or pass via raw JSON update.
parentFolderIdstringParent folder ID.
pausedbooleanWhether the tag is paused.
typestringyesTag type (e.g. "ua", "ga4", "html", "img").
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

tags_delete ~115

[DELETE] Delete a GTM tag. Requires GTM_MCP_ENABLE_DELETES=true and confirm=true. This is irreversible in the workspace (the tag is removed from the workspace).

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
confirmbooleanyesMust be true to confirm this delete operation.
containerIdstringyesThe GTM container ID.
tagIdstringyesThe GTM tag ID to delete.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

tags_get ~69

Get details of a specific GTM tag.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
containerIdstringyesThe GTM container ID.
tagIdstringyesThe GTM tag ID.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

tags_list ~118

List all GTM tags in a workspace. Automatically follows pagination to return all tags.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
containerIdstringyesThe GTM container ID.
maxPagesintegerMaximum number of API pages to fetch (default 50). If more pages remain, the result includes truncated:true and a nextPageToken.
pageTokenstringContinuation token to resume listing from a previous truncated result.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

tags_update ~224

[WRITE] Update an existing GTM tag. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true. Only the fields provided will be updated (partial update via the API fingerprint).

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
blockingTriggerIdarrayIDs of blocking triggers.
confirmbooleanyesMust be true to confirm this write operation.
containerIdstringyesThe GTM container ID.
fingerprintstringCurrent tag fingerprint (for optimistic locking).
firingTriggerIdarrayIDs of firing triggers.
namestringNew tag name.
notesstringOptional notes.
parameterarrayGTM parameter list. For list/map parameters, use the GTM UI or pass via raw JSON update.
pausedbooleanWhether the tag is paused.
tagIdstringyesThe GTM tag ID to update.
typestringNew tag type.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

templates_create ~125

[WRITE] Create a new GTM template. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true. Pass the full resource as a JSON string in bodyJson.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
bodyJsonstringyesFull templates resource as a JSON string (e.g. {"name":"...","type":"..."}).
confirmbooleanyesMust be true to confirm this write operation.
containerIdstringyesThe GTM container ID.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

templates_delete ~98

[DELETE] Delete a GTM template. Requires GTM_MCP_ENABLE_DELETES=true and confirm=true.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
confirmbooleanyesMust be true to confirm this delete operation.
containerIdstringyesThe GTM container ID.
templateIdstringyesThe templates ID to delete.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

templates_get ~65

Get a specific GTM template.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
containerIdstringyesThe GTM container ID.
templateIdstringyesThe templates ID.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

templates_list ~114

List all GTM templates in a workspace. Automatically follows pagination.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
containerIdstringyesThe GTM container ID.
maxPagesintegerMaximum number of API pages to fetch (default 50). If more pages remain, the result includes truncated:true and a nextPageToken.
pageTokenstringContinuation token to resume listing from a previous truncated result.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

templates_revert ~122

[WRITE] Revert workspace changes to a GTM template back to its last container-version state. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
confirmbooleanyesMust be true to confirm this write operation.
containerIdstringyesThe GTM container ID.
fingerprintstringCurrent fingerprint (for optimistic locking).
templateIdstringyesThe templates ID to revert.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

templates_update ~138

[WRITE] Update an existing GTM template. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true. Pass the full resource as a JSON string in bodyJson.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
bodyJsonstringyesFull templates resource as a JSON string.
confirmbooleanyesMust be true to confirm this write operation.
containerIdstringyesThe GTM container ID.
fingerprintstringCurrent fingerprint (for optimistic locking).
templateIdstringyesThe templates ID to update.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

transformations_create ~125

[WRITE] Create a new GTM transformation. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true. Pass the full resource as a JSON string in bodyJson.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
bodyJsonstringyesFull transformations resource as a JSON string (e.g. {"name":"...","type":"..."}).
confirmbooleanyesMust be true to confirm this write operation.
containerIdstringyesThe GTM container ID.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

transformations_delete ~98

[DELETE] Delete a GTM transformation. Requires GTM_MCP_ENABLE_DELETES=true and confirm=true.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
confirmbooleanyesMust be true to confirm this delete operation.
containerIdstringyesThe GTM container ID.
transformationIdstringyesThe transformations ID to delete.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

transformations_get ~65

Get a specific GTM transformation.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
containerIdstringyesThe GTM container ID.
transformationIdstringyesThe transformations ID.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

transformations_list ~114

List all GTM transformations in a workspace. Automatically follows pagination.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
containerIdstringyesThe GTM container ID.
maxPagesintegerMaximum number of API pages to fetch (default 50). If more pages remain, the result includes truncated:true and a nextPageToken.
pageTokenstringContinuation token to resume listing from a previous truncated result.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

transformations_revert ~122

[WRITE] Revert workspace changes to a GTM transformation back to its last container-version state. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
confirmbooleanyesMust be true to confirm this write operation.
containerIdstringyesThe GTM container ID.
fingerprintstringCurrent fingerprint (for optimistic locking).
transformationIdstringyesThe transformations ID to revert.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

transformations_update ~138

[WRITE] Update an existing GTM transformation. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true. Pass the full resource as a JSON string in bodyJson.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
bodyJsonstringyesFull transformations resource as a JSON string.
confirmbooleanyesMust be true to confirm this write operation.
containerIdstringyesThe GTM container ID.
fingerprintstringCurrent fingerprint (for optimistic locking).
transformationIdstringyesThe transformations ID to update.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

triggers_create ~194

[WRITE] Create a GTM trigger. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true.

NameTypeReqDescription
accountIdstringyes
confirmbooleanyes
containerIdstringyes
customEventFilterUsed for custom event triggers.
eventNameobjectCustom event name (for customEvent type).
filterarrayConditions that must be met for the trigger to fire.
namestringyesTrigger name.
notesstring
parentFolderIdstring
typestringyesTrigger type (e.g. "click", "pageview", "customEvent", "domReady", "windowLoaded", "historyChange", "jsError", "scrollDepth", "elementVisibility", "timer", "youTubeVideo", "formSubmission", "linkClic…
workspaceIdstringyes

No output schema declared.

No examples provided.

triggers_delete ~70

[DELETE] Delete a GTM trigger. Requires GTM_MCP_ENABLE_DELETES=true and confirm=true.

NameTypeReqDescription
accountIdstringyes
confirmbooleanyes
containerIdstringyes
triggerIdstringyes
workspaceIdstringyes

No output schema declared.

No examples provided.

triggers_get ~47

Get a specific GTM trigger.

NameTypeReqDescription
accountIdstringyes
containerIdstringyes
triggerIdstringyes
workspaceIdstringyes

No output schema declared.

No examples provided.

triggers_list ~103

List all GTM triggers in a workspace. Automatically follows pagination to return all triggers.

NameTypeReqDescription
accountIdstringyes
containerIdstringyes
maxPagesintegerMaximum number of API pages to fetch (default 50). If more pages remain, the result includes truncated:true and a nextPageToken.
pageTokenstringContinuation token to resume listing from a previous truncated result.
workspaceIdstringyes

No output schema declared.

No examples provided.

triggers_update ~119

[WRITE] Update a GTM trigger. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true.

NameTypeReqDescription
accountIdstringyes
confirmbooleanyes
containerIdstringyes
customEventFilter
eventNameobject
filterarray
fingerprintstring
namestring
notesstring
triggerIdstringyes
typestring
workspaceIdstringyes

No output schema declared.

No examples provided.

user_permissions_create ~107

[WRITE] Grant a user access to a GTM account (and optionally containers). Requires GTM_MCP_ENABLE_WRITES=true and confirm=true.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
accountPermissionstringAccount-level permission.
confirmbooleanyesMust be true to confirm this write operation.
containerAccessarrayPer-container access entries.
emailAddressstringyesEmail address of the user to grant access to.

No output schema declared.

No examples provided.

user_permissions_delete ~80

[DELETE] Revoke a user's access to a GTM account. Requires GTM_MCP_ENABLE_DELETES=true and confirm=true.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
confirmbooleanyesMust be true to confirm this delete operation.
userPermissionIdstringyesThe user permission ID to delete.

No output schema declared.

No examples provided.

user_permissions_get ~47

Get a specific user permission record for a GTM account.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
userPermissionIdstringyesThe user permission ID.

No output schema declared.

No examples provided.

user_permissions_list ~105

List all user permissions for a GTM account. Automatically follows pagination. Each record shows a user email plus their account and per-container access levels.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
maxPagesintegerMaximum number of API pages to fetch (default 50). If more pages remain, the result includes truncated:true and a nextPageToken.
pageTokenstringContinuation token to resume listing from a previous truncated result.

No output schema declared.

No examples provided.

user_permissions_update ~118

[WRITE] Update a user's account and/or container access levels. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true. Provide the full intended access (account + container) as the API replaces the record.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
accountPermissionstringAccount-level permission.
confirmbooleanyesMust be true to confirm this write operation.
containerAccessarrayPer-container access entries.
userPermissionIdstringyesThe user permission ID to update.

No output schema declared.

No examples provided.

variables_create ~173

[WRITE] Create a GTM variable. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true.

NameTypeReqDescription
accountIdstringyes
confirmbooleanyes
containerIdstringyes
disablingTriggerIdarray
enablingTriggerIdarray
namestringyesVariable name.
notesstring
parameterarray
parentFolderIdstring
typestringyesVariable type (e.g. "v" for data layer, "k" for first-party cookie, "u" for URL, "c" for constant, "jsm" for custom JS, "smm" for lookup table, "gas" for GA settings).
workspaceIdstringyes

No output schema declared.

No examples provided.

variables_delete ~70

[DELETE] Delete a GTM variable. Requires GTM_MCP_ENABLE_DELETES=true and confirm=true.

NameTypeReqDescription
accountIdstringyes
confirmbooleanyes
containerIdstringyes
variableIdstringyes
workspaceIdstringyes

No output schema declared.

No examples provided.

variables_get ~47

Get a specific GTM variable.

NameTypeReqDescription
accountIdstringyes
containerIdstringyes
variableIdstringyes
workspaceIdstringyes

No output schema declared.

No examples provided.

variables_list ~105

List all user-defined GTM variables in a workspace. Automatically follows pagination to return all variables.

NameTypeReqDescription
accountIdstringyes
containerIdstringyes
maxPagesintegerMaximum number of API pages to fetch (default 50). If more pages remain, the result includes truncated:true and a nextPageToken.
pageTokenstringContinuation token to resume listing from a previous truncated result.
workspaceIdstringyes

No output schema declared.

No examples provided.

variables_update ~104

[WRITE] Update a GTM variable. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true.

NameTypeReqDescription
accountIdstringyes
confirmbooleanyes
containerIdstringyes
fingerprintstring
namestring
notesstring
parameterarray
typestring
variableIdstringyes
workspaceIdstringyes

No output schema declared.

No examples provided.

versions_create ~106

[WRITE] Create a new GTM container version from a workspace (checkpoint). Requires GTM_MCP_ENABLE_WRITES=true and confirm=true. This takes a snapshot of the workspace into a versioned checkpoint without publishing.

NameTypeReqDescription
accountIdstringyes
confirmbooleanyes
containerIdstringyes
namestringVersion name/label.
notesstringVersion notes / change description.
workspaceIdstringyes

No output schema declared.

No examples provided.

versions_delete ~74

[DELETE] Delete a GTM container version. Requires GTM_MCP_ENABLE_DELETES=true and confirm=true. Cannot delete a currently published (live) version.

NameTypeReqDescription
accountIdstringyes
confirmbooleanyes
containerIdstringyes
containerVersionIdstringyes

No output schema declared.

No examples provided.

versions_get ~74

Get the full contents of a specific GTM container version. Pass "live" as containerVersionId to get the currently live version.

NameTypeReqDescription
accountIdstringyes
containerIdstringyes
containerVersionIdstringyesThe container version ID, or "live" for the current live version.

No output schema declared.

No examples provided.

versions_list ~51

List all container version headers (summary) for a GTM container.

NameTypeReqDescription
accountIdstringyes
containerIdstringyes
includeDeletedbooleanInclude deleted versions in results.

No output schema declared.

No examples provided.

versions_publish ~93

[PUBLISH] Publish a specific GTM container version to live. Requires GTM_MCP_ENABLE_PUBLISH=true and confirm=true. ⚠️ This immediately makes the version live in production.

NameTypeReqDescription
accountIdstringyes
confirmbooleanyesMust be true to confirm this publish operation.
containerIdstringyes
containerVersionIdstringyesThe version ID to publish.

No output schema declared.

No examples provided.

versions_set_latest ~99

[WRITE] Set a specific container version as the "latest" (synchronizes the default workspace with this version). Note: This does NOT publish. Use versions_publish to go live. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true.

NameTypeReqDescription
accountIdstringyes
confirmbooleanyes
containerIdstringyes
containerVersionIdstringyesThe version ID to set as latest.

No output schema declared.

No examples provided.

versions_undelete ~69

[WRITE] Undelete a previously deleted GTM container version. Requires GTM_MCP_ENABLE_WRITES=true and confirm=true.

NameTypeReqDescription
accountIdstringyes
confirmbooleanyes
containerIdstringyes
containerVersionIdstringyes

No output schema declared.

No examples provided.

workspace_create_version_and_publish ~117

[PUBLISH] Create a new container version from a workspace and immediately publish it. Requires GTM_MCP_ENABLE_PUBLISH=true and confirm=true. ⚠️ This is the most powerful write operation — it goes live in production immediately.

NameTypeReqDescription
accountIdstringyes
confirmbooleanyesMust be true to confirm this publish operation.
containerIdstringyes
namestringVersion name.
notesstringVersion notes.
workspaceIdstringyes

No output schema declared.

No examples provided.

workspace_get_status ~92

Get the status of a GTM workspace: the list of changed entities (workspaceChange) relative to the latest container version, plus any merge conflicts. Use this to review a change diff before creating a version or publishing.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
containerIdstringyesThe GTM container ID.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

workspace_quick_preview ~69

Generate a quick-preview (debug) link for a GTM workspace. This does NOT publish — it just enables preview mode. Returns a preview container version with any compilation errors.

NameTypeReqDescription
accountIdstringyes
containerIdstringyes
workspaceIdstringyes

No output schema declared.

No examples provided.

workspace_resolve_conflict ~154

Resolve a merge conflict for a workspace entity. You must supply the full entity body to write into the workspace (overwriting the conflict). NOTE: This is a complex operation — review the GTM UI conflict resolution first.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
confirmbooleanyesMust be true to confirm this write operation.
containerIdstringyesThe GTM container ID.
entityJsonstringyesJSON string of the full entity (tag/trigger/variable/folder) to use as the resolved version.
fingerprintstringyesThe workspace fingerprint at the time of conflict resolution.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

workspace_sync ~87

Syncs a workspace to the latest container version by updating all unmodified workspace entities. Returns a list of merge conflicts if any.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
confirmbooleanyesMust be true to confirm this operation.
containerIdstringyesThe GTM container ID.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

workspaces_create ~86

[WRITE] Create a new workspace. Requires GTM_MCP_ENABLE_WRITES=true.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
confirmbooleanyesMust be true to confirm this write operation.
containerIdstringyesThe GTM container ID.
descriptionstringWorkspace description.
namestringyesWorkspace name.

No output schema declared.

No examples provided.

workspaces_get ~57

Get details of a specific GTM workspace.

NameTypeReqDescription
accountIdstringyesThe GTM account ID.
containerIdstringyesThe GTM container ID.
workspaceIdstringyesThe GTM workspace ID.

No output schema declared.

No examples provided.

Common questions

What is the io.github.samarthanalytics-sj/samarth-gtm-mcp server?

io.github.samarthanalytics-sj/samarth-gtm-mcp is listed in the public MCP registry as io.github.samarthanalytics-sj/samarth-gtm-mcp. Google Tag Manager + read-only GA4 MCP server. Read-only by default, gated writes, audits. This page covers its npm package (samarth-gtm-mcp).

Is the io.github.samarthanalytics-sj/samarth-gtm-mcp server safe to use?

io.github.samarthanalytics-sj/samarth-gtm-mcp scores 90 out of 100 on VerifyMCP. We recorded 1 known advisory against it as of 20 September 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.samarthanalytics-sj/samarth-gtm-mcp server expose?

io.github.samarthanalytics-sj/samarth-gtm-mcp exposes 107 tools: accounts_list, accounts_get, containers_list, containers_get, containers_create, and 102 more. Their descriptions and schemas cost roughly 11,055 tokens of context every time the server is loaded.

Is the io.github.samarthanalytics-sj/samarth-gtm-mcp server still maintained?

io.github.samarthanalytics-sj/samarth-gtm-mcp is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the io.github.samarthanalytics-sj/samarth-gtm-mcp server under?

io.github.samarthanalytics-sj/samarth-gtm-mcp declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.