Skip to main content
Glama

getCallHistory

Read-only

Compact list of the user's calls. Params: type (INCOMING|OUTGOING|ALL), count (default 5; choose the smallest useful count and use more only if needed), skip (default 0), and optional sinceHours. Any explicit call time window takes precedence over a name, phone, company, or topic and must use sinceHours. It is a hard boundary: do not silently search older calls when that window has no match; increase count or paginate only inside the same boundary. Returns id, direction, status, phone, timestamp, receptionist, title, and short summary. Copy one exact likely Call ID into getCallDetails; never reconstruct an ID.

Input Schema

NameRequiredDescriptionDefault
skipYesNumber of results to skip, default is 0
typeYesType of the history
countYesNumber of compact results. Choose the smallest useful count: normally 5; use more only when the user asks for an exhaustive list or 5 results were insufficient. Up to 20; larger values are capped to 20.
sinceHoursYesHard time boundary: only return calls whose call time falls within this many hours (incoming createdAt; outgoing scheduledAt). Future scheduled outbound calls are excluded. Use for requests like "today", "recently", or "a couple of hours ago" instead of putting time words into search. If no returned call matches, say so or ask before widening; do not run an unbounded search in the same turn.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnly/destructive/openWorld, so the bar is lower, and the description still adds real behavior: results are compact, the hard time boundary semantics, future scheduled outbound calls are excluded, and which fields come back. It does not mention auth requirements, rate limits, or ordering, so not a 5.

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?

Front-loaded with purpose, then params, then boundary rules, then the handoff to getCallDetails; nearly every clause carries an actionable constraint. The enumeration of return fields is slightly list-like and the density of clauses makes it a bit heavy, but nothing is truly wasted given there is no output schema.

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 no output schema, the description compensates by naming the returned fields; with four required params, all are discussed; and the sibling handoff (exact Call ID into getCallDetails) closes the loop. Nothing an agent needs in order to call it correctly is missing.

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 coverage is 100%, so a 3 would be the floor, but the description adds cross-cutting semantics the schema does not: time windows must be expressed via sinceHours rather than other filters, and count should be the smallest useful value with more only when needed. That is genuine meaning beyond the per-parameter 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?

States a specific verb and resource ('Compact list of the user's calls') and implicitly contrasts with getCallDetails by telling the agent to fetch one full call afterward. It does not distinguish itself from nearby look-alikes such as app_listCalls or search, which is the only thing keeping it from a 5.

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?

Gives explicit selection rules: use sinceHours for any explicit time window, and that window takes precedence over name/phone/company/topic filters. It also states a hard negative ('do not silently search older calls when that window has no match') and the escalation path (increase count or paginate inside the boundary), so an agent knows both when to use it and when not to widen.

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