Skip to main content

AI-powered implementation guides, dataLayer QA and tracking documentation over the Model Context Protocol.

Project description

🧪 Measure Tracking QA MCP

AI-powered implementation guides, dataLayer QA and tracking documentation — over the Model Context Protocol.

Read a tracking guide, audit a site's dataLayer against it, validate GA4 collection, score coverage and prepare a GTM plan — in natural language, from Claude, ChatGPT, Codex, Gemini or any MCP client.

A product of the Measure AI ecosystem · built on measure-sdk.

License Python SDK


What is Measure Tracking QA MCP?

Measurement is a hand-off chain: analytics writes a guide → developers implement the dataLayer → analytics validates it → GTM sends events → GA4 collects them → someone audits quality and documents the gaps. This MCP automates and assists that whole flow. It reads your implementation guide, opens the real site, compares what fires against what was specified, and produces a QA report, a developer checklist, a stakeholder summary and a Tracking Coverage Score.

"Read this tracking guide and validate if it is complete."
"Audit this website dataLayer against this Google Sheets guide."
"Find missing events in the checkout flow."
"Validate if add_to_cart includes all required ecommerce parameters."
"Compare dataLayer events vs GA4 network hits."
"Generate a QA report for development."
"Generate a GTM implementation plan from this tracking guide."
"Calculate the Tracking Coverage Score."

Try it instantly (demo mode)

No site or sheet yet? Every tool works against realistic sample data:

MEASURE_TQA_DEMO=true measure-tracking-qa

Relationship to Measure SDK

Like every Measure product, this depends on only measure-sdk — never on other MCPs (if Analytics/Paid-Media MCPs are also connected, the model composes them client-side; they never call each other).

Provided by measure-sdk Provided by this repo
OAuth, sessions, credential storage Connectors: Google Sheets, Web QA (Playwright)
Config, logging, HTTP, retry Guide / dataLayer / GA4 / GTM-plan / coverage engines
MCP utilities, base CLI (measure login) MCP server + tracking tools + Tracking Coverage Score
Shared domain models & enums Tracking models (TrackingSpec, DataLayerEvent, Ga4Hit)

Result types — AuditFinding, Report, HealthScore, Recommendation, ExecutionPlan, ValidationResult — come from the SDK and are never redefined.

Install

pip install measure-tracking-qa-mcp          # pulls measure-sdk automatically
pip install "measure-tracking-qa-mcp[web]"   # + Playwright for live dataLayer QA
playwright install chromium                  # one-time browser download (web extra)
measure login                                # Google OAuth (Sheets, GTM, GA4)
measure-tracking-qa                          # start the MCP server (stdio)

MCP tools (49)

Group Tools
Discovery list_tracking_connectors
Guide Intelligence read_tracking_guide, validate_tracking_guide, normalize_tracking_spec, export_tracking_spec, create_tracking_guide_sheet
DataLayer QA capture_datalayer_events, validate_datalayer_against_spec, find_missing_events, find_missing_parameters, find_invalid_parameter_types, find_unexpected_events
Web QA start_web_qa_session, run_tracking_qa_flow, validate_checkout_tracking, validate_form_tracking, capture_ga4_network_hits, run_journey_qa, validate_ecommerce_journey
Reporting generate_qa_report, generate_developer_checklist, generate_stakeholder_summary, generate_tracking_coverage_score
Documentation create_qa_report_doc, create_tracking_guide_doc, create_tracking_summary_slides, export_implementation_spec
Design Intelligence analyze_pdf_requirements, generate_tracking_spec_from_reference, analyze_figma_file, extract_user_actions_from_figma, generate_tracking_spec_from_design, generate_event_taxonomy
GA4 Validation validate_ga4_requests, compare_spec_vs_ga4_hits, validate_ecommerce_items, suggest_custom_dimensions, generate_ga4_collection_report
GTM Planning generate_gtm_implementation_plan, preview_gtm_changes, export_gtm_change_plan, generate_gtm_variables_plan, generate_gtm_triggers_plan, generate_gtm_tags_plan, validate_gtm_workspace, create_gtm_workspace_draft
Recommendations generate_tracking_recommendations, prioritize_tracking_actions
Alerts run_tracking_alert_now

Tools accept a guide three ways: an inline spec (JSON), a Google Sheet (sheet_id or MEASURE_TQA_DEFAULT_SHEET_ID), or demo mode. dataLayer events come from a live url (Playwright), an inline events list, or demo.

Tracking Coverage Score

A standard 0-100 score (SDK HealthScore) weighting Guide completeness 20%, DataLayer compliance 30%, GA4 collection accuracy 20%, GTM implementation quality 20%, Documentation quality 10% — comparable across the ecosystem.

What it validates

  • Event-level: event exists, fires once, snake_case naming, documented trigger.
  • Parameter-level: required present, correct type, non-empty, allowed enum values.
  • Ecommerce-level: items array, item_id/item_name, transaction_id on purchase, duplicate-purchase detection (dataLayer and GA4 hits).
  • Collection: dataLayer event → GA4 /collect hit (parsed from the network), spec → GA4 collection, dataLayer vs GA4 parity, GA4 property collected events.
  • Journey-level: checkout-funnel event order across a multi-step journey.

Supported sources

Phase Sources
v0.1 (Guide + DataLayer QA) Google Sheets (guide matrix) ✅ · Web QA / Playwright (dataLayer + GA4 hits) ✅ · inline JSON specs ✅
v0.2 (Documentation) Google Docs ✅ · Google Slides ✅ · Google Drive
v0.3 (Design Intelligence) PDF (pypdf) ✅ · Figma (API) ✅ → proposed specs
v0.4 (GTM Planning) Google Tag Manager ✅ (read container, workspace draft + dry-run)
v0.5 (GA4 Validation) GA4 Admin ✅ (custom dimensions) · GA4 Data ✅ (collected events)
v0.6 (Journey QA) Multi-step journey + ecommerce funnel QA ✅ · AppTweak-style recorders 🛣️

Architecture (Clean Architecture)

src/measure_tracking_qa/
├── core/          # domain: TrackingSpec, EventSpec, DataLayerEvent, Ga4Hit, enums
├── config/        # settings (extends SDK CoreSettings; optional, non-secret)
├── connectors/    # infrastructure: google_sheets, web (Playwright), google_docs,
│                  #   google_slides, google_drive, gtm, ga4, figma, pdf
├── engines/       # application (pure): guides, datalayer, ga4_validation,
│                  #   gtm_planning, documentation, design, recommendations,
│                  #   alerts, health_score, web_qa
├── services/      # orchestration (connectors → engines)
├── validators/    # input validation → SDK ValidationResult
├── mcp/           # interface: server.py + tools/
└── cli/           # the measure-tracking-qa entry point

See docs/architecture/overview.md.

Security & disclaimer

This MCP is read-only by default: it reads, audits, recommends and documents. Write actions are gated: writing a guide to a Sheet requires confirm=true, and it never publishes to GTMgenerate_gtm_implementation_plan only ever returns a proposed ExecutionPlan for you to apply manually. Any future write action follows preview → dry-run → confirmation → audit. See SECURITY.md.

Develop

git clone https://github.com/measure-mcp/measure-tracking-qa-mcp.git
cd measure-tracking-qa-mcp
uv sync --all-extras
uv run ruff check . && uv run mypy . && uv run pytest

Ecosystem

measure-sdk Shared core: domain models, enums, Health Score, infra.
measure-analytics-mcp GA4, GTM, BigQuery, Consent, Server-Side, Data Quality.
measure-paid-media-mcp Google Ads, Meta, LinkedIn, TikTok, Microsoft, CM360.
measure-organic-mcp Organic Growth (SEO · ASO · GEO).
measure-tracking-qa-mcp This product (guides · dataLayer QA · tracking docs).

See CHANGELOG.md · ROADMAP.md · SECURITY.md · CONTRIBUTING.md · CODE_OF_CONDUCT.md.

License

Apache-2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

measure_tracking_qa_mcp-0.6.1.tar.gz (62.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

measure_tracking_qa_mcp-0.6.1-py3-none-any.whl (71.0 kB view details)

Uploaded Python 3

File details

Details for the file measure_tracking_qa_mcp-0.6.1.tar.gz.

File metadata

  • Download URL: measure_tracking_qa_mcp-0.6.1.tar.gz
  • Upload date:
  • Size: 62.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for measure_tracking_qa_mcp-0.6.1.tar.gz
Algorithm Hash digest
SHA256 6e0c8a20dbae69598251a75c398c45fe5bbf4f3dee9cff291261361ef57fab1e
MD5 a1fd8c1afd4d445a8831269bdc8623ef
BLAKE2b-256 9a9a45fba2d52495355d87c14652887a222adf0c7c4c96953d1c8624b9b21f24

See more details on using hashes here.

Provenance

The following attestation bundles were made for measure_tracking_qa_mcp-0.6.1.tar.gz:

Publisher: release.yml on measure-mcp/measure-tracking-qa-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file measure_tracking_qa_mcp-0.6.1-py3-none-any.whl.

File metadata

File hashes

Hashes for measure_tracking_qa_mcp-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a924166ed97636c69324214e177d56612751ab329a77b70372c00ce1f0e950ff
MD5 e1d406152d089c26b68400c1a461ceb8
BLAKE2b-256 4c2b999cd9ea51da11356126670e8e57767f22920fc2f7f0712467a5e124ff81

See more details on using hashes here.

Provenance

The following attestation bundles were made for measure_tracking_qa_mcp-0.6.1-py3-none-any.whl:

Publisher: release.yml on measure-mcp/measure-tracking-qa-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page