Lightspeed Retail (R-Series) MCP by usefulapi
Read Lightspeed R-Series items, stock, sales, customers and POs; create customers and set stock.
Connect it
Settings → Connectors → Add custom connector
URL: https://lightspeed-r-series.usefulapi.io/mcpSettings → Apps & Connectors → Advanced → Developer mode
Create connector with URL: https://lightspeed-r-series.usefulapi.io/mcp{
"mcpServers": {
"lightspeed-r-series": {
"url": "https://lightspeed-r-series.usefulapi.io/mcp"
}
}
}claude mcp add --transport http lightspeed-r-series https://lightspeed-r-series.usefulapi.io/mcp{
"servers": {
"lightspeed-r-series": {
"type": "http",
"url": "https://lightspeed-r-series.usefulapi.io/mcp"
}
}
}17 tools, verified live
get_accountread-onlyThe connected Lightspeed Retail (R-Series) account: id, name, status, employee count/limit, default and purchasing currencies. Good first call. GET /Account/{accountID}.json.
list_shopsread-onlyList the account's shops (store locations): shopID, name, time zone, archived flag. Use shopID to filter sales, inventory and purchase orders. GET /Account/{accountID}/Shop.json.
list_itemsread-onlySearch the product catalog. Each item has itemID, description, SKUs (systemSku, customSku, upc, ean, manufacturerSku), defaultCost, categoryID and its Prices (price levels). Set include_stock to add per-shop quantities (ItemShops; shopID 0 = all shops). Paginate with next_url. GET /Account/{accountID}/Item.json.
get_itemread-onlyOne item by itemID with its prices, per-shop stock (ItemShops), category and other related records. GET /Account/{accountID}/Item/{itemID}.json.
list_inventoryread-onlyStock levels per item per shop (ItemShop records): qoh (quantity on hand), sellable, backorder, reorderPoint, reorderLevel, costs and values. shopID 0 is the all-shops summary. Paginate with next_url. GET /Account/{accountID}/ItemShop.json.
list_categoriesread-onlyItem categories (hierarchical): categoryID, name, fullPathName, parentID, nodeDepth. GET /Account/{accountID}/Category.json.
list_salesread-onlySales history: saleID, completed/voided flags, completeTime, totals (calcSubtotal, calcTax1/2, total, balance), customerID, employeeID, shopID, registerID. Filter by a date range on completeTime (default) or timeStamp, shop, customer, employee. Set include_lines for SaleLines (items sold). Paginate with next_url. GET /Account/{accountID}/Sale.json.
get_saleread-onlyOne sale by saleID with its line items (SaleLines with Item), payments (SalePayments with PaymentType) and customer. GET /Account/{accountID}/Sale/{saleID}.json.
list_customersread-onlySearch customers by name, company or email: customerID, firstName, lastName, company, customerTypeID, createTime. Email search loads the Contact relation (emails, phones, addresses). Paginate with next_url. GET /Account/{accountID}/Customer.json.
get_customerread-onlyOne customer by customerID with Contact (emails, phones, addresses), customer type and notes. GET /Account/{accountID}/Customer/{customerID}.json.
list_vendorsread-onlySuppliers: vendorID, name, accountNumber, archived. GET /Account/{accountID}/Vendor.json.
list_purchase_ordersread-onlyPurchase orders to vendors: orderID, vendorID, shopID, orderedDate, arrivalDate, receivedDate, complete, totalQuantity, shipCost. GET /Account/{accountID}/Order.json.
get_purchase_orderread-onlyOne purchase order by orderID with its lines (OrderLines: itemID, quantity, numReceived, price), vendor and shop. GET /Account/{accountID}/Order/{orderID}.json.
list_employeesread-onlyEmployees: employeeID, firstName, lastName, lockOut, archived, employeeRoleID, limitToShopID. Use employeeID to filter sales. GET /Account/{accountID}/Employee.json.
create_customerCreate a new customer, optionally with a primary email and one phone number (stored in the customer's Contact). Give at least a first name, last name or company. Returns the new customer with its customerID. POST /Account/{accountID}/Customer.json.
update_itemcan modifyChange fields of an existing item: description, default cost, SKUs, category. Only the fields you pass are changed. Prices and stock are not changed here (use update_stock for quantities). PUT /Account/{accountID}/Item/{itemID}.json.
update_stockcan modifyCHANGES STOCK COUNTS: sets (does not add to) the quantity on hand of one item in one shop to `qoh`, by updating the item's ItemShop record. Use for correcting a few items; for many items use an inventory count in Lightspeed. Identify the shop by shop_id, or by item_shop_id from get_item's ItemShops. Not for shopID 0 (the all-shops summary). PUT /Account/{accountID}/Item/{itemID}.json with ItemShop
Alternatives in CRM & Sales
Compare →CAConta Azul MCPB
Conta Azul ERP MCP — sales, customers, finance and NF-e via OAuth 2.0. Read + write, 35 tools.
Moltline Outbound EngineB
7 outreach, sequencing, call-coaching and CRM-hygiene skill products. 6 of 8 free.
FAFavCRMB
Agentic CRM for service businesses — bookings, customers, WhatsApp, loyalty, invoicing.
WAWindsor.ai MCPB
Query and analyze marketing, sales, and business data from 325+ platforms via Windsor.ai.
CUCustomermatesB
Native MCP access to CRM contacts, organizations, deals and tasks with user permissions.
GTM OttoB
Self-driving LinkedIn prospecting: it sources, warms and invites daily. You approve every message.