Skip to main content
Glama
cfdude

MCP Perplexity Pro

by cfdude

Perplexity Usage

perplexity_usage
Read-onlyIdempotent

Report recorded upstream Perplexity call costs with exact totals grouped by tool, API, model, project, or day. Filter by project and UTC date range to audit usage.

Instructions

Report what recorded upstream Perplexity calls cost: exact totals over every matching call plus one grouping, filtered by project and UTC date range. Read-only.

The cost is a lower bound: error calls count cost 0 and may have been billed. calls_cost_unknown says how many calls have no known cost. Unknown token counts add 0. Projects are matched by the name recorded with each call, so a deleted project still reports. The Agent tools (ask, chat, research) record their calls; nothing is recorded by a tool that does not make costed calls.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMost groups to return, 1 to 200 (day keeps the latest)
sinceNoFirst UTC day to include, written YYYY-MM-DD (default: no start)
untilNoLast UTC day to include, written YYYY-MM-DD (default: no end)
projectNoOnly this project's calls, matched by name (default: all projects)
group_byNoGroup by tool, api, model, project or daytool

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitYesThe group limit that was applied
sinceNoThe first UTC day included, if any
untilNoThe last UTC day included, if any
groupsYesAt most `limit` groups
totalsYesOver every matching call, ignoring limit
projectNoThe project filter, if any
group_byYesThe grouping that was applied
groups_totalYesHow many groups matched in all
groups_truncatedYesTrue when groups were cut by `limit`

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0

TDQS

A4.2/5.0
Behavior5/5

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

Goes well beyond the readOnly/idempotent annotations by disclosing that the total is a lower bound, that error calls count 0 but may have been billed, that calls_cost_unknown tracks unknown-cost calls, that unknown tokens add 0, and that deleted projects still report via recorded name. This is exactly the kind of caveat an agent needs to interpret the numbers correctly.

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 core verb and read-only nature are front-loaded, then the caveats follow in dense but purposeful sentences. Every sentence carries information (bounds, unknown tracking, project matching, which tools record), though the phrasing is slightly verbose.

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?

With an output schema present, return values needn't be detailed, and the description instead supplies the interpretive context (cost bounds, unknown-cost field, project-name matching) that an agent needs to use the figures correctly. Nothing essential for correct invocation is missing.

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%, so limit/since/until/project/group_by are already fully documented, including formats and defaults. The description's 'one grouping' note merely restates the schema's singular group_by enum, so it adds little beyond the structured fields — the baseline 3 is appropriate.

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?

States a specific verb+resource ('report what recorded upstream Perplexity calls cost') with scope (exact totals plus one grouping, filtered by project and UTC date range). It is immediately distinguishable from the sibling tools (ask/chat/research), which generate calls rather than report on their cost.

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?

Usage context is implied and partially supported: the description explains which Agent tools record calls and how projects are matched, which helps the agent understand what data is retrievable. However, it never states when to prefer this over siblings or any explicit exclusion/alternative, leaving routing to inference.

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