Skip to main content
Glama

Google Analytics (unofficial)

Server Details

Connect Google Analytics to ChatGPT. Query GA4 data in plain English and get instant insights.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsB

Average 3.5/5 across 5 of 5 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct aspect: catalog for discovering metrics/dimensions, funnel for conversion steps, report for general reporting, sources for listing connected properties, and manage_surface for selectors. No ambiguity.

Naming Consistency4/5

All tools share the 'marketing_' prefix, and most follow 'get_<noun>' pattern except 'manage_surface'. This minor deviation is consistent with its dual get/update purpose.

Tool Count5/5

Five tools is well-scoped for an analytics reporting server, covering core functionalities without being excessive or insufficient.

Completeness4/5

Covers discovery, reporting, and configuration; missing some create/delete operations but aligns with its reporting focus.

Available Tools

5 tools
marketing_get_catalogList supported marketing reporting sources, metrics, and dimensionsB
Read-only
Inspect

Use this when the user wants to discover the canonical marketing reporting graph, available sources, supported metrics, supported dimensions, or which connectors are live today. Do not use this for GA4 account discovery or data retrieval.

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceNo
Behavior3/5

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

Annotations already indicate read-only and non-destructive. Description adds that the tool returns canonical graph, sources, metrics, dimensions, and live connectors, which is helpful but not extensive behavioral detail.

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

Conciseness5/5

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

Two sentences, front-loading the primary use case and adding a negative use case. Every sentence is meaningful with no waste.

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

Completeness2/5

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

With only one optional parameter and no output schema, the description should cover the parameter. It does not explain the 'source' parameter, leaving a significant gap. The purpose is clear, but the missing parameter semantics make it incomplete.

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

Parameters1/5

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

Input schema has one parameter 'source' with no description or enum. Description does not mention the parameter at all, leaving its purpose entirely unclear. Schema description coverage is 0%, so the description fails to compensate.

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

Purpose4/5

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

Description clearly states the tool discovers the marketing reporting graph, sources, metrics, dimensions, and live connectors. It distinguishes from GA4 discovery but doesn't fully differentiate from sibling 'marketing_get_sources' which may overlap.

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?

Tells when to use (for discovery of catalog) and when not to use (GA4 account discovery or data retrieval). Does not list alternative sibling tools by name, but implication is clear.

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

marketing_get_funnelGet marketing funnel dataA
Read-only
Inspect

Use for ordered conversion-step analysis: GA4 ordered_steps step funnels (e.g. session_start → add_to_cart → purchase) and cross-source holistic_bundle landing-page funnels joining GA4, Google Search Console, and Bing Webmaster. Covers funnel drop-off between steps (e.g. from landing on the site to adding to cart to purchasing), conversion paths, and acquisition-to-conversion context. Pass one date range for a single window or two date ranges for period-over-period comparison.

ParametersJSON Schema
NameRequiredDescriptionDefault
appNoOptional app or web stream selector. Use this when the user identifies the GA4 source by stream ID, measurement ID, Firebase app ID, or stream name.
typeYes
limitNo
funnelNoMulti-step funnel definition. Use this only for ordered step analysis, not for general website analytics reporting.
propertyNoGoogle Analytics property identifier. Accepts a numeric GA4 property ID like 481373915 or a resource name like properties/481373915.
surfaceIdNodefault
dateRangesYesOne or more GA4 date ranges. Use two date ranges for period-over-period comparisons or significance checks.
propertyIdNoNumeric GA4 property ID for the funnel report.
appStreamIdNoOptional data stream ID when the funnel should run against a specific app or website stream.
bingSiteUrlNo
ga4PropertyIdNoGoogle Analytics property identifier. Accepts a numeric GA4 property ID like 481373915 or a resource name like properties/481373915.
funnelBreakdownNo
funnelNextActionNo
returnPropertyQuotaNo
searchConsoleSiteUrlNo
funnelVisualizationTypeNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false. The description adds context about the types of funnels and cross-source capabilities but does not disclose additional behavioral traits such as rate limits, quota handling, or data freshness. Given annotations, the description provides adequate but not extra behavioral context.

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?

The description is a single paragraph that is reasonably concise and front-loads the main purpose. It could benefit from bullet points or clearer structure, but it is not overly verbose and each sentence adds value.

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

Completeness2/5

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

Considering the tool's complexity (16 parameters, nested objects, no output schema), the description is insufficient. It gives a high-level overview but lacks guidance on how to structure the funnel parameter, use filters, or interpret results. An agent would need additional knowledge to correctly invoke the tool.

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

Parameters2/5

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

Schema description coverage is low at 44%, and the tool description does not compensate. The description only mentions date ranges and funnel types; it does not explain key parameters like app, funnel, funnelBreakdown, or filter expressions. The schema provides some descriptions, but overall parameter semantics are insufficient for an agent to use the tool correctly.

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?

The description clearly states it is for ordered conversion-step analysis and cross-source holistic_bundle landing-page funnels. It provides specific examples like session_start → add_to_cart → purchase and mentions covering drop-off, conversion paths, and acquisition-to-conversion context. This distinguishes it from sibling tools like marketing_get_report.

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?

The description tells when to use the tool: for ordered conversion-step analysis and cross-source funnels. It also indicates using one or two date ranges for comparison. However, it does not explicitly state when not to use it or compare to alternative tools like marketing_get_report.

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

marketing_get_reportGet holistic marketing report dataA
Read-only
Inspect

Primary reporting tool for a given GA4 property or site. Use for totals, trends, and breakdowns by dimension across GA4 website traffic and app analytics, Google Search Console site traffic, and Bing Webmaster — including last-30-days summaries, revenue, leads, sessions, users, engagement/time-on-page (average_session_duration, user_engagement_duration), and period-over-period comparisons. Drill deep: GA4 supports up to 9 grouped dimensions (date/hour, geo, device/browser/OS, source/medium/channel, landing_page/page_path, etc.). Defaults to all mapped connected sources merged into one standardized view, aligned on the shared grain (typically landing_page) so a page row blends GA4 sessions+engagement with Search Console/Bing clicks/impressions/CTR/position; per-source detail (e.g. full query lists) stays in sourceSections. Note GA4 has no query dimension and Search Console/Bing have no sessions/engagement, so those cannot share one row — query is a Search Console/Bing breakdown. Narrow with sources or sourceMode='single'. Any GA4 dimension/metric name not in the catalog is passed through to the GA4 API automatically; metricMode='source_native' forces a pure GA4-native report. Pass one date range for a single window or two date ranges for period-over-period comparison.

ParametersJSON Schema
NameRequiredDescriptionDefault
appNoOptional app or web stream selector. Use this when the user identifies the GA4 source by stream ID, measurement ID, Firebase app ID, or stream name.
siteNo
limitNo
offsetNo
sourceNo
maxRowsNo
metricsYesGA4 metric API names such as sessions, activeUsers, conversions, eventCount, totalRevenue, or engagedSessions. Include explicit numerator and denominator metrics when requesting significance context.
siteUrlNo
sourcesNo
orderBysNoOptional sort order. Each entry requires fieldName (a GA4 API name like sessions or date) and optional desc (true for descending). Example: [{ fieldName: "sessions", desc: true }].
pageSizeNo
propertyNoGoogle Analytics property identifier. Accepts a numeric GA4 property ID like 481373915 or a resource name like properties/481373915.
surfaceIdNoOptional analysis surface ID. When omitted, the default surface is used if no explicit selector is provided.
dateRangesYesOne or more GA4 date ranges. Use two date ranges for period-over-period comparisons or significance checks.
dimensionsNoOptional GA4 dimensions such as date, country, deviceCategory, landingPagePlusQueryString, or dateRange. Omit entirely for aggregate totals (renders as KPI widget). Only include when the user asks for a breakdown or trend.
metricModeNocanonical
propertyIdNoNumeric Google Analytics 4 property ID for website analytics or app analytics. Use this when the user references a GA4 property directly.
sourceModeNoauto
appStreamIdNoGA4 app or web data stream ID when the request targets a specific app stream or website stream.
significanceNoOptional significance context for GA4 rate comparisons. Use this only when the user asks whether a change is statistically significant or meaningful.
keepEmptyRowsNo
metricFiltersNo
returnAllRowsNo
sourceOptionsNo
dimensionFiltersNo
metricFilterExpressionNo
dimensionFilterExpressionNo
Behavior4/5

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

Annotations already indicate read-only and open-world behavior. Description adds valuable context: merging of sources aligned on landing_page, passthrough of unknown GA4 names to API, limitations across sources (GA4 lacks query, Search Console lacks sessions), and defaults for sources. No contradiction with annotations.

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

Conciseness3/5

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

Description is long but front-loaded with key points. It is well-structured, covering purpose, usage, and technical details. However, it could be more concise; some sentences are dense and may require multiple reads. Earns its place but not optimally concise.

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

Completeness3/5

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

Given the tool's complexity (27 parameters, no output schema), the description covers many aspects: data sources, merging, dimension restrictions, period-over-period, passthrough. But it lacks output format details and does not explain all parameters. For a complex tool, this is moderately complete but has notable gaps.

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

Parameters3/5

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

Schema description coverage is low (37%), so description must compensate. It adds meaning for dateRanges (single vs dual for period-over-period), sources, and sourceMode. But many parameters (e.g., app, site, limit, offset) are not explained beyond their schema definitions. The description partially mitigates the gap but not fully.

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

Purpose4/5

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

Description clearly states it is the primary reporting tool for GA4 properties/sites, covering totals, trends, breakdowns, and period-over-period comparisons. It mentions specific metrics and dimensions. However, it does not explicitly differentiate from sibling tools like marketing_get_funnel or marketing_get_sources, though the context implies distinct purposes.

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

Usage Guidelines3/5

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

Description implies it is the go-to report tool and suggests narrowing with sources or sourceMode='single' for specific queries. It notes per-source detail stays in sourceSections, hinting at when to use alternate sources. However, it does not explicitly state when to use siblings like get_funnel or get_sources, leaving some ambiguity.

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

marketing_get_sourcesDiscover marketing data sourcesA
Read-only
Inspect

Lists connected and missing GA4, Google Analytics properties, property IDs, web streams, app streams, measurement IDs, Firebase app IDs, Google Search Console sites, Bing Webmaster sites, and current analysis surface mappings. Use this before reporting when property/site selectors are unknown.

ParametersJSON Schema
NameRequiredDescriptionDefault
sourcesNo
surfaceIdNodefault
Behavior4/5

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

Annotations already declare readOnlyHint and destructiveHint. The description adds valuable behavioral details about what's 'listed' (connected and missing sources, mappings), helping the agent understand the tool's output without a schema.

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?

The description is informative and front-loaded with a comprehensive list. Each sentence adds value, though the list could be slightly more structured. No wasted words.

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

Completeness3/5

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

Given no output schema and 2 parameters, the description adequately states the tool's purpose and when to use it. However, it lacks details on output format (JSON? array?) and does not fully describe parameter usage, leaving some gaps for the agent.

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

Parameters2/5

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

Schema description coverage is 0%. The description mentions items matching the sources enum (GA4, Search Console, Bing) but does not explain the surfaceId parameter. Key parameter surfaceId is left undocumented, failing to compensate for the missing schema descriptions.

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?

The description uses a specific verb 'Lists' and enumerates many concrete resource types (GA4 properties, web streams, app streams, etc.), clearly differentiating from sibling tools like marketing_get_catalog or marketing_get_report.

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?

Explicitly states 'Use this before reporting when property/site selectors are unknown', providing clear context. While it doesn't say when not to use, the statement implies alternatives exist for known selectors.

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

marketing_manage_surfaceGet or update analysis surface mappingsBInspect

Gets or updates persisted selectors for a website/app analysis surface. Use action='get' to inspect mappings and action='update' to persist GA4, Search Console, or Bing Webmaster selectors.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
actionYes
selectorsNo
surfaceIdNodefault
mainDomainNo
selectorSetsNo
Behavior3/5

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

Annotations already indicate readOnlyHint=false and destructiveHint=false. The description adds behavioral context by naming the two actions (get vs update) and mentioning the specific selector types. However, it lacks detail on side effects (e.g., whether update overwrites or merges) and does not disclose any permission or limitation info beyond the annotations.

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

Conciseness5/5

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

The description is exceptionally concise: two short sentences. The first sentence states the general purpose, and the second gives specific usage instructions for the 'action' parameter. Every word adds value, with no redundancy or filler.

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

Completeness2/5

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

Given the tool's complexity (6 parameters, nested objects, no output schema), the description is far from complete. It omits explanations for 'name', 'surfaceId', 'mainDomain', 'selectorSets', and the detailed structure of 'selectors'. While the core action is clear, the agent would lack context for correctly using most parameters.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It only mentions the 'action' parameter and loosely lists the three selector types (ga4, search_console, bing_webmaster). Key parameters like 'name', 'surfaceId', 'mainDomain', and 'selectorSets' are completely unexplained. The nested structure of 'selectors' is also not described, offering minimal improvement over the bare schema.

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

Purpose4/5

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

The description clearly states the tool gets or updates persisted selectors for an analysis surface, specifying two distinct actions via the 'action' parameter. It lists the three supported selector types (GA4, Search Console, Bing Webmaster). However, it does not explicitly differentiate from sibling tools like marketing_get_catalog, but the resource focus is distinct enough.

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?

The description explicitly instructs when to use each action: 'Use action='get' to inspect mappings and action='update' to persist... selectors.' This provides clear context for the two modes. No exclusions or alternative tools are mentioned, but the sibling tools likely serve different purposes (e.g., getting reports, catalogs), so the guidance is adequate.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources