B2B Ordering System MCP Tools

This page lists the planned MCP tools for the B2B Ordering System, covering wholesale customers, customer groups, customer-specific price lists, MOQ rules, credit limits and payment terms, quotations and official quotation PDFs, bulk ordering, order approvals, stock reservations, backorder allocation, delivery, e-invoices, packing slips, payment records, monthly statements, and operations analytics.

b2b_ordering.config.get

read

Read B2B ordering settings, including enabled modules, currency, tax, payment terms, credit limits, MOQ, quotations, approvals, stock reservations, and monthly statement policies.

No prerequisite tool.

Read-only tool; no approval request is created.

Use returned settings as the source of truth; do not infer payment terms, credit limits, tax rates, MOQ, or approval thresholds.

b2b_ordering.customer_groups.list

read

List customer groups, distributor tiers, price groups, product visibility scope, payment terms, and default credit limits.

b2b_ordering.config.get

Read-only tool; no approval request is created.

Use returned group_id values when assigning customers or price lists; do not infer tier or permission from display names.

b2b_ordering.locations.list

read

List warehouses, stores, pickup points, and fulfilment locations available for B2B sellable and reserved stock.

b2b_ordering.config.get

Read-only tool; no approval request is created.

Inventory, reservation, delivery, or backorder allocation must use valid location_id values; do not use disabled locations.

b2b_ordering.delivery_rules.list

read

List delivery regions, cut-off times, delivery slots, shipping rules, minimum delivery value, routes, and pickup options.

b2b_ordering.config.get

Read-only tool; no approval request is created.

Order and delivery assignment workflows must use valid delivery_rule_id values; do not estimate delivery constraints or fees.

b2b_ordering.approval_policies.list

read

List approval triggers such as over credit limit, price override, low margin, below MOQ, overdue balance, or delivery exception.

b2b_ordering.config.get

Read-only tool; no approval request is created.

Writes must not bypass returned policies; when a policy is triggered, create an approval request or keep the record as draft.

b2b_ordering.owners.list

read

List assignable sales, service, warehouse, finance, and manager accounts for quotations, orders, approvals, and monthly statements.

b2b_ordering.config.get

Read-only tool; no approval request is created.

Do not assign work to disabled accounts, unauthorized accounts, or users outside the returned list.

b2b_ordering.products.search

read

Search products by name, SKU, barcode, category, brand, pack size, carton rule, sellable state, or B2B visibility.

b2b_ordering.config.get, b2b_ordering.customer_groups.list

Read-only tool; no approval request is created.

Search results must respect customer group and visibility rules; do not expose hidden or unauthorized products.

b2b_ordering.products.get

read

Read one product with B2B content, SKU, carton rules, packaging, sellable channels, stock summary, price summary, and version data.

b2b_ordering.products.search or known product_id

Read-only tool; no approval request is created.

Use returned product_id, variant_id, and base_version_token for writes; do not overwrite unread fields.

b2b_ordering.price_lists.list

read

List customer or group price lists, tiered prices, contract prices, effective dates, currency, and state.

b2b_ordering.customer_groups.list, b2b_ordering.products.search

Read-only tool; no approval request is created.

Price lists may vary by customer, group, contract, and date; do not use standard product price as final B2B transaction price.

b2b_ordering.price_lists.preview

preview

Preview how new or changed price lists affect selected customers, products, quantity tiers, margins, and effective dates.

b2b_ordering.price_lists.list, b2b_ordering.products.get, b2b_ordering.customer_groups.list

Preview tool; does not write data.

Preview must show conflicting prices, low-margin risk, affected customers, and effective dates; do not treat preview as applied.

b2b_ordering.price_lists.upsert

write

Create or update customer-specific prices, group prices, tiered prices, contract prices, or limited-time wholesale prices.

b2b_ordering.price_lists.preview, b2b_ordering.approval_policies.list

High-risk commercial write; approval or explicit confirmation is recommended.

Do not infer price, cost, or margin; preserve reason, applicable customers, effective dates, and approval records.

b2b_ordering.moq_rules.list

read

List MOQ, order multiples, and exception rules by product, category, customer group, carton rule, or order value.

b2b_ordering.config.get, b2b_ordering.products.search

Read-only tool; no approval request is created.

MOQ may relate to carton rules, delivery cost, and customer contracts; order creation must not ignore returned rules.

b2b_ordering.moq_rules.upsert

write

Create or update minimum quantities, order multiples, minimum order value, carton restrictions, or customer-specific exceptions.

b2b_ordering.moq_rules.list, b2b_ordering.products.get, b2b_ordering.approval_policies.list

Write tool; approval is recommended when many customers are affected.

Do not block contracted customers unexpectedly without showing affected scope; preserve change reason.

b2b_ordering.price_list_import.preview

preview

Preview bulk import of price lists or MOQ rules, checking mapping, SKU, customer groups, duplicates, margin risk, and errors.

b2b_ordering.price_lists.list, b2b_ordering.moq_rules.list, b2b_ordering.products.search, b2b_ordering.customer_groups.list

Preview tool; does not write data.

Show create, update, error, duplicate, and affected-customer counts; do not commit unpreviewed files.

b2b_ordering.price_list_import.commit

write

Commit bulk price list or MOQ import after preview approval.

b2b_ordering.price_list_import.preview

High-risk batch write; approval is recommended.

Use the preview batch import_id; do not bypass SKU, customer group, margin, or duplicate checks.

b2b_ordering.customers.search

read

Search wholesale customers by company, contact, phone, email, customer group, distributor tier, payment terms, credit limit, or outstanding balance state.

b2b_ordering.config.get, b2b_ordering.customer_groups.list

Read-only tool; no approval request is created.

Search results may contain commercial and personal data; return only task-relevant fields and respect visibility.

b2b_ordering.customers.get

read

Read one wholesale customer with price lists, MOQ exceptions, credit limit, outstanding balance, payment terms, delivery addresses, contacts, and version data.

b2b_ordering.customers.search or known customer_id

Read-only tool; no approval request is created.

Use returned customer_id and base_version_token for writes; do not overwrite unread fields.

b2b_ordering.customers.update_terms

write

Update customer group, payment terms, credit limit, price group, MOQ exceptions, product visibility, or owner for a wholesale customer.

b2b_ordering.customers.get, b2b_ordering.customer_groups.list, b2b_ordering.approval_policies.list

High-risk commercial write; credit limit, payment terms, or price group changes should be approved.

Do not raise credit limits or extend terms without confirmation; preserve reason, approver, and effective date.

b2b_ordering.customers.credit_check_preview

preview

Preview credit limit, overdue balance, pending fulfilment, and new order value to determine whether an order can be created or confirmed.

b2b_ordering.customers.get, b2b_ordering.orders.list, b2b_ordering.config.get

Preview tool; does not write data.

Credit check output is decision support only; do not treat it as approval for over-limit orders.

b2b_ordering.customers.credit_hold.update

write

Apply or release ordering hold, credit hold, or overdue payment restriction for a customer.

b2b_ordering.customers.get, b2b_ordering.customers.credit_check_preview

High-risk write; approval or explicit confirmation is recommended.

Preserve hold or release reason; do not block ordering or release financial restrictions without cause.

b2b_ordering.customers.note.create

write

Add internal customer notes such as special pricing agreement, payment promise, delivery requirement, complaint, or sales follow-up.

b2b_ordering.customers.get

Write tool; usually direct, with sensitive notes governed by policy.

Record confirmed facts or clearly marked internal notes only; do not add unverified or irrelevant content.

b2b_ordering.quotations.list

read

List B2B quotations by customer, state, expiry, owner, amount, or conversion state.

b2b_ordering.customers.search

Read-only tool; no approval request is created.

Quotations may contain sensitive commercial prices; return only records the user may access.

b2b_ordering.quotations.get

read

Read one quotation with products, prices, discounts, MOQ, expiry, terms, customer, version, and approval state.

b2b_ordering.quotations.list or known quotation_id

Read-only tool; no approval request is created.

Use returned quotation_id and base_version_token for updates or conversion.

b2b_ordering.quotations.create_draft

write

Create a B2B quotation draft with customer, products, quantities, prices, MOQ, expiry, payment terms, and delivery terms.

b2b_ordering.customers.get, b2b_ordering.products.get, b2b_ordering.price_lists.list, b2b_ordering.moq_rules.list

Write tool; draft creation is usually direct, while low-margin or exception terms require approval.

Do not invent unconfirmed prices, expiry, or terms; keep incomplete quotations as pending drafts.

b2b_ordering.quotations.update

write

Update quotation lines, prices, discounts, expiry, payment terms, delivery terms, or notes.

b2b_ordering.quotations.get, b2b_ordering.price_lists.preview, b2b_ordering.moq_rules.list

Write tool; price override, expiry extension, or exception terms may require approval.

Only update explicitly requested fields; do not alter accepted or converted quotations unless creating a new version.

b2b_ordering.quotations.pdf.generate

write

Generate an official PDF quotation for an existing B2B quotation, including company details, customer details, lines, prices, discounts, MOQ, expiry, terms, and version.

b2b_ordering.quotations.get

Document write tool; if the quotation includes price overrides, low margin, or exception terms, approval should be completed before official PDF generation.

Do not generate official documents for expired, incomplete, or unauthorized quotations; bind the PDF to quotation_id, version, generated_at, and actor.

b2b_ordering.quotations.convert_to_order

write

Convert an accepted quotation into an order draft or confirmed order while preserving quotation version and terms.

b2b_ordering.quotations.get, b2b_ordering.customers.credit_check_preview, b2b_ordering.inventory_levels.list

High-risk write; approval is recommended when credit, inventory, or term exceptions are triggered.

Do not convert expired, unaccepted, or incomplete quotations into confirmed orders.

b2b_ordering.orders.list

read

List B2B orders by customer, order state, payment state, delivery state, delivery date, backorder state, or approval state.

b2b_ordering.config.get, b2b_ordering.customers.search

Read-only tool; no approval request is created.

Order lists must be filtered by customer, owner, and location permissions; avoid exposing irrelevant data.

b2b_ordering.orders.get

read

Read one order with lines, price source, MOQ checks, credit checks, stock reservations, delivery, monthly statement linkage, and version data.

b2b_ordering.orders.list or known order_id

Read-only tool; no approval request is created.

Use returned order_id and base_version_token for updates; do not overwrite payment, delivery, or approval records.

b2b_ordering.orders.create_draft

write

Create an order draft for a wholesale customer, supporting SKU quick entry, reorder from history, bulk ordering, and manual WhatsApp order conversion.

b2b_ordering.customers.get, b2b_ordering.products.get, b2b_ordering.price_lists.list, b2b_ordering.moq_rules.list, b2b_ordering.customers.credit_check_preview

Write tool; draft creation is usually direct, while confirmation follows approval policies.

Do not invent customer, price, discount, delivery address, or payment state; keep incomplete orders as drafts.

b2b_ordering.orders.update_lines

write

Update order lines, quantities, carton rules, price source, discounts, MOQ exceptions, notes, or delivery requirements.

b2b_ordering.orders.get, b2b_ordering.price_lists.preview, b2b_ordering.moq_rules.list, b2b_ordering.inventory_levels.list

Write tool; price overrides, below-MOQ lines, or over-credit changes may require approval.

Only update specified lines; do not overwrite fulfilled, statemented, or invoiced parts.

b2b_ordering.orders.confirm

write

Confirm an order using price list, MOQ, credit, stock reservation, and delivery checks.

b2b_ordering.orders.get, b2b_ordering.customers.credit_check_preview, b2b_ordering.inventory_levels.list, b2b_ordering.approval_policies.list

High-risk write; any triggered exception must be approved or remain draft.

Before confirmation, check credit, MOQ, stock, and delivery rules; do not confirm orders that violate policy.

b2b_ordering.orders.cancel

write

Cancel an order and release stock reservations, delivery arrangements, backorder allocations, and approval state.

b2b_ordering.orders.get, b2b_ordering.inventory_levels.list, b2b_ordering.delivery_slots.list

High-risk write; confirmed, fulfilled, invoiced, or statemented orders should be approved before cancellation.

Do not cancel orders with completed financial workflow without handling credit notes, restock, and customer notification.

b2b_ordering.inventory_levels.list

read

Read stock by product, variant, warehouse, B2B channel, reserved quantity, sellable quantity, safety stock, and reorder quantity.

b2b_ordering.products.get, b2b_ordering.locations.list

Read-only tool; no approval request is created.

Interpret stock with location, B2B reservation, and last update time; do not merge retail and wholesale sellable quantities incorrectly.

b2b_ordering.stock.reserve

write

Reserve, adjust, or release stock for an order while preserving reason, order linkage, and expiry time.

b2b_ordering.orders.get, b2b_ordering.inventory_levels.list

High-risk write; large reservations or cross-location adjustments should be approved.

Require location_id, variant_id, quantity, and order; do not lock stock without order linkage or reason.

b2b_ordering.backorders.list

read

List backorders, preorders, pending replenishment, expected arrival date, customer priority, and allocation state.

b2b_ordering.orders.list, b2b_ordering.inventory_levels.list

Read-only tool; no approval request is created.

Backorder data affects customer commitments; output must state whether expected arrival is confirmed.

b2b_ordering.backorders.allocate

write

Allocate replenished stock to backorders based on arrivals, customer priority, order date, or manual rules.

b2b_ordering.backorders.list, b2b_ordering.inventory_levels.list, b2b_ordering.approval_policies.list

High-risk write; approval is recommended when changing customer allocation priority.

Do not change priority without reason; preserve allocation rule, affected orders, and unmet quantities.

b2b_ordering.delivery_slots.list

read

List available delivery slots, routes, regions, cut-off times, capacity, customer address restrictions, and pickup options.

b2b_ordering.delivery_rules.list, b2b_ordering.customers.get

Read-only tool; no approval request is created.

Delivery slots must be evaluated by customer region, capacity, and cut-off time; do not promise unavailable slots.

b2b_ordering.delivery.assign

write

Assign delivery slot, route, pickup arrangement, delivery note, or redelivery arrangement to an order.

b2b_ordering.orders.get, b2b_ordering.delivery_slots.list

Write tool; delivery exceptions, over-capacity slots, or after-cutoff arrangements may require approval.

Do not assign unavailable slots or incorrect addresses; preserve delivery change reason and notification state.

b2b_ordering.invoices.generate

write

Generate an official commercial invoice or e-invoice for confirmed or fulfilled B2B orders, preserving order, customer, tax, payment term, and version linkage.

b2b_ordering.orders.get, b2b_ordering.customers.get, b2b_ordering.config.get

High-risk financial write; official invoices or e-invoices require explicit confirmation, and cancellation or reissue follows policy approval.

Do not issue official invoices for draft, cancelled, unconfirmed, or unreconciled orders; prevent duplicate issuance and preserve invoice_id.

b2b_ordering.packing_slips.generate

write

Generate packing slips for B2B orders or delivery batches, including products, SKU, carton rules, quantities, backorders, delivery address, route, and warehouse fulfilment data.

b2b_ordering.orders.get, b2b_ordering.inventory_levels.list, b2b_ordering.delivery_slots.list

Fulfilment document write; usually allowed after order confirmation and stock reservation, while backorders or split shipments require policy confirmation.

Do not generate final packing slips for unconfirmed or unallocated orders; state backorders, split shipments, and document version.

b2b_ordering.invoices.list

read

List commercial invoices, e-invoices, credit notes, and related PDFs by customer, order, period, state, due date, or monthly statement.

b2b_ordering.customers.get or b2b_ordering.orders.get

Read-only tool; no approval request is created.

Invoice data is financially sensitive; filter by customer, owner, and finance permissions, and state currency, tax, and status.

b2b_ordering.payments.list

read

List receipts, payment records, outstanding balances, overdue amounts, and reconciliation differences by customer, invoice, statement period, or payment state.

b2b_ordering.customers.get, b2b_ordering.invoices.list

Read-only tool; no approval request is created.

Payment data is financially sensitive; state source, payment date, currency, whether reconciled, and whether any balance remains.

b2b_ordering.monthly_statements.preview

preview

Preview monthly statements by combining confirmed orders, returns, credit notes, payments, and outstanding balances for a customer and period.

b2b_ordering.customers.get, b2b_ordering.orders.list, b2b_ordering.config.get

Preview tool; does not write data.

Preview must show period, currency, exclusions, differences, and unconfirmed transactions; do not treat preview as issued statement.

b2b_ordering.monthly_statements.generate

write

Generate monthly statement, PDF, or payment request after preview approval, and lock the related order statement version.

b2b_ordering.monthly_statements.preview

High-risk financial write; approval is recommended.

Use the preview statement_preview_id; do not issue official documents for unconfirmed, cancelled, or already statemented orders.

b2b_ordering.analytics.sales_summary

read

Read order volume, repeat purchase, margin, backorders, credit usage, and monthly statement summary by period, customer, group, product, or owner.

b2b_ordering.config.get, b2b_ordering.customer_groups.list

Read-only tool; no approval request is created.

Analytics must state date range, timezone, currency, whether draft/cancelled orders are included, and data latency.

b2b_ordering.action_request.status

status

Check approval, execution, rejection, or failure state for B2B writes, bulk imports, price lists, approvals, orders, stock reservations, or monthly statement operations.

Known action_request_id

Status lookup tool; does not create a new approval request.

Status reflects governance progress only; do not retry non-idempotent writes unless using the same idempotency_key or a clearly new request.