Skip to main content
Glama

Get post statistics

get_post_stats
Read-only

Reads engagement for one published post from LinkedIn: impressions, reach (unique viewers), reactions, comments, and reposts, plus clicks for company page posts. Also returns engagement_rate (reactions, comments and reposts per 100 impressions; null under 100 impressions), comment_share (percent of the engagement that is comments), early (true while the post is under a day old), and attributes (format, length, hashtags, link, first comment, company tags). get_insights compares recent posts with what is usual for the account. Numbers are lifetime totals and LinkedIn can lag by a few hours. A value is null when LinkedIn did not return it. needs_reconnect true means the LinkedIn connection lacks the analytics permission; the account owner reconnects LinkedIn in PostPen to grant it. Only posts with status sent have statistics. networks lists the post’s copies on X, Facebook, Instagram, Threads and YouTube, each with impressions (views on Instagram, Threads and YouTube), reach, likes, comments, shares, clicks, saves and engagements where that network gives them (null where it does not), or supported false and a reason (the account needs reconnecting for analytics, or the X API plan does not include reading post metrics). For a post that did not go to LinkedIn, linkedin.supported is false and networks has its numbers.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

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

Input Schema

NameRequiredDescriptionDefault
idYesId of a published post, from list_posts status sent.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior4/5

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

Annotations only declare read-only/open-world; the description adds substantial behavior: lifetime totals, LinkedIn lag of a few hours, null semantics for missing values, needs_reconnect for missing analytics permission, and per-network supported/reason fallbacks. This is well beyond what annotations provide.

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?

Front-loads the core metrics, which is good, but the middle and end are dense run-on sentences mixing return fields, null rules, auth remediation, and per-network behavior. It is information-rich but could be tightened or bulleted without losing content.

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?

There is no output schema, so the description carries full responsibility for explaining returns, and it does: metrics, derived fields (engagement_rate, comment_share, early, attributes), null cases, permission errors, and the networks sub-structure. An agent has everything needed to interpret the response.

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?

One parameter with 100% schema coverage, so the schema already defines 'id'. The description still adds meaning by tying valid values to posts from list_posts with status 'sent', which is a real constraint not captured in the schema text alone.

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?

Opens with a specific verb+resource ('Reads engagement for one published post from LinkedIn') and enumerates the exact metrics returned. It also explicitly distinguishes itself from the sibling get_insights, which handles account-level comparisons rather than a single post.

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?

States the key precondition that only posts with status 'sent' have statistics, and names get_insights as the alternative for comparing recent posts to account norms. It does not explicitly forbid use on drafts, but the precondition effectively covers that.

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