Skip to main content
Glama
rakoo04

analytics-mcp-server

by rakoo04

List Analytics Connections

list_connections
Read-onlyIdempotent

List configured analytics connections (Google accounts or Clarity projects) to see what's available before using other tools.

Instructions

List every configured connection (Google account or Clarity project) available to this MCP server.

Connections are set up once, outside of the LLM conversation, via the CLI (npm run cli -- add-google <name> or npm run cli -- add-clarity <name> --token <token>) and are stored in ~/.analytics-mcp-server, independent of any single project — the same connection can be reused across any project by referring to it by name.

Every other tool in this server takes a "connection" argument matching one of the names returned here.

Args:

  • response_format ('markdown' | 'json'): Output format (default: 'markdown')

Returns: For JSON format: { "connections": [ { "name": string, "type": "google" | "clarity", "label": string, "createdAt": string } ] }

Use when: "What analytics connections do I have set up?" or before calling any ga4_/gsc_/clarity_ tool if the connection name is unknown.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
response_formatNoOutput format: 'markdown' for human-readable or 'json' for machine-readablemarkdown

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already convey read-only, idempotent, and non-destructive behavior. The description adds meaningful context beyond that: connections live in ~/.analytics-mcp-server, are created outside the LLM conversation, and are not scoped to a single project. It also states that the tool returns all connections with no filtering, and shows the JSON return shape.

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 well-structured and front-loaded with the core purpose. The setup context and usage guidance add value, and the Returns section is necessary because there is no output schema. However, the 'Args' block repeats schema information, introducing mild redundancy; still, it is organized and readable.

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?

For a one-parameter read-only list tool with no output schema, the description is complete: it defines the return format for JSON, gives usage triggers, explains the connection model, and notes the relationship to all sibling tools. An agent has everything needed to call this correctly.

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 100%, and the input schema already documents response_format with enum values, default, and a clear description. The 'Args' section in the tool description essentially duplicates this schema information without adding new meaning, so the baseline of 3 applies.

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 opens with 'List every configured connection (Google account or Clarity project) available to this MCP server' — a specific verb, resource, and scope. It explicitly names the two connection types and clarifies the role of connections as named arguments for sibling tools, distinguishing it from analytics data tools like ga4_run_report.

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 provides explicit when-to-use guidance: 'Use when: "What analytics connections do I have set up?" or before calling any ga4_/gsc_/clarity_ tool if the connection name is unknown.' It also explains that connections are pre-configured via CLI and stored independently, so agents understand they must call this tool to discover valid connection names.

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