Skip to main content
Glama
montrellcruse

ServiceTitan MCP

marketing_reviews

Read-onlyIdempotent

Filter and retrieve customer review records by text, rating, source, status, location, technician, campaign, or date. Use inclusion flags to keep reviews missing those associations.

Instructions

Search customer review records by text, rating, source, response type, review status, location, technician, campaign, and date ranges. Returns one page; use inclusion flags when reviews missing those associations must remain in the result.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts at 1)
sortNoSort expression
searchNoSearch text
toDateNoReview date to
sourcesNoReview sources
fromDateNoReview date from
pageSizeNoRecords per page (default 50)
toRatingNoTo rating
fromRatingNoFrom rating
reportTypeNoReport type
campaignIdsNoCampaign IDs
locationIdsNoLocation IDs
includeTotalNoInclude total count in response
createdBeforeNoCreated before timestamp
responseTypesNoResponse types
technicianIdsNoTechnician IDs
modifiedBeforeNoModified before timestamp
reviewStatusesNoReview statuses
createdOnOrAfterNoCreated on or after timestamp
modifiedOnOrAfterNoModified on or after timestamp
includeReviewsWithoutCampaignNoInclude reviews without campaign
includeReviewsWithoutLocationNoInclude reviews without location
includeReviewsWithoutTechnicianNoInclude reviews without technician

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv3.0.0
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": true,
      +  "properties": {},
      +  "type": "object"
      +}
  2. First observedv2.5.1

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnly, openWorld, idempotent, and non-destructive behavior. The description adds valuable context beyond that, notably that the tool returns one page and that inclusion flags are needed to retain reviews missing campaign/location/technician associations. It does not fully explain sorting or date-range semantics, but the increment over annotations is meaningful.

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?

The description is two sentences with no filler. The first sentence front-loads the resource and core filter dimensions; the second sentence explains an important behavioral nuance about inclusion flags. Every sentence earns its place.

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?

With 23 parameters, an output schema, and full schema descriptions, the description covers the primary search dimensions and the non-obvious inclusion-flag behavior. Remaining gaps like the meaning of reportType and the interaction of date filter parameters are largely covered by the schema. The tool is sufficiently complete for an agent to invoke it correctly, though a brief note on date-range semantics would improve it.

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%, establishing a baseline of 3. The description groups many parameters into semantic dimensions (text, rating, source, response type, review status, location, technician, campaign, date ranges) and introduces the purpose of inclusion flags. However, it does not clarify ambiguous parameters such as 'reportType', 'sort', or the relationship between createdDates and review dates, so it does not exceed the baseline.

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 description clearly states the verb 'Search' and the resource 'customer review records', and enumerates the main filter dimensions (text, rating, source, response type, review status, location, technician, campaign, date ranges). It is distinct from sibling tools like marketing_calls_list or marketing_campaigns_list, but does not explicitly name an alternative or draw a contrast, so it falls just short of 5.

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?

The description provides no explicit guidance on when to use this tool versus alternatives. It only mentions that one page is returned and advises using inclusion flags when unreferenced reviews must remain, which is more behavioral guidance than usage routing. There is no mention of when not to use it or which sibling tool would be preferable in other scenarios.

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

Deploy Server

Other Tools