Triplicate for AI agents and developers
Let ChatGPT, Claude or your own software create export documents with Triplicate: a matching proforma invoice, commercial invoice, packing list and shipping instruction from one set of order data. Free, no key, nothing stored.
MCP server
Remote MCP server (Streamable HTTP, no sign-in):
https://api.triplicatedocs.com/mcp
Add it as a custom connector in an AI assistant that supports remote MCP servers, or in your own agent. For clients that only run local servers, use a bridge such as mcp-remote:
{
"mcpServers": {
"triplicate": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.triplicatedocs.com/mcp"
]
}
}
}
Tools
- create_trade_documents – order data in; a link to the filled-in proforma invoice, commercial invoice, packing list and shipping instruction out, with totals (amount, cartons, net and gross weight, CBM) and checks (missing fields, HS code format, Incoterms freight and insurance).
- lookup_hs_code – search the HS 2022 nomenclature (6 digits) by English description or code prefix.
- calculate_shipment – CBM, gross weight, air and express chargeable weight, LCL revenue tons and container fit from carton sizes.
Example prompt: “Make the commercial invoice and packing list for this order with Triplicate: …” The assistant returns a link; you check the documents there and save the PDF.
JSON API
Free, no key. OpenAPI description.
curl -s https://api.triplicatedocs.com/api/v1/documents \
-H 'Content-Type: application/json' \
-d @order.json
Request body (order.json):
{
"language": "en",
"open_document": "ci",
"document": {
"number": "INV-2026-001",
"date": "2026-10-01",
"po": "PO-778"
},
"seller": {
"name": "HANBIT COSMETICS CO., LTD.",
"address": "45 Teheran-ro, Gangnam-gu\nSeoul 06164, Korea",
"tax_id": "123-45-67890"
},
"buyer": {
"name": "SAIGON BEAUTY TRADING CO., LTD.",
"address": "88 Nguyen Hue Blvd, District 1\nHo Chi Minh City, Vietnam"
},
"terms": {
"incoterm": "CIF",
"place": "Cat Lai",
"payment": "T/T 30% deposit, 70% before shipment",
"currency": "USD"
},
"shipment": {
"port_of_loading": "Busan, Korea",
"port_of_discharge": "Cat Lai, Vietnam",
"etd": "2026-10-08",
"country_of_origin": "Republic of Korea"
},
"charges": {
"freight": 450,
"insurance": 38.5
},
"items": [
{
"description": "Hydrating Toner 150ml",
"hs_code": "3304.99",
"quantity": 2400,
"unit": "PCS",
"unit_price": 3.2,
"pieces_per_carton": 48,
"net_weight_per_carton_kg": 9.6,
"gross_weight_per_carton_kg": 11.2,
"carton_length_cm": 40,
"carton_width_cm": 30,
"carton_height_cm": 28
}
],
"bank": {
"bank_name": "EXAMPLE BANK",
"swift": "EXMPKRSE",
"account": "000-000000-00-000",
"beneficiary": "HANBIT COSMETICS CO., LTD."
}
}
Response:
{
"url": "https://triplicatedocs.com/#d=jZNNbxoxEIb...",
"opens": "ci",
"totals": {"currency": "USD", "subtotal": 7680, "freight": 450, "insurance": 38.5, "total": 8168.5,
"quantity": {"PCS": 2400}, "cartons": 50, "net_weight_kg": 480, "gross_weight_kg": 560, "cbm": 1.68},
"checks": [],
"next": "Give the user this link. It opens Triplicate's free generator with everything filled in; ..."
}
POST https://api.triplicatedocs.com/api/v1/documents– documents link, totals and checks.GETon the same path returns the full input schema.POST https://api.triplicatedocs.com/api/v1/hs–{"query": "cotton t-shirts"}→ HS 2022 candidates.POST https://api.triplicatedocs.com/api/v1/shipment–{"cartons": [{"length_cm": 40, "width_cm": 30, "height_cm": 28, "quantity": 50, "gross_weight_kg": 11.2}]}→ CBM and chargeable weight.
Currencies: USD, EUR, GBP, JPY, CNY, KRW, VND. Units: PCS, SETS, BOXES, PAIRS, KG, M. Incoterms 2020 rules. Up to 100 items.
How the link works and what is stored
The documents are not stored anywhere. The API turns the order data into a link to the generator with the data packed into the part after #, which browsers never send to a server; the page reads it in the browser, fills in the form and removes it from the address bar. If the form already holds the user's own data, the page asks before replacing it.
The API processes each request in memory and keeps nothing; we count only how many calls each tool gets per day. Your IP address is used briefly in memory to limit requests (30 per minute) and is not saved. See the privacy policy.
Common questions
Is it free?
Yes. The MCP server and the API are free with no key, within fair use (30 requests per minute per IP). The generator itself is free; Triplicate Pro ($1 a month or $10 a year) adds saved buyers and products, company stamp and logo and other extras.
Does Triplicate keep the order data?
No. The data is only in the link the API returns. The generator keeps the filled-in form in the user's own browser, like any form typed by hand.
Are the HS codes and checks final?
No. HS suggestions are 6-digit international codes to confirm in the destination country's tariff, and the checks catch common mistakes but do not replace a review by the exporter or a customs broker.
Can I generate the PDF directly?
The PDF is saved from the generator page with the browser's print dialog, after the user has reviewed the documents. This keeps a person in control of what is sent to a buyer or to customs.
More free tools
Triplicate is free and keeps getting better. Found it useful? Support Triplicate ♥