Skip to main content
Glama

Get job

get_job
Read-onlyIdempotent

Retrieve a Tradify job's full details—customer, site, status, staff, tasks, notes, appointments, costs, timesheets, and linked quotes or invoices—before updating or changing it.

Instructions

Full job: description, site, tasks, notes, appointments, costs, linked quotes and invoices.

Returns one job: customer, contact, site address, status, reference and description, the staff on it, its tasks and notes, the Scheduler appointments (times with the company's UTC offset), the costs logged on it (products and misc costs), the time logged on it (timesheets) and the quotes and invoices linked to it. Read it before changing a job.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "job_id": "<job_id>"
    },
    "name": "get_job"
  }
}

Input Schema

NameRequiredDescriptionDefault
job_idYesJob ID from list_jobs.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.1

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered structurally. The description adds useful behavioral content — that appointment times come with the company's UTC offset, and that quotes/invoices/timesheets are pulled in as linked aggregates — but says nothing about permissions, cost/size of the openWorld lookup, or pagination of the nested collections. Good additive detail, but not rich.

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: the one-line summary names the resource components before the detailed return listing, and no sentence is filler. There is mild redundancy between the opening checklist and the expanded return sentence, which repeats the same contents.

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 carries the return-value burden and discharges it thoroughly — it enumerates every returned section and flags the UTC-offset nuance for appointment times. For a single-parameter, annotation-covered read tool, 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.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single job_id is documented as 'Job ID from list_jobs', which already tells the agent the provenance and format of the identifier. The description adds nothing further about the parameter, so the baseline of 3 holds.

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 ('Returns one job') and then enumerates exactly what the resource contains: customer, contact, site, status, staff, tasks, notes, Scheduler appointments, costs, timesheets, and linked quotes/invoices. Against siblings like list_jobs or get_customer, an agent can immediately tell this is the single-job full-detail read.

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?

The closing line 'Read it before changing a job' gives an explicit precondition that routes the agent here before mutations such as update_job_status. It does not name a when-not case or an alternative sibling (e.g. list_jobs for browsing), so it stops short of full routing guidance.

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