Skip to main content
Glama

Get outreach analytics report

getAnalyticsReport
Read-onlyIdempotent

Outreach results for up to a year (timezone defaults to UTC), by campaign, sender, ICP, product, angle or ask, filtered by channel or those values. sent counts messages; invitations are in channels.linkedin.connections. replied, positive and each outcome count prospects messaged in the period, through now; never add outcomes. meeting_requested is only an ask. channels..responses: a channel's replies and positives as Analytics shows them. Reply rate: replied over reached_prospects (rows: prospects). no_send_reasons counts decisions; first_message_ are routine pacing, not failures. pending_classification counts reply messages. delivered is no delivery rate, awaiting_delivery no backlog.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "getAnalyticsReport"
  }
}

Input Schema

NameRequiredDescriptionDefault
queryNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / query / properties / from / description
      Added value: +"First day, inclusive. Last N days includes today, as Analytics counts it: from is N-1 days before today, so the last 30 days on Nov 30 start Nov 1."
  2. First observed

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the description rightly spends its space on aggregation behavior instead: timezone defaults to UTC, the range caps at a year, sent counts messages while invitations live in channels.linkedin.connections, and outcomes must never be summed. Caveats such as 'first_message_* are routine pacing, not failures' and 'delivered is no delivery rate' prevent real misinterpretation; only auth/limits/pagination context is absent.

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?

It is dense and information-rich with no filler, but it is delivered as one uninterrupted block of telegraphic fragments ('delivered is no delivery rate, awaiting_delivery no backlog') that are hard to parse on first read. Purpose is front-loaded, yet the metric glossary would benefit from separation from the scoping sentence.

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 nested ten-property query object with no output schema, the description carries the essential return-value semantics, which is exactly the missing piece. What remains uncovered is the relationship to sibling analytics tools and the exact accepted values for string filters, which the schema leaves undocumented.

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 reported as 0% for the nested query object, the description compensates well: it enumerates the group_by values (campaign, sender, ICP, product, angle, ask), states that filtering works by channel or those same values, and specifies the timezone default and the one-year maximum range. It does not clarify the format of 'asks'/'angles' or the inclusive 'to' boundary, so it is not fully exhaustive.

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 opening clause states the resource (outreach results), the time span (up to a year), the grouping dimensions (campaign, sender, ICP, product, angle, ask) and the filter dimensions, so an agent knows exactly what report it gets. It never distinguishes this tool from the near-identical sibling getOutreachAnalytics (or getAnalyticsFilters / getAudienceFunnel), which is the main clarity gap.

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?

There is no when-to-use guidance at all: nothing says when to call this versus getOutreachAnalytics, getAnalyticsFilters, or getAudienceFunnel, and no prerequisites are named. The only implicit hint is 'as Analytics shows them', which suggests parity with the UI view but does not route the agent among alternatives.

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.

Resources