Skip to main content
Glama
montrellcruse

ServiceTitan MCP

export_timesheet_codes

Read-onlyIdempotent

Fetch incremental timesheet codes export feed for bulk sync. Continue with the continuation token while hasMore is true, then wait before polling again.

Instructions

Read the incremental timesheet codes export feed for bulk synchronization. Start with a date or omit from to start at the beginning of the feed, continue immediately with continueFrom while hasMore is true, and when false retain it and wait before polling again. includeRecentChanges may return records sooner but can repeat them.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fromNoContinuation token or date string for incremental export
includeRecentChangesNoInclude recent changes not yet committed

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

A4.4/5.0
Behavior5/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 goes further by disclosing pagination semantics (hasMore/continueFrom) and the non-obvious caveat that includeRecentChanges can return records sooner but may repeat them. No contradiction with annotations.

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?

Two sentences with no redundancy. The core purpose is front-loaded, and each sentence delivers actionable behavior (how to start, continue, wait, and handle includeRecentChanges).

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?

The description covers the full polling lifecycle: starting, continuing while hasMore is true, retaining and waiting when false, and the includeRecentChanges caveat. Since an output schema exists, return-value details are not the description's burden. For an incremental feed tool, this is complete.

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?

The schema already documents both parameters (100% coverage), so the baseline is 3. The description adds practical semantics by explaining that 'from' can be a date or omitted to start at the beginning of the feed, and that includeRecentChanges is a tradeoff between receiving records sooner and seeing duplicates.

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 states a specific verb ('Read'), a specific resource ('incremental timesheet codes export feed'), and a purpose ('bulk synchronization'). It does not explicitly name sibling alternatives like payroll_timesheet_codes_list, but the 'incremental export feed' language helps distinguish it from list-style endpoints.

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?

Provides explicit polling instructions: start with a date or omit from, continue with continueFrom while hasMore is true, wait when hasMore is false, and warns about includeRecentChanges behavior. This is clear invocation context, though it never explicitly names alternatives for one-off reads, so it stops short of when-not guidance.

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