hs-code-suggestions2.52 KB
View saved version →
---
name: hs-code-suggestions
description: Suggest HS codes for a product with Senda's find_hs_codes tool, and present them as suggestions to confirm with a licensed customs broker. Use when the user asks for an HS code, an HTS number, a tariff heading or "what code does this fall under", or describes a product they import or export and wants its classification.
---
# HS code suggestions with Senda
`find_hs_codes` suggests up to eight 6-digit HS subheadings for a product
described in plain words, most likely first. It names the US tariff schedule
revision it checked them against and returns a disclaimer. It reads none of
the user's records.
## How to ask
- Describe **what the product is and what it is made of**, in 3 to 200
characters: "kiln-dried white oak lumber", "hyaluronic acid serum in glass
dropper bottles". If the user's description is vague ("wood", "parts"),
ask what it is, what it is made of and what it is for before calling.
- One product per call. For several products, call once for each.
## How to answer
- Show the top few suggestions with their 6-digit code and description, most
likely first, and name the tariff schedule revision the tool returned.
- **Always say these are suggestions, not a classification**, and that the
user should confirm the code with a licensed customs broker. Include the
disclaimer the tool returned, in your own words if it reads better.
- Use only codes the tool returned. Never invent a code, extend one to 8 or
10 digits, or state a duty rate: the full US HTS number, the duty and any
additional duties depend on details only a classification settles.
- Don't add a confidence score or an accuracy figure. The tool gives none.
- **No candidates** means no confident match. Say so, ask for more detail
(material, use, how it is processed), or suggest asking a broker. Don't
guess.
## Binding classifications
If the user wants a binding or final classification ("the code to put on my
entry", "a ruling"), say you can't provide one. Offer the suggestions as a
starting point, and point them to a licensed customs broker. In the US, a
binding ruling comes from US Customs and Border Protection.
## Example
"Suggest an HS code for kiln-dried white oak lumber" → `find_hs_codes` →
"Senda suggests **4407.91** (oak, sawn or chipped lengthwise, of a thickness
exceeding 6 mm) as the most likely subheading, then 4407.99 and other
4407 subheadings, checked against the US tariff schedule revision it names.
These are suggestions to confirm with a licensed customs broker, not a
classification."
trade-desk4.59 KB
View saved version →
---
name: trade-desk
description: Answer questions about the user's own Senda records with Senda's read-only tools. Use when the user mentions a shipment, booking, bill of lading, order, invoice or container number, asks where a shipment or container stands or when it is due, which documents are on file, what a tally report counted, or anything else about their company's orders, shipments, containers, documents or tally reports in Senda.
---
# Senda trade desk
Senda is where the user's trade operations team keeps its orders, shipments,
containers, documents and tally reports. The Senda tools read that company's
records. They never change anything.
## Find, then read
1. **Not sure which company this is?** Call `get_account`. It names the
company, its plan and the tools this connection can use. If the user asks
about a different company, say this connection reads only the company
shown there.
2. **The user gave a number or a few words** (a shipment, booking, bill of
lading, order, invoice or container number, a place, a status, a document
type): call `search` with exactly what they gave, then `fetch` the results
that match. Every word of the query must match, so search for the number
alone rather than a whole sentence.
3. **The user wants a list** ("which shipments are in transit", "my recent
orders"): call the matching `list_` tool with `limit` up to 100. Read the
next page (raise `offset` by `limit`) while `has_more` is true and the
answer needs it. Lists come newest first.
4. **You already have a Senda id** from a list: use the matching `get_` tool.
It returns the record and a link to it in Senda.
A container's record lists the shipments it is linked to. To say where a
container is, read its linked shipment with `get_shipment`.
## Answer from what the tools return
- Use only what the tools return. Quote numbers and dates exactly. If nothing
matches, say so plainly ("Senda has no shipment numbered …") and suggest
checking the number. Never fill a gap with a guess.
- **Link every record you mention** with the `url` the tool returned, so the
user can open it in Senda.
- **Status and dates are what the company recorded in Senda**, entered by its
team or imported. Say "recorded as in transit, estimated delivery
12 October", not "the ship is at sea now". Senda's tools carry no live
vessel position.
- **Documents are details only**: the type, what the document is attached
to, whether a file was uploaded, and when. You can't open, read or
summarise a file. Point the user to the record's link.
- Summarise; don't paste raw JSON. Use a short table when you list several
records.
## Never claim to change anything
Every Senda tool is read-only. Never say or imply that anything in Senda was
created, changed, filed, submitted, sent or deleted. If the user asks you to
do one of those (file an ISF or an entry, submit a declaration, update a
status, delete an order, email a partner), say that this connection can only
read, and that they can do it in Senda (give the record's link) or with their
customs broker.
## When a tool says no
| Result | What to tell the user |
| --- | --- |
| `not_found` | Senda has no such record in this company. Check the number or id. |
| `query_timeout` | The search was too broad. Try a more specific number or a smaller page. |
| `invalid_arguments` | Fix the request (for example, a page size from 1 to 100) and try again. |
| `unavailable` | Senda couldn't read it just now. Try again shortly, and quote the incident id to Senda support if it keeps happening. |
| Unauthorized / asked to sign in | The connection ended. Reconnect Senda in the assistant's connector settings. |
| `plan_required` | The company's Senda plan doesn't include assistant access. An owner or admin can compare plans at sendaship.com/pricing. Don't push an upgrade. |
| `rate_limited` | Too many requests this minute. Wait a minute, then continue. |
## Examples
(The numbers below are made-up examples.)
- "Where is container MSCU1234567?" → `search` "MSCU1234567" → `fetch` the
container → `get_shipment` for its linked shipment → "Container
MSCU1234567 is on shipment SH-EXAMPLE-0042, recorded as in transit with
estimated delivery on 12 October," with both links.
- "What documents are on SH-EXAMPLE-0042?" → `search` the shipment number
(it returns the shipment and the documents attached to it) → `fetch` each
document → list the type, whether a file was uploaded and when, with the
shipment's link.
- "Delete order SO-EXAMPLE-1042" → no tool call that acts → "I can only read
your Senda records, so I can't delete it. You can do that in Senda: …"