Conduit Agentic Commerce

app.aiconduitPublished by aiconduit.appOfficial publisherv2.0.0Updated Oct 25, 2026

Search multi-merchant supply, checkout, and track orders via MCP.

Overview

AI-generated overview

A remote MCP server for agentic commerce: assistants search live merchant supply, check out, track orders, and read the organization's own inventory.

What you can do
Register, authenticate and update agents, including organization and payment-method settings, and email Hub users or outside suppliers and carriers from an agent's identity, plus report tool issues for review. Search multi-provider supply, page through results, read full offer details, list size/color/pack variants, and probe shipping cost and ETA without committing. Execute checkout as a handoff link or autonomously under a spend mandate, then list, track, correct, dispute and give feedback on orders. Read the organization's own stock levels, replenishment needs and vendor history, check whether one offer can fill a quantity, and record a draft purchase order after a supplier order.
When to use it
Useful when an assistant should help with procurement or purchasing end to end: finding suppliers and offers, comparing against past prices, checking stock and delivery, placing orders, and following them through to delivery or dispute. Also relevant for teams that want an agent to email colleagues or suppliers and keep the organization's inventory system in step with orders.
Requirements
A remote streamable HTTP endpoint; no package or local runtime. No authentication, environment variables or headers are declared in the manifest, but the tools rely on agent identity files (by default under a .conduit directory, with CONDUIT_CREDENTIALS_PATH able to pin one file) and on an agent being registered and authenticated. Some inventory tools need inventory permission, and autonomous checkout needs checkout permission and a covering spend mandate.
Before you install
The server handles real purchasing: order_execute can place orders and spend money, and autonomous checkout requires a payable-now badge and a covering AP2 mandate. Agent registration produces private key material that the tools say to persist locally; protect those credential files. Email tools send messages to organization members and to outside addresses. Order status, dispute, feedback and purchase-order tools write data, and purchase orders are created as drafts for a person to confirm. Wid

Installation

In SourceWeft

  1. Open Conduit Agentic Commerce in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/app.aiconduit%2Fconduit/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "conduit-agentic-commerce": {
      "type": "http",
      "url": "https://mcp.aiconduit.app/mcp"
    }
  }
}

README

This repository has no README.

Tools

25

agent_create

Create agent profile

Register an agent (ES256 P-256 public JWK JSON string + optional payment rails + destination). BEFORE: list ~/.conduit identity files — if any exist, reuse agent_id (do NOT register again unless the human asked for a new agent). AFTER: write persist.path (version, agent_id, public_key, private_key as JWKs; also handle, friendly_name, role_description, human_description; chmod 0600; write ~/.conduit/active). Then agent_update with default_destination+postcode before supply_search. Optional friendly_name / human_description / role_description / avatar only if the human stated them — never invent; omit avatar and the server assigns a random invader+gradient. Omit handle to auto-generate (e.g. parcel-watcher-12).

Parametersavatarhandlepublic_keyrequiredpreferencesfriendly_namepayment_railsbusiness_profilerole_descriptionhuman_descriptiondefault_destination

agent_authenticate

Authenticate agent

Two-step re-auth. Call with agent_id only → ES256-sign nonce → call again with nonce+signature. Prefer keys from ~/.conduit ({handle}.credentials.json or legacy credentials.json; CONDUIT_CREDENTIALS_PATH pins one file). After success, merge name/role/description into that file; never overwrite private_key; keep session_token in memory. Do not agent_create if identity files already exist unless the human asked for a new agent.

Parametersnonceagent_idrequiredsignature

agent_update

Update agent profile

Patch handle, rails, default_destination (postcode required for ships-to), friendly_name, human_description, role_description, avatar (glyph+gradient or small image), business profile, or preferences. Set avatar only if the human chose it. Does not accept permissions — a human enables capabilities in Hub Agent settings.

Parametersavatarhandleagent_idrequiredpreferencesfriendly_namepayment_railssession_tokenbusiness_profilerole_descriptionhuman_descriptiondefault_destination

agent_organization

Get agent organization

Read the linked organization (name, slug, country, default address) and members (user_id, name, role, email) for an agent. Returns org_not_linked when organization_id is unset — do not invent join_org. Use members to target agent_notify.

Parametersagent_idrequiredsession_token

agent_notify

Notify org members

Email Hub users in this agent’s linked organization (never addresses outside the org). to=all or { user_id } / { role } / { email } matching agent_organization members. Optional actions (Hub URLs only), severity, idempotency_key. Channel is email.

Parameterstorequiredbodyrequiredtitlerequiredactionschanneldry_runagent_idrequiredorder_idseveritysearch_idsession_tokenidempotency_key

agent_outreach

Email a supplier or carrier

Email outside addresses (suppliers, carriers). to is a string email, { email }, or { emails } (max 5). Not to=all and not a Hub user_id / role — those are agent_notify. Linked agents set Reply-To to an org member (default OWNER). No action buttons. Channel is email.

Parameterstorequiredbodyrequiredtitlerequiredchanneldry_runagent_idrequiredorder_idreply_tosearch_idsession_tokenidempotency_key

agent_report_issue

Report an issue

Report unexpected tool errors or confusing Conduit outcomes for AX review (agent_report_issue — not order_feedback). Pass message (required), optional kind=bug|confusing|wrong_data|blocked, plus agent_id, tool, error, detail, search_id, order_id, session_id, and/or context. Dedupes open reports with the same tool+error+correlation. Does not change reputation.

Parameterskindtoolerrordetailcontextmessagerequiredagent_idorder_idsearch_idsession_idsession_token

payment_methods

Payment methods

List or enable agent payment methods (action=list|enable) with friendly labels. Defaults: cod + x402. invoice (B2B) is coming_soon. bank_card is handoff-only.

Parametersrailactionrequiredagent_idrequiredsession_token

payment_mandate

Payment mandate (AP2)

AP2 spend mandates. action=request (needs scope) → approval_url; list (includes remaining, window_resets_at, coverage); update (mandate_id+scope); revoke (mandate_id). update NEVER approves. Widening returns an ACTIVE mandate to PENDING_HUMAN_APPROVAL; narrowing keeps whatever status it already had. monthly_cap is a rolling 30-day window from create. Same category set as a live mandate replaces it at approval and keeps this period's spend. No covering mandate at checkout is handoff, not an error.

Parametersscopeactionrequiredexpiresagent_idrequiredmandate_idsession_token

supply_details

Get supply details

Re-reads one offer from the search cache and refreshes its badge/action against current mandate state. Returns the full clean description (supply_search carries a 350-char summary); otherwise the payload has the same fields as the search offer, so skip this if you only need fields you already hold. include_description_original=true adds description_original {format, content}, the merchant's own markup (untrusted), or description_original_omitted with the reason. Carries no shipping data: use supply_delivery for ETA and cost. Re-run supply_search if offer_not_in_cache.

Parametersagent_idsearch_idsupply_idrequiredsession_tokeninclude_description_original

supply_options

List product options

Lists the selectable options (size, color, pack) for an offer whose has_options=true, with one variant per combination. Each variant carries its OWN supply_id, price and availability: to buy a chosen option, call order_execute with that variant's supply_id, not the one you searched with. Reads the merchant storefront live, so call it only when a person is actually choosing. Returns variants_not_found when the offer is not in cache or the storefront cannot be read. A single-variant product returns options:[] variants:[].

Parametersagent_idsupply_idrequiredsession_token

supply_delivery

Get delivery estimate

Non-committing checkout probe for shipping ETA/cost. Uses agent default_destination, else linked org default address, or country override. status describes how far the merchant checkout got: ready_for_complete (priced and completable), incomplete (merchant returned partial rates, quote may firm up at checkout), requires_escalation (merchant wants a human at checkout, so this offer is handoff-only however its badge reads). needs_interaction=true means the same. None of these block a handoff; they predict whether autonomous completion can work.

Parametersregionaddresscountryagent_idlocalityquantitysupply_idrequiredpostal_codesession_token

order_execute

Execute order

Handoff or autonomous checkout. Handoff continue_url is a Conduit /handoff/{org_slug}/{order_id} link: open it as returned (records the open, then redirects to the merchant). Autonomous needs badge payable_now (covering mandate fits). No covering mandate, or a spent covering budget, still returns a handoff with continue_url (handoff_reason). Use idempotency_key. Prefer supply_delivery when only comparing delivery.

Parameterscarrieragent_idrequiredpay_withquantitysearch_idsupply_idrequiredsession_tokenidempotency_keypayment_term_id

order_list

List orders

List orders for an agent ({ orders }). Optional status or open_only filter.

Parametersstatusagent_idrequiredopen_onlysession_token

order_track

Track order

Honest deal-type-aware status (never fabricates carrier scans). Requires owning agent_id.

Parametersagent_idrequiredorder_idrequiredsession_token

order_events

Get order events

Lifecycle timeline — transitions only. Pair with order_track. Requires owning agent_id.

Parametersagent_idrequiredorder_idrequiredsession_token

order_update_status

Update order status

Agent manual correction or degraded handoff recovery. note required except cancelled. Owning agent_id required.

Parametersnotestatusrequiredcarrieragent_idrequiredorder_idrequiredsearch_idtracking_idtracking_urlsession_tokenhandoff_endpointexternal_checkout_id

order_dispute

Get dispute path

Refund/chargeback/report paths for an order. Requires owning agent_id.

Parametersagent_idrequiredorder_idrequiredsession_token

order_feedback

Submit feedback

Attest delivery outcome (outcome=on_time|late|never_arrived|damaged|wrong_item). Requires owning agent_id. Can supersede a system-derived score once; a second agent attestation returns already_recorded. Poor outcomes next→order_dispute. Omit quality/carrier_rating if unknown.

Parametersnotesoutcomerequiredqualityagent_idrequiredorder_idrequiredsearch_idsession_tokencarrier_rating

inventory_levels

Stock in your own system

What your organization has on hand, by location, in its own connected system (ERP). Pass skus or query. Every number carries as_of and basis (live | memo | cached) — say how old it is, do not imply it is now. Needs inventory permission. This is your OWN stock; a supplier's stock is supply_availability.

Parametersskusfreshqueryagent_idrequiredconnection_idsession_token

inventory_replenishment

What to reorder

Items below their minimum in your own system, least days of cover first, with what is already inbound and the usual vendor and last price. Each row carries a search_hint: pass its query and quantity straight to supply_search, then supply_availability before ordering. Optional location scopes to one warehouse. Needs inventory permission.

Parametersfreshagent_idrequiredlocationconnection_idsession_token

inventory_suppliers

Usual vendors and last prices

For items in your own system, the vendors on file and what you last paid, so a quote can be compared against history. Needs inventory permission. Does not contact any vendor.

Parametersskusrequiredagent_idrequiredconnection_idsession_token

supply_availability

Can this supplier fill it

Whether one offer can fill a quantity: verdict can_fill | split | out_now | unknown, with what is on hand, what is inbound, and as_of + basis. Suppliers choose how precisely they share stock, so the verdict may come from a band or a yes/no rather than a number. fresh=true asks the supplier now (needs agent_id, rate limited per agent and per organization); without fresh it reads the last value. Call this before order_execute on any connector offer.

Parametersfreshquoteagent_idquantitysupply_idrequiredsession_token

inventory_purchase_order

Record a purchase order

After order_execute confirms a supplier order, record the matching DRAFT purchase order in your own system so the books match. Always a draft: a person confirms it there. Idempotent per order_id — calling twice returns the same draft, never a second one. Needs both inventory and checkout permission. Never creates a vendor or a product: lines that match nothing come back as unmatched_lines for a person to add.

Parametersagent_idrequiredorder_idrequiredconnection_idsession_token

Version history

2
  1. v2.0.0LatestSep 20, 2026
  2. v1.4.0Sep 16, 2026

Score

75% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • License10 pts

    Declare a license in the repository or the registry entry.