Skip to main content
Glama
pghdma

CallRail MCP

by pghdma

search_calls_by_number

Find calls from/to a specific phone number. Matches on the last 10 digits of the stored customer_phone_number so any format works.

Instructions

Find calls from/to a specific phone number. Matches on the last 10 digits of the stored customer_phone_number so any format works.

Args: phone_number: Any format, normalized to digits-only. Must contain at least 7 digits to avoid false positives. account_id: Auto-resolves. company_id: Optional company filter. days: Lookback window (default 90).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
daysNo
account_idNo
company_idNo
phone_numberYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.3/5.0
Behavior4/5

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

No annotations are present, so the description carries the burden. It discloses key behavior: last-10-digit matching, normalization to digits-only, a 7-digit minimum to avoid false positives, account_id auto-resolution, and default lookback window. It doesn't mention pagination/rate limits, but this is a read/search operation and output schema covers returns.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded one-sentence purpose, followed by a tight Args block. No filler; each line conveys a distinct constraint.

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 4-parameter search tool with no annotations and an output schema, this is nearly complete: purpose, all parameters, matching behavior, and lookback are covered. It would be slightly stronger with an explicit alternative/when-not-to-use, but nothing essential to invoke 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 0%, but the description documents every parameter with operational detail: phone_number format and minimum length, account_id auto-resolution, company_id as optional filter, and days as lookback with default. This is exactly the compensation needed.

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 the exact operation ('Find calls from/to a specific phone number') and resource ('calls'), plus matching semantics (last 10 digits). This distinguishes it from list_calls/get_call at a glance.

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?

Implies usage when an agent has a phone number and needs related calls, and describes input constraints (at least 7 digits). However, it does not explicitly name sibling alternatives like list_calls/get_call or state when not to use them.

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