Skip to main content
Glama
MSPbotsAI

ingrammicro-mcp

by MSPbotsAI

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
AUTH_MODENogateway (per-request headers, SOP-compliant) or env (shared credential, local dev only)gateway
MCP_HTTP_HOSTNoListening host0.0.0.0
MCP_HTTP_PORTNoListening port8080
MCP_TRANSPORTNohttp (production) or stdio (local dev)stdio
INGRAMMICRO_BASE_URLNoOverride for sandbox testinghttps://api.ingrammicro.com
INGRAMMICRO_CLIENT_IDNoOnly used in env mode - OAuth2 Client ID
INGRAMMICRO_SENDER_IDNoIM-SenderID value sent on every callMSPbots
INGRAMMICRO_COUNTRY_CODENoOnly used in env mode - Two-letter ISO country code (IM-CountryCode)
INGRAMMICRO_CLIENT_SECRETNoOnly used in env mode - OAuth2 Client Secret
INGRAMMICRO_CUSTOMER_NUMBERNoOnly used in env mode - Ingram Micro reseller account number (IM-CustomerNumber)

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
ingrammicro_search_productsA

Search Ingram Micro's product catalog by keyword, vendor, category, or SKU type. "What's the Ingram part number for Cisco switch model X" or "list Microsoft cloud SKUs with discounts" both start here. Returns matching products with Ingram/vendor part numbers; call ingrammicro_get_price_and_availability next for live pricing/stock.

ingrammicro_get_product_detailA

Get full catalog detail for one product by its Ingram Micro part number (from ingrammicro_search_products). Use ingrammicro_get_product_detail_by_reference instead if you only have the vendor's own part number or a subscription plan id/name.

ingrammicro_get_product_detail_by_referenceA

Get catalog detail for a product identified by the vendor's own part number, or by subscription plan id/name — for when you don't have Ingram's own part number. Exactly one of vendor_part_number, plan_id, or plan_name must be given.

ingrammicro_get_price_and_availabilityA

Get real-time price and/or stock availability for one or more SKUs — the step before placing an order, to confirm current price and that stock exists before calling ingrammicro_create_order.

ingrammicro_create_orderA

Place a real purchase order for stocked, direct-ship, licensing, or warranty SKUs. Real money against the reseller's net-terms account — Ingram does not support credit-card API ordering.

    For cloud subscriptions, Quote-to-Order, or Configure-to-Order, use
    ingrammicro_create_cloud_order instead — this tool is for standard
    SKU ordering only. Confirm every SKU/quantity/price with a human
    first; there is no dry-run mode. Returns per-line success/error/
    warning counts and, on partial failure, a rejectedLineItems list
    naming exactly which lines failed and why.
    
ingrammicro_create_cloud_orderA

Place a cloud-subscription order, or convert an existing Quote (Quote-to-Order / Configure-to-Order) into a real order. Asynchronous: this call only returns a confirmationNumber acknowledging receipt — Ingram Micro pushes the actual order result (success or error) later via its own webhook, not in this response.

    For standard stocked/direct-ship/licensing/warranty SKUs (not
    cloud, not quote-based), use ingrammicro_create_order instead.
    Real money against the reseller's net-terms account — no dry-run,
    no credit-card ordering. Always validate a quote first with
    ingrammicro_validate_quote_to_order before passing quote_number
    here.
    
ingrammicro_modify_orderA

Change an order placed with the customer-hold flag — add/update/ delete lines, change ship-to, or release the hold.

ONLY works within roughly 24 hours of placement, and only if the order was created with the customer-hold flag (void after 24h if never released). An order placed WITHOUT customer-hold cannot be modified — this call fails. Confirm with a human before changing quantities or the shipping address.

ingrammicro_cancel_orderA

Cancel an order before it reaches Ingram Micro's warehouse.

    Irreversible once it fails: an order already released to the
    warehouse CANNOT be canceled through this API at all — Ingram
    Micro requires the order to still be on customer hold. Confirm
    with a human before calling; there is no way to check "is it too
    late" ahead of time other than trying and reading the error.
    
ingrammicro_get_orderA

Get full status/line detail for one order — shipping status, tracking, per-line fulfillment. Use ingrammicro_search_orders instead if you don't already have the exact order number.

ingrammicro_search_ordersA

Search past/current orders by PO number, status, product, or date. Use this to find the exact order number before calling ingrammicro_get_order, ingrammicro_modify_order, or ingrammicro_cancel_order.

ingrammicro_search_quotesA

Search quotes by number, status, vendor, or end customer. Use this to find a quote's number before ingrammicro_get_quote, ingrammicro_validate_quote_to_order, or converting it to an order with ingrammicro_create_cloud_order.

ingrammicro_get_quoteA

Get full detail for one quote — line items, pricing, expiry, and current status.

ingrammicro_create_quoteA

Create a new quote — a price hold, not a purchase. Convert it to a real order later with ingrammicro_create_cloud_order(quote_number=...) after validating with ingrammicro_validate_quote_to_order.

ingrammicro_validate_quote_to_orderA

Validate a quote before converting it to an order, and learn which fields the vendor requires at header and line level for the Quote-to-Order call.

    Always call this before ingrammicro_create_cloud_order(quote_number=...)
    — the response's vmfAdditionalAttributes (header level) and each
    line's vmfAdditionalAttributesLines name the exact vendor-mandatory
    fields to copy into that call's additional_attributes.
    
ingrammicro_search_invoicesA

Search invoices by order, invoice number, date range, or status. Use this to find the exact invoice number before calling ingrammicro_get_invoice.

ingrammicro_get_invoiceA

Get full line-level detail for one invoice.

ingrammicro_search_renewalsA

Search upcoming or past subscription/support renewals by order, vendor, end customer, or opportunity status. Use this to find the renewal id before ingrammicro_get_renewal.

ingrammicro_get_renewalA

Get full detail for one renewal opportunity.

ingrammicro_search_dealsA

Search special-pricing deals (vendor discount bids) by vendor or end customer. A deal's id can be passed as special_bid_number when placing an order, or as deal_id when creating a quote. Use this to find the exact deal id before ingrammicro_get_deal.

ingrammicro_get_dealA

Get full detail for one special-pricing deal, including which products/vendors it covers.

ingrammicro_search_returnsA

Search return (RMA) requests by invoice, product, or status. Use this to find the exact case_request_number before calling ingrammicro_get_return.

ingrammicro_get_returnA

Get full detail and current status for one return (RMA) request.

ingrammicro_create_returnA

File one or more return (RMA) requests against already-invoiced product. Each entry needs the original invoice, a quantity, primary/secondary reason, box count, and a full ship-from address — Ingram rejects a request missing any of those. Confirm with a human before filing; a filed return cannot be un-filed through this API.

ingrammicro_get_freight_estimateA

Estimate freight/shipping cost for a set of SKUs and quantities before placing an order — check this when shipping cost matters to the customer's decision.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/MSPbotsAI/ingrammicro-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server