Skip to main content
Glama

Logistics: Create trip

logistics_create_trip

Dispatch a trip (рейс) against a freight order. 'freight_order_id' is required; 'driver_id' (a driver PROFILE id from logistics_list_drivers), 'vehicle_id' and 'trailer_id' are the crew and are optional — a trip can be planned before the crew is known. 'loss_norm_pct' is the permitted weight loss for this run (take it from the cargo's default in logistics_list_references when unsure). The trip number (РЕЙ-…) is assigned by the server. The trip starts in status Planned and moves the order to Assigned. Requires confirmation. CONFIRMATION: this tool is PROPOSED, never performed directly. You get status='confirmation_required' with an action_id and a plan_token, and the write happens only after confirm_action.

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": {
      "freight_order_id": "<freight_order_id>"
    },
    "name": "logistics_create_trip"
  }
}

Input Schema

NameRequiredDescriptionDefault
costNo
cargo_idNo
to_pointNo
arrive_atNoISO date (YYYY-MM-DD) or datetime.
depart_atNoISO date (YYYY-MM-DD) or datetime.
driver_idNo
carrier_idNo
from_pointNo
trailer_idNo
vehicle_idNo
distance_kmNo
payment_formNo
loss_norm_pctNo
license_numberNo
freight_order_idYes
carrier_rate_per_tonNo
carrier_payment_statusNoOne of: NotPaid, Partial, Paid.
actual_arrival_at_loadingNoISO date (YYYY-MM-DD) or datetime.
planned_loading_window_endNoISO date (YYYY-MM-DD) or datetime.
planned_loading_window_startNoISO date (YYYY-MM-DD) or datetime.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior5/5

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

Beyond the annotations (which only declare it is a non-destructive write), the description discloses that the tool is never executed directly: it returns status='confirmation_required' with an action_id and plan_token, and the write happens only after confirm_action. It also explains server-side trip numbering and the resulting status transitions, which an agent cannot infer from annotations alone.

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?

The text is dense and front-loaded: purpose first, then parameter guidance, then behavioral effects, then the confirmation protocol in a clearly labeled block. Every sentence carries information, though the all-caps CONFIRMATION tail is slightly redundant with the earlier 'Requires confirmation' sentence.

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 20-parameter creation tool with no output schema, the description covers the critical call path (required key, crew optionality, confirmation round-trip) well. It is incomplete on the many optional commercial and scheduling parameters, so an agent still has to lean on schema names for those.

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 30% across 20 parameters, yet the description adds genuine meaning for several: driver_id is a driver PROFILE id from logistics_list_drivers, crew fields are optional, and loss_norm_pct is the permitted weight loss defaulting to the cargo reference value. It leaves roughly fifteen parameters (cost, cargo_id, carrier fields, dates, payment_form, etc.) undocumented in both places, so it does not fully compensate for the coverage gap.

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 opens with a specific verb and resource: 'Dispatch a trip (рейс) against a freight order', and states the concrete side effects (trip starts Planned, order moves to Assigned). It is clear enough to distinguish creating a trip from reading or updating one, though it never explicitly differentiates itself from siblings like logistics_assign_trip or create_trip.

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?

It gives real usage conditions: a trip may be planned before the crew is known so driver/vehicle/trailer are optional, and loss_norm_pct should be taken from logistics_list_references when uncertain. It also spells out the confirmation prerequisite. It stops short of saying when to prefer this over an alternative sibling such as logistics_assign_trip.

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