Katana integration
Katana is a cloud manufacturing ERP (MRP) for inventory, production and order management. Manage products, materials, services and variants with their BOM rows and product operations; customers and suppliers with addresses; sales orders with rows, addresses, shipping fees, fulfillments and returns; purchase orders with rows and receiving; manufacturing orders with recipe rows, operation rows, ingredient picking and productions; stock levels, movements, replenishment signals, safety stock, adjustments and transfers; batches, locations, tax rates, operators, users and webhooks. Not exposed: price lists, bin locations and bin transfers, serial numbers and traceability reports, demand forecasts, custom field definitions, stocktakes, outsourced purchase order recipe rows, purchase order additional costs, accounting metadata, rank changes, the webhook log export and the deprecated recipe and reorder point routes. The API needs a Katana Professional plan or higher. Authentication is an API key created in Katana under Settings > API, sent as a Bearer token; the default rate limit is 60 requests per 60 seconds.
Say what should happen.
The workflow builds itself.
What you can do with Katana
Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.
Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.
Manufacturing order, 6 operations
create_make_to_order_manufacturing_orderCreate make to order manufacturing orderPOSTCreates a manufacturing order linked to a sales order row (make to order), optionally with manufacturing orders for its subassemblies.create_manufacturing_orderCreate manufacturing orderPOSTCreates a manufacturing order to make a quantity of a product variant at a location; recipe and operation rows are copied from the product's recipe and operations.delete_manufacturing_orderDelete manufacturing orderDELETEPermanently deletes a manufacturing order by id.get_manufacturing_orderGet manufacturing orderGETReturns one manufacturing order by id: variant, planned and actual quantity, status, dates, costs, ingredient availability, linked sales order and traceability.list_manufacturing_ordersList manufacturing ordersGETLists manufacturing orders, newest first: product variant, quantities, status, dates, costs, ingredient availability and linked sales order. Filter by status, number, location or link.search_manufacturing_ordersSearch manufacturing ordersPOSTSearches manufacturing orders with a filter object (and/or, comparators such as gte, inq, ilike) when list_manufacturing_orders' filters are not enough. Beta in Katana: its shape may change.
Purchase order, 6 operations
create_purchase_orderCreate purchase orderPOSTCreates a purchase order to a supplier with its rows (variant, quantity, unit price), location, currency and dates; status DRAFT or NOT_RECEIVED.delete_purchase_orderDelete purchase orderDELETEPermanently deletes a purchase order by id.get_purchase_orderGet purchase orderGETReturns one purchase order by id: supplier, status, billing status, currency, dates, location, totals and rows; extend=supplier adds the supplier.list_purchase_ordersList purchase ordersGETLists purchase orders (regular and outsourced), newest first, filterable by number, type, status, billing status, currency, location or supplier; extend=supplier adds the supplier.receive_purchase_orderReceive purchase orderPOSTReceives one purchase order row into stock, fully or partly: the received quantity gets its own row and date, the rest stays open. Changes inventory; call once per row. Katana answers with no body.search_purchase_ordersSearch purchase ordersPOSTSearches purchase orders (regular and outsourced) with a filter object (and/or, comparators such as gte, inq, ilike) when list_purchase_orders' filters are not enough. Beta in Katana.
Sales order row, 5 operations
create_sales_order_rowCreate sales order rowPOSTAdds a row (variant, quantity, price, discount, tax rate) to a sales order that is still NOT_SHIPPED or PENDING.delete_sales_order_rowDelete sales order rowDELETEPermanently deletes a sales order row; only while the row is NOT_SHIPPED or PENDING.get_sales_order_rowGet sales order rowGETReturns one sales order row by id: variant, quantity, price, discount, tax, availability, linked manufacturing order; extend=variant adds the variant.list_sales_order_rowsList sales order rowsGETLists sales order rows (variant, quantity, price, discount, availability, linked manufacturing order), filterable by order, variant, location or availability; extend=variant adds the variant.search_sales_order_rowsSearch sales order rowsPOSTSearches sales order rows with a filter object (and/or, comparators such as gte, inq, ilike) when list_sales_order_rows' flat filters are not enough. Beta in Katana: its shape may change.
Bom row, 4 operations
create_bom_rowCreate bom rowPOSTAdds one ingredient to a product variant's BOM: ingredient_variant_id and the quantity used per unit of the product. Katana answers with no body.create_bom_rowsCreate bom rowsPOSTAdds up to 250 BOM rows in one call (each a product item, product variant, ingredient variant and quantity). Katana answers with no body.delete_bom_rowDelete bom rowDELETEPermanently deletes a BOM row by id.list_bom_rowsList bom rowsGETLists BOM (bill of materials) rows: which ingredient variant and quantity go into one unit of a product variant. Filter by product, product variant or ingredient variant.
Customer, 4 operations
create_customerCreate customerPOSTCreates a customer with contact details, currency, category, discount rate and optional billing and shipping addresses.delete_customerDelete customerDELETEPermanently deletes a customer by id.list_customersList customersGETLists customers, newest first, filterable by name, email, phone, company, currency, reference id or category. Returns contact details (personal data), defaults and addresses.search_customersSearch customersPOSTSearches customers with a filter object (and/or, comparators such as gte, inq, ilike) when list_customers' flat filters are not enough. Beta in Katana: its shape may change.
Manufacturing order operation row, 4 operations
create_manufacturing_order_operation_rowCreate manufacturing order operation rowPOSTAdds an operation row (production step) to a manufacturing order that is not DONE: operation, resource, type, planned time, cost and assigned operators.delete_manufacturing_order_operation_rowDelete manufacturing order operation rowDELETEPermanently deletes a manufacturing order operation row by id.get_manufacturing_order_operation_rowGet manufacturing order operation rowGETReturns one manufacturing order operation row by id: operation, resource, status, operators, planned and actual time and cost.list_manufacturing_order_operation_rowsList manufacturing order operation rowsGETLists manufacturing order operation rows (production steps: operation, resource, operators, status, planned and actual time and cost), filterable by order or status.
Manufacturing order production, 4 operations
create_manufacturing_order_productionCreate manufacturing order productionPOSTRecords a completion of a manufacturing order: the completed quantity enters stock and ingredients are consumed. is_final=true also sets the order DONE.delete_manufacturing_order_productionDelete manufacturing order productionDELETEReverts a production: its products leave stock and its ingredients go back to stock (or to picked). Not possible in a closed inventory period.get_manufacturing_order_productionGet manufacturing order productionGETReturns one manufacturing order production by id: quantity, production date, consumed ingredients, operation time and traceability.list_manufacturing_order_productionsList manufacturing order productionsGETLists manufacturing order productions (partial or final completions: quantity, date, consumed ingredients and operation time), newest first, filterable by order.
Manufacturing order recipe row, 4 operations
create_manufacturing_order_recipe_rowCreate manufacturing order recipe rowPOSTAdds an ingredient row to a manufacturing order that is not DONE: variant, quantity per unit of product, optional total actual quantity, notes and traceability.delete_manufacturing_order_recipe_rowDelete manufacturing order recipe rowDELETEPermanently deletes a manufacturing order recipe row by id.get_manufacturing_order_recipe_rowGet manufacturing order recipe rowGETReturns one manufacturing order recipe row by id: ingredient variant, planned and actual quantity, availability, expected date and cost.list_manufacturing_order_recipe_rowsList manufacturing order recipe rowsGETLists manufacturing order recipe rows (ingredients: variant, planned quantity per unit, actual quantity, availability, cost), filterable by order, variant or availability.
Material, 4 operations
create_materialCreate materialPOSTCreates a material (a raw material or component you buy) with at least one variant, its unit, category, default supplier and flags. Returns the material with its variant ids.delete_materialDelete materialDELETEPermanently deletes a material by id.get_materialGet materialGETReturns one material by id: unit, category, flags, variants, configs and notes; extend=supplier adds the default supplier.list_materialsList materialsGETLists materials (raw materials and components), newest first, filterable by name, unit, supplier, flags and dates, with their variants and configs; extend=supplier adds the default supplier.
Product, 4 operations
create_productCreate productPOSTCreates a product with at least one variant (sku, prices, barcodes, options), its unit, category and flags (sellable, producible, purchasable, batch or serial tracked). Returns the product with its variant ids.delete_productDelete productDELETEPermanently deletes a product by id.get_productGet productGETReturns one product by id: unit, category, flags, variants, configs and notes; extend=supplier adds the default supplier.list_productsList productsGETLists products, newest first, filterable by name, flags (sellable, producible, purchasable, batch or serial tracked) and dates, with their variants and configs; extend=supplier adds the default supplier.
Purchase order row, 4 operations
create_purchase_order_rowCreate purchase order rowPOSTAdds a row (variant, quantity, unit price, tax rate, purchase unit, arrival date) to a purchase order.delete_purchase_order_rowDelete purchase order rowDELETEPermanently deletes a purchase order row by id.get_purchase_order_rowGet purchase order rowGETReturns one purchase order row by id: variant, quantity, unit price, tax rate, purchase unit and dates.list_purchase_order_rowsList purchase order rowsGETLists purchase order rows (variant, quantity, unit price, tax, purchase unit, arrival and received dates), filterable by order, variant, tax rate, group or location.
Sales order, 4 operations
create_sales_orderCreate sales orderPOSTCreates a sales order for a customer with its rows (variant, quantity, price), optional addresses, dates and tracking. status PENDING makes a quote; NOT_SHIPPED is used when left out.delete_sales_orderDelete sales orderDELETEPermanently deletes a sales order by id.get_sales_orderGet sales orderGETReturns one sales order by id: customer, status, dates, currency, totals, availability and its rows. tracking_number is only the pre-fill for the next shipment.list_sales_ordersList sales ordersGETLists sales orders, newest first, with their rows: filter by order number, customer, location, status, currency, invoicing, availability, production status or e-commerce order.
Sales order fulfillment, 4 operations
create_sales_order_fulfillmentCreate sales order fulfillmentPOSTRecords a shipment of all or part of a sales order: a PACKED or DELIVERED fulfillment for the given rows and quantities, with its tracking.delete_sales_order_fulfillmentDelete sales order fulfillmentDELETEPermanently deletes a sales order fulfillment by id.get_sales_order_fulfillmentGet sales order fulfillmentGETReturns one sales order fulfillment by id: status, picked date, tracking number, URL, carrier, method and rows.list_sales_order_fulfillmentsList sales order fulfillmentsGETLists sales order fulfillments (shipments: status, picked date, tracking number, URL, carrier and method, rows), filterable by sales order, tracking or status.
Sales return, 4 operations
create_sales_returnCreate sales returnPOSTOpens a sales return for a sales order, to a return location; add its items with create_sales_return_row.delete_sales_returnDelete sales returnDELETEPermanently deletes a sales return by id.get_sales_returnGet sales returnGETReturns one sales return by id: sales order, return number, status, refund status, location and dates.list_sales_returnsList sales returnsGETLists sales returns (customer returns of shipped items), filterable by return number, sales order number, return location, return status, refund status and dates.
Sales return row, 4 operations
create_sales_return_rowCreate sales return rowPOSTAdds a returned item to a sales return: the fulfillment row it came from, variant, quantity, reason and restock location.delete_sales_return_rowDelete sales return rowDELETEPermanently deletes a sales return row by id.get_sales_return_rowGet sales return rowGETReturns one sales return row by id: variant, quantity, reason, restock location and traceability.list_sales_return_rowsList sales return rowsGETLists sales return rows (variant, quantity, reason, restock location), filterable by return, variant, sales order row, reason or restock location.
Service, 4 operations
create_serviceCreate servicePOSTCreates a service with its single variant (sku, sales price, default cost), unit (for example hours) and category.delete_serviceDelete serviceDELETEPermanently deletes a service by id.get_serviceGet serviceGETReturns one service by id: unit, category, sellable flag, its variant (sku, sales price, default cost) and notes.list_servicesList servicesGETLists services (sellable items measured in units such as pcs or hours, each with one variant), filterable by name, unit, category and sellable flag.
Shipping fee, 4 operations
create_sales_order_shipping_feeCreate sales order shipping feePOSTAdds a shipping fee (amount, description, tax rate) to a sales order.delete_sales_order_shipping_feeDelete sales order shipping feeDELETEPermanently deletes a shipping fee and removes it from its sales order.get_sales_order_shipping_feeGet sales order shipping feeGETReturns one shipping fee by id: sales order, amount, description and tax rate.list_sales_order_shipping_feesList sales order shipping feesGETLists shipping fees attached to sales orders (amount, description, tax rate).
Variant, 4 operations
create_variantCreate variantPOSTAdds a variant to a product (product_id) or a material (material_id), never both: sku, prices, barcodes, supplier item codes, option values, lead time.delete_variantDelete variantDELETEPermanently deletes a variant by id.get_variantGet variantGETReturns one variant by id: sku, prices, barcodes, supplier item codes, option values, lead time, minimum order quantity; extend=product_or_material adds the parent item.list_variantsList variantsGETLists product and material variants (sku, prices, barcodes, supplier item codes, options), filterable by product, material, sku list or barcode; extend=product_or_material adds the parent item.
Webhook, 4 operations
create_webhookCreate webhookPOSTRegisters an HTTPS URL that Katana sends the chosen events to (sales orders, purchase orders, manufacturing, inventory, items). It must answer 2xx within 10 seconds or Katana retries 3 times.delete_webhookDelete webhookDELETEPermanently deletes a webhook; Katana stops sending its events.get_webhookGet webhookGETReturns one webhook by id: enabled flag, subscribed events, description and dates. The URL and signing token are not returned.list_webhooksList webhooksGETLists webhooks (id, enabled, subscribed events, description, dates), newest first, filterable by ids or enabled flag. URLs and signing tokens are not returned.
Customer address, 3 operations
create_customer_addressCreate customer addressPOSTAdds a billing or shipping address to a customer (one billing, several shipping). The first address of a type becomes the default.delete_customer_addressDelete customer addressDELETEPermanently deletes a customer address by id.list_customer_addressesList customer addressesGETLists customer billing and shipping addresses (personal data), filterable by customer, type, name, city, zip, country or phone.
Product operation row, 3 operations
create_product_operation_rowsCreate product operation rowsPOSTAdds up to 150 production steps to products in one call. keep_current_rows=false first DELETES all existing operation rows of those products. Katana answers with no body.delete_product_operation_rowDelete product operation rowDELETEPermanently deletes a product operation row; when it applies to several variants, it is deleted from all of them.list_product_operation_rowsList product operation rowsGETLists product operation rows (the production steps of a product: operation, resource, type, planned time and cost), filterable by product, variant, operation or resource.
Sales order address, 3 operations
create_sales_order_addressCreate sales order addressPOSTAdds a billing or shipping address to a sales order.delete_sales_order_addressDelete sales order addressDELETEPermanently deletes a sales order address by id.list_sales_order_addressesList sales order addressesGETLists the billing and shipping addresses on sales orders (personal data), filterable by order, type, name, city, zip, country or phone.
Stock adjustment, 3 operations
create_stock_adjustmentCreate stock adjustmentPOSTRecords a stock adjustment at a location: each row adjusts a variant's stock by its quantity, with an optional cost per unit, plus a reason. Changes inventory.delete_stock_adjustmentDelete stock adjustmentDELETEPermanently deletes a stock adjustment by id.list_stock_adjustmentsList stock adjustmentsGETLists stock adjustments (manual stock corrections with their rows, reason and location), newest first, filterable by number or location.
Stock transfer, 3 operations
create_stock_transferCreate stock transferPOSTCreates a stock transfer of variants from one location to another, with dates and notes; mark it received with update_stock_transfer_status.delete_stock_transferDelete stock transferDELETEPermanently deletes a stock transfer by id.list_stock_transfersList stock transfersGETLists stock transfers between locations (rows, status, dates), newest first, filterable by number, source or target location.
Supplier, 3 operations
create_supplierCreate supplierPOSTCreates a supplier with currency, email, phone, comment and optional address.delete_supplierDelete supplierDELETEPermanently deletes a supplier by id.list_suppliersList suppliersGETLists suppliers, newest first, filterable by name, email or phone, with currency, contact details and addresses.
Supplier address, 3 operations
create_supplier_addressCreate supplier addressPOSTAdds the address of a supplier (a supplier has one address for now); the first one becomes the default.delete_supplier_addressDelete supplier addressDELETEPermanently deletes a supplier address by id.list_supplier_addressesList supplier addressesGETLists supplier addresses, filterable by supplier, address lines, city, state, zip or country.
Ingredient pick, 2 operations
pick_all_manufacturing_order_ingredientsPick all manufacturing order ingredientsPOSTPicks everything a manufacturing order's recipe rows still need from stock, all or nothing (422 PICK_ALL_NOT_IN_STOCK lists the shortfalls). Moves stock. Beta in Katana.pick_manufacturing_order_ingredientsPick manufacturing order ingredientsPOSTRecords ingredients taken from stock for a manufacturing order, per recipe row (with batches and bins); the stock leaves inventory. Needs ingredient picking on. Beta in Katana.
Location, 2 operations
get_locationGet locationGETReturns one location by id: name, legal name, address, primary flag and allowed uses (sales, purchases, manufacturing).list_locationsList locationsGETLists locations (warehouses and factories): name, legal name, address and whether sales, purchases and manufacturing are allowed there.
Tax rate, 2 operations
create_tax_rateCreate tax ratePOSTCreates a tax rate (percentage and optional name) for sales and purchase order rows.list_tax_ratesList tax ratesGETLists tax rates (name, rate, default for sales or purchases), filterable by rate, name or defaults.
Batch, 1 operation
create_batchCreate batchPOSTCreates a batch (lot) for a variant with its batch number, barcode, creation and expiry dates.
Batch stock, 1 operation
list_batch_stocksList batch stocksGETLists current stock per batch (lot): batch number, barcode, expiry, variant, location and quantity, filterable by batch, variant, location or batch creation date.
Factory, 1 operation
get_factoryGet factoryGETReturns the factory's settings: legal name and address, display name, base currency, default lead times and default sales, purchase and manufacturing locations.
Inventory, 1 operation
list_inventoryList inventoryGETLists current stock per variant and location: in stock, committed, expected, safety stock, average cost and value; extend adds the variant and location. Filter by location or variants.
Inventory movement, 1 operation
list_inventory_movementsList inventory movementsGETLists inventory movements (each stock change with its cause: order row, adjustment, transfer...), newest first, filterable by variants, location, resource or causing order.
Inventory signal, 1 operation
list_inventory_signalsList inventory signalsGETLists replenishment signals per variant, summed over all locations: average daily demand, reorder point, days of stock left and stock risk (0 low to 3 stockout), over a 7, 30, 60 or 90 day window.
Negative stock, 1 operation
list_negative_stockList negative stockGETLists variants with a negative stock balance and the date of the latest movement that made it negative; filter by location, variant, name, sku, category or date.
Operator, 1 operation
list_operatorsList operatorsGETLists operators (id and name), filterable by working area (shopFloor or warehouse) or resource; use the ids on operation rows.
Production ingredient, 1 operation
list_manufacturing_order_production_ingredientsList manufacturing order production ingredientsGETLists manufacturing order production ingredients: consumed or picked quantities per recipe row. A pick is one without a production; its id is what unpick_manufacturing_order_ingredients takes.
Return reason, 1 operation
list_sales_return_reasonsList sales return reasonsGETLists the return reasons (id and name, for example Defective or damaged) to use as reason_id on sales return rows.
Returnable item, 1 operation
list_sales_order_returnable_itemsList sales order returnable itemsGETLists what can still be returned from a sales order: per fulfillment row, the variant, quantity sold and available to return, net unit price and location. Use with create_sales_return_row.
User, 1 operation
list_usersList usersGETLists the account's active users: id, first and last name and email (personal data).
Showing the first 120 of 154 endpoints. The rest are in the product, searchable from the workflow builder and from chat.
Use Katana from Claude Code, Cursor or Codex
Connect Katana in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Katana operations become tools the client can call, next to every other integration you connected.
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"
[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"{
"mcpServers": {
"livecontext": {
"type": "http",
"url": "https://livecontext.ai/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}How to connect Katana
- Create your workspace
Sign up free. Nothing to install.
- Connect Katana once
Add your Katana connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.
- Describe the job in chat
The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.
Katana integration FAQ
What can you do with the Katana integration?
LiveContext exposes 154 operations on Katana, covering manufacturing order, purchase order, sales order row and bom row.
