Skip to main content
Glama
iclaudiumihaila

Google Analytics MCP Server

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.1

  • Disambiguation5/5

    Each tool has a clearly distinct purpose: account summaries, custom dimensions/metrics, property details, Google Ads links, realtime reports, and standard reports. No overlap or confusion between tools.

    Naming Consistency5/5

    All tools use consistent snake_case naming with appropriate verbs (get_, list_, run_) followed by specific nouns, making the pattern predictable and easy to understand.

    Tool Count5/5

    With 6 tools, the server is well-scoped for Google Analytics operations, covering account/ property metadata, custom dimensions/metrics, Ads links, and both standard and realtime reporting.

    Completeness3/5

    While the core reporting and metadata tools are present, the server lacks tools to list standard dimensions and metrics, which are referenced in the report tool descriptions, creating a discoverability gap for agents.

  • Average 3.7/5 across 6 of 6 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under Apache 2.0.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    With no annotations provided, the description bears full responsibility for behavioral disclosure. It merely states 'retrieves information,' which implies a read operation, but omits details about permissions, rate limits, data scope, or whether the result includes summaries or raw data. This leaves an agent with an incomplete behavioral picture.

    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 a single, front-loaded sentence that immediately states the verb and object. Every word adds value, and there is no redundancy or filler. Perfectly concise for its purpose.

    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 simplicity (no parameters, has output schema), the description covers the core functionality. However, it does not hint at the output structure or data fidelity (e.g., 'returns a list of accounts with their properties'), reducing completeness slightly. An output schema exists, so return value details are not required, but some additional context would improve agent understanding.

    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?

    The tool has zero parameters, so the input schema is trivially complete (100% coverage). The description does not need to add parameter details. Per guidelines, a baseline of 4 is appropriate for zero-parameter tools.

    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 uses the specific verb 'retrieves' and names the resource ('user's Google Analytics accounts and properties'), making the purpose clear. It implicitly distinguishes from sibling tools like get_property_details (narrower scope) and run_report (different purpose), though it could be more explicit about the summarization aspect.

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

    Usage Guidelines2/5

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

    The description offers no guidance on when to use this tool versus alternatives such as get_property_details or run_report. An agent would have to infer usage context solely from the tool name and sibling names, which is insufficient for clear decision-making.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It only mentions returning a list, without disclosing side effects, read-only nature, authentication requirements, or behavior when no links exist.

    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?

    Extremely concise: two sentences plus a clear args section. Purpose is front-loaded, no redundant information.

    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 simplicity (one param, output schema exists), the description covers the basic purpose and parameter format, but lacks usage context and behavioral details, leaving some gaps for a complete agent understanding.

    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?

    Although schema coverage is 0%, the description adds value by explaining accepted formats for 'property_id' (number or 'properties/' prefix), which is not obvious from the schema's 'anyOf' definition.

    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 returns a list of links to Google Ads accounts for a property, using specific verb 'Returns' and resource. It is distinguishable from siblings, which cover other aspects like account summaries or reports.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool over alternatives, nor any prerequisites or exclusions. The description only states what it does, missing context for agent decision-making.

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

  • Behavior2/5

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

    With no annotations provided, the description must carry the full burden of behavioral disclosure. It only states that the tool returns custom dimensions and metrics, but does not mention any side effects, authentication requirements, rate limits, or whether the operation is read-only. For a simple read operation, this is minimally acceptable but lacking.

    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 short and front-loaded with the main purpose. It includes an 'Args' section for the parameter. However, it could be slightly more compact or structured, but it is efficient and avoids unnecessary 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 the tool is simple with one required parameter and an output schema exists, the description adequately covers the parameter format. However, it does not mention what the output contains (e.g., a list of objects) or any prerequisites, though the output schema may cover return values. It is minimally complete but leaves some context unexplored.

    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?

    The schema coverage is 0%, meaning the schema itself provides no description for property_id. The description compensates by explaining accepted formats (number or 'properties/' string), which adds meaning beyond the schema's type definition.

    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 title and description clearly state the tool retrieves custom dimensions and metrics for a specific property. It uses a specific verb ('returns') and resource ('custom dimensions and metrics'), and it is easily distinguished from sibling tools like get_account_summaries or run_reports.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. For example, it does not explain how it differs from get_property_details or when a user should choose this over other tools. The description only states what it does without context.

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

  • Behavior2/5

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

    With no annotations, the description must disclose behavioral traits. It only states it returns details without explaining the nature of details, error handling, or side effects. The parameter format is explained, but overall transparency is minimal.

    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 extremely concise with two sentences, front-loading the purpose and then detailing the parameter. No unnecessary 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 the presence of an output schema (though not shown), the description is adequate for a simple one-parameter tool. However, it lacks context on what 'details' includes and does not differentiate usage from siblings.

    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?

    The description adds meaningful semantics beyond the schema by describing both accepted formats (number or string with 'properties/' prefix) for property_id. Schema coverage is 0%, so this addition is valuable.

    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 'Returns details about a property' clearly states the verb and resource. The context of the tool name and sibling tools (e.g., get_account_summaries, run_report) makes the specific domain (Google Analytics) obvious, distinguishing it effectively.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like get_account_summaries or run_report. It does not specify scenarios or exclusions, leaving the agent without selection criteria.

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

  • Behavior4/5

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

    No annotations provided, so the description carries full burden. It discloses: snake_case field name requirement, pagination behavior, independent application of filters, limitations on complex filter combos, and quota considerations. It does not explicitly mention error handling or authentication, but these are less critical for a report tool.

    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?

    The description is very long and contains redundancy (the Notes on filter limitations appear twice). While well-structured with sections and examples, it could be more concise. The sheer length may overwhelm, though justified for a complex tool with 11 parameters.

    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?

    Given the complexity (11 params, 4 required, nested objects) and the presence of an output schema, the description covers parameter details, usage, limitations, alternatives, and provides examples. It does not detail return values (covered by output schema) but could mention relationship to run_realtime_report. Overall, very complete.

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

    Parameters5/5

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

    Schema description coverage is 0%, yet the description provides extensive parameter documentation for all 11 parameters, including formats, constraints, examples, and links to external references. This fully compensates for the lack of schema descriptions.

    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 it runs a Google Analytics Data API report. The title specifies 'Data API', distinguishing it from real-time reporting (sibling run_realtime_report). However, it does not explicitly contrast with other siblings like get_account_summaries or list_google_ads_links, which have different purposes.

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

    Usage Guidelines5/5

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

    The description includes explicit guidance: 'Don't use this for filtering metrics. Use metric_filter instead.' and vice versa. It provides alternatives for complex filter combinations (options a and b) and references sibling tools for custom dimensions/metrics. It also explains pagination with limit/offset and references external guides.

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

  • Behavior4/5

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

    With no annotations, the description carries full burden. It discloses that the report is realtime, includes pagination, filter independence limitations, and optional quota return. However, it does not explicitly state whether the tool is read-only or any authentication requirements, though these are implicit.

    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?

    The description is very long and includes repeated notes (e.g., the same filter limitation appears for both dimension_filter and metric_filter). While well-structured, it could be more concise. Every sentence adds some value, but the length impacts readability.

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

    Completeness5/5

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

    Given the complexity of 9 parameters, nested objects, and filter limitations, the description is thorough. It covers parameter formats, constraints, examples, API limitations, and links to external resources. The presence of an output schema does not reduce the need for description, and it meets that need fully.

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

    Parameters5/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 with detailed parameter explanations. It provides format, constraints, examples, and links for all parameters, including dimensions, metrics, filters, order_bys, and pagination. This fully compensates for the lack of schema documentation.

    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 that the tool runs a Google Analytics Data API realtime report, specifying the resource (realtime report) and the type of data (realtime). It distinguishes itself from sibling tools like 'run_report', which handles non-realtime reports.

    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?

    While the description does not explicitly state 'use this for realtime data only' or provide alternatives, the name and title make it clear. The extensive hints and notes about filter limitations guide appropriate usage. The lack of explicit when-not guidance slightly reduces the score.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

google-analytics-mcp MCP server

Copy to your README.md:

Score Badge

google-analytics-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/iclaudiumihaila/google-analytics-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server