Skip to main content
Glama

Analytics: Create property

ga4_create_property

Create a GA4 property FOR one of this agency's clients — with its web data stream (which yields the G- measurement ID for the site tag) — and link it to that client. Day-one set-up for a new client. Previews unless confirm is true. Follow with ga4_create_key_event, wp_install_tracking (ga4_id = measurement_id) and ga4_link_google_ads.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
clientYesClient name from list_clients — the property is created for, and linked to, this client
confirmNo
currencyNoUSD
time_zoneYesIANA time zone of the business, e.g. America/Denver
account_idNoAnalytics ACCOUNT id to create it in (from list_connected_accounts). Only needed when the login can see more than one account.
website_urlYesThe client's site, e.g. https://example.com/
display_nameYesProperty name, usually the client's business name

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare a non-readOnly, openWorld, non-idempotent mutation, and the description adds real behavioral detail beyond them: it previews by default and only commits when confirm is true, and it discloses side effects (creates a stream, links to the client, emits a measurement ID). It omits any idempotency/duplicate-creation warning, which matters given idempotentHint=false.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with the action and follow-up context, with no filler. The long parenthetical about the G- measurement ID and the run-on follow-on list make it slightly dense but each clause carries information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 7-parameter mutation with no output schema, the description covers purpose, sequencing, preview behavior, and the key returned value (measurement ID). It lacks auth/permission requirements and error/retry behavior, but is otherwise sufficient to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 71% and the description compensates for the key uncovered parameter by explaining confirm ("Previews unless confirm is true") and clarifying that client drives linking. It also names the follow-up parameter binding (ga4_id = measurement_id). Currency, one of the uncovered params, is not explained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Create a GA4 property") and enriches it with scope: it creates the web data stream, yields the G- measurement ID, and links the property to a named client. This clearly differentiates it from siblings like ga4_create_key_event and ga4_link_google_ads, which appear later in the workflow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives strong usage context ("Day-one set-up for a new client") and an explicit follow-on chain (ga4_create_key_event, wp_install_tracking, ga4_link_google_ads). It does not state when NOT to use it (e.g., if a property already exists), so it stops short of full when/when-not coverage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.