Skip to main content
Glama

Field Service Business Platform by Doing Work

visits_create

Book a visit to a job at a time, optionally with the workers going (assignee_ids, a saved crew_id, or both). Overlaps for those workers come back in conflicts.

Input Schema

NameRequiredDescriptionDefault
notesNo
titleNo
job_idYes
crew_idNo
ends_atYes
priorityNonormal (default), urgent or emergency. Urgent and emergency visits send visit.priority_set and can use dispatch.suggest.
starts_atYes
assignee_idsNo
arrival_window_minutesNoArrival window in minutes: the customer is told the worker arrives between starts_at and starts_at plus this. Defaults to the shop's setting (schedule.setRules).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / crew_id
      Added value: +{
      +  "format": "uuid",
      +  "type": "string"
      +}
  2. First observed

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose one genuinely non-obvious behavior: worker overlaps are returned in 'conflicts' rather than rejected. That is valuable. It still omits other traits of a write operation — whether booking notifies workers/customers, permission requirements, idempotency, and any job-status side effect.

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 tightly written sentences, front-loaded with the core action and followed by the optional-assignment nuance and the return behavior. Nothing is wasted and no filler precedes the useful information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 9-parameter creation mutation with no annotations and no output schema, the description covers assignment and conflict reporting but leaves side effects, notification behavior, and most parameter meanings unaddressed. Enough to call it correctly in the happy path, not enough to predict its effects.

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 only 22%, so the description must compensate, and it partially does by explaining that assignee_ids and crew_id are alternatives that may be combined ('or both') — a semantic the schema cannot express. But job_id, title, notes, and the semantics of starts_at/ends_at relative to arrival_window_minutes are left undocumented in either place.

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?

Specific verb+resource: 'Book a visit to a job at a time', with the optional assignment dimension spelled out (assignee_ids, crew_id, or both). It does not, however, distinguish itself from the existing sibling visits_createRecurring, which an agent could easily confuse with a plain create.

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?

Usage is implied by 'Book a visit to a job', which tells the agent this is the scheduling entry point. There is no explicit when-not guidance, no mention of visits_createRecurring for repeat bookings, and no pointer to schedule_findTime for locating a non-conflicting slot.

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