What it does
Carrier Tracking Narrator pulls shipment status from a carrier tracking API (FedEx/UPS/DHL), normalizes carrier-specific status codes into a common vocabulary, derives an ETA and delay flag, and classifies exceptions (customs hold, delivery failed, damaged, address issue, weather delay, lost) — all deterministically in code. An LLM is used only to phrase a human-readable status/alert message; it never invents or changes a status, ETA, or exception. Gated: a live run needs a carrier sandbox API and approval; this build is connector-ready and validated against deterministic mock fixtures. Guardrails: read-only GET only, prompt-injection defang on carrier free text, PII masking, no fabrication. Built for logistics and customer-support teams who want automated shipment status narration instead of manually checking carrier portals.
Example prompts
- Track these shipments and tell me their status and ETA
- Check if any of my shipments have exceptions
- Classify the exception for this DHL shipment
- Derive the ETA for this UPS shipment
Tools (9)
Tools the agent exposes — your AI client calls them automatically when it needs them.
- run_full — Run the full pipeline: collect tracking data, normalize status, derive ETA, classify exceptions, synthesize a status/alert message.
- fetch_tracking — Fetch raw normalized tracking data (carrier API read-only GET; mock fixtures when no live credentials).
- normalize_status — Deterministically map a carrier-native status code to the common status vocabulary.
- derive_eta — Deterministically derive ETA and a delay flag from ship date / carrier ETA / last scan and the promised date.
- classify_exception — Deterministically classify a shipment exception from carrier status and scan notes.
- synthesize_message — Produce a human-readable status/alert message for a shipment. LLM for phrasing with a deterministic template fallback.
- list_capabilities — List tools, supported carriers, normalized status vocabulary, and credential slots.
- discover_intent — Understand your goal and co-design the exact input via clarifying questions before running.
- plan_inputs — Plan/brainstorm the inputs for a tool: returns questions, schema and a ready-to-edit example.
What you'll need to connect
This agent will ask you for the following. You enter them when you connect — they're encrypted and never shared with the creator.
- Carrier API Key (gated) · optionalGATED. Carrier tracking API key (FedEx/UPS/DHL sandbox). Carrier-specific host set at install. Leave blank to run on mock fixtures.Get this from *'s account or API settings.Paste the value as a single line.Only sent to: *
- Carrier API Secret (gated) · optionalGATED. Carrier tracking API secret.Get this from *'s account or API settings.Paste the value as a single line.Only sent to: *
- Carrier Account Number (gated) · optionalGATED. Carrier account number.Get this from *'s account or API settings.Paste the value as a single line.Only sent to: *
- Anthropic API Key · optionalOptional. Leave blank on a sampling-capable client to use the host model with no key.Create a key on the Anthropic Console API keys page (console.anthropic.com → API keys).Paste the value as a single line.Only sent to: api.anthropic.com
How you're protected
FindAgent runs these safety checks on every agent automatically. They're always on and can't be turned off.
- Prompt-injection scanning
Every request is checked for known prompt-injection and jailbreak attempts before the agent runs. This is always on.
- Secret-leak scanning
Every response is scanned for leaked API keys, tokens, and other secrets before it reaches you. This is always on.