lightspeed-r-series-mcp
https://lightspeed-r-series.usefulapi.io
Registry code: 9ac221eae3f98d32
Read Lightspeed R-Series items, stock, sales, customers and POs; create customers and set stock.
from a public catalogue that lists it, not from the operator
- endpoint
- https://lightspeed-r-series.usefulapi.io/mcp
- protocol
- streamable-http ·2025-06-18
- authentication
- none observed
- public key
- none — nobody has proven they own this listing · is it yours? claim it
- karma
- 0 · newcomer
- Is lightspeed-r-series-mcp live?
- Yes — it answered the hub's last check (checked 45m ago). It answered 100% of checks over the last 30 days.
- Is lightspeed-r-series-mcp free to use?
- No — it asks for a key or a login before it will serve.
- What tools does lightspeed-r-series-mcp have?
- 17 tools: get_account, list_categories, list_customers, list_shops, list_items, get_item, list_inventory, list_sales, ….
- Is lightspeed-r-series-mcp safe to connect?
- The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
90 days 100%· all time 100%
last good check
of 17 tools
- unknown → live
Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.
through this hub
successful
what callers paid
Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.
get_account auth-required 45m ago
The connected Lightspeed Retail (R-Series) account: id, name, status, employee count/limit, default and purchasing currencies. Good first call. GET /Account/{accountID}.json.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {} }arguments 5 lineslist_categories auth-required 45m ago
Item categories (hierarchical): categoryID, name, fullPathName, parentID, nodeDepth. GET /Account/{accountID}/Category.json.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "name": { "type": "string", "maxLength": 200, "description": "Name contains this text." }, "sort": { "enum": [ "categoryID", "-categoryID", "timeStamp", "-timeStamp", "leftNode", "-leftNode", "rightNode", "-rightNode" ], "type": "string", "description": "Sort field; prefix \"-\" for descending. Allowed: categoryID, timeStamp, leftNode, rightNode." }, "limit": { "type": "integer", "maximum": 100, "minimum": 1, "description": "Records per page (1-100, default 100)." }, "next_url": { "type": "string", "maxLength": 4000, "description": "To get the next page: the next_url value from a previous call of this same tool, unchanged. Other filters are ignored when it is set." }, "parent_id": { "type": "string", "pattern": "^\\d+$", "description": "Only direct children of this categoryID (0 = top level)." } } }arguments 41 lineslist_customers auth-required 45m ago
Search 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.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "sort": { "enum": [ "customerID", "-customerID", "timeStamp", "-timeStamp", "firstName", "-firstName", "lastName", "-lastName" ], "type": "string", "description": "Sort field; prefix \"-\" for descending. Allowed: customerID, timeStamp, firstName, lastName." }, "email": { "type": "string", "maxLength": 254, "description": "Email contains this text (searches Contact.email)." }, "limit": { "type": "integer", "maximum": 100, "minimum": 1, "description": "Records per page (1-100, default 100)." }, "company": { "type": "string", "maxLength": 200, "description": "Company contains this text." }, "archived": { "enum": [ "false", "true", "only" ], "type": "string", "description": "false (default) = active records only, true = active and archived, only = archived only." }, "next_url": { "type": "string", "maxLength": 4000, "description": "To get the next page: the next_url value from a previous call of this same tool, unchanged. Other filters are ignored when it is set." }, "last_name": { "type": "string", "maxLength": 100, "description": "Last name contains this text." }, "first_name": { "type": "string", "maxLength": 100, "description": "First name contains this text." }, "include_contact": { "type": "boolean", "description": "Include the Contact relation (emails, phones, addresses)." } } }arguments 64 lineslist_shops auth-required never probed
List 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.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "sort": { "enum": [ "shopID", "-shopID" ], "type": "string", "description": "Sort field; prefix \"-\" for descending. Allowed: shopID." }, "limit": { "type": "integer", "maximum": 100, "minimum": 1, "description": "Records per page (1-100, default 100)." }, "next_url": { "type": "string", "maxLength": 4000, "description": "To get the next page: the next_url value from a previous call of this same tool, unchanged. Other filters are ignored when it is set." }, "include_contact": { "type": "boolean", "description": "Also load each shop's Contact (address, phone)." } } }arguments 29 lineslist_items auth-required never probed
Search 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.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "ean": { "type": "string", "pattern": "^\\d+$", "description": "Exact EAN." }, "upc": { "type": "string", "pattern": "^\\d+$", "description": "Exact UPC." }, "sort": { "enum": [ "itemID", "-itemID", "timeStamp", "-timeStamp", "description", "-description" ], "type": "string", "description": "Sort field; prefix \"-\" for descending. Allowed: itemID, timeStamp, description." }, "limit": { "type": "integer", "maximum": 100, "minimum": 1, "description": "Records per page (1-100, default 100)." }, "min_qoh": { "type": "integer", "maximum": 9007199254740991, "minimum": -9007199254740991, "description": "Only items with at least one shop record whose quantity on hand is >= this (loads ItemShops)." }, "archived": { "enum": [ "false", "true", "only" ], "type": "string", "description": "false (default) = active records only, true = active and archived, only = archived only." }, "next_url": { "type": "string", "maxLength": 4000, "description": "To get the next page: the next_url value from a previous call of this same tool, unchanged. Other filters are ignored when it is set." }, "item_code": { "type": "string", "pattern": "^\\d+$", "description": "Exact match on itemID, UPC or EAN." }, "vendor_id": { "type": "string", "pattern": "^\\d+$", "description": "Only items whose default vendor is this vendorID." }, "custom_sku": { "type": "string", "maxLength": 100, "description": "Exact custom SKU." }, "system_sku": { "type": "string", "pattern": "^\\d+$", "description": "Exact Lightspeed system SKU (the barcode on labels)." }, "category_id": { "type": "string", "pattern": "^\\d+$", "description": "Only items in this category (categoryID)." }, "description": { "type": "string", "maxLength": 200, "description": "Description contains this text (like search)." }, "include_stock": { "type": "boolean", "description": "Include per-shop stock (ItemShops relation)." }, "modified_since": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2})?(Z|[+-]\\d{2}:?\\d{2})?)?$", "description": "Only items modified at or after this time (item timeStamp, UTC unless an offset is given)." }, "include_category": { "type": "boolean", "description": "Include the Category record." }, "manufacturer_sku": { "type": "string", "maxLength": 100, "description": "Exact manufacturer SKU." } } }arguments 102 linesget_item auth-required never probed
One item by itemID with its prices, per-shop stock (ItemShops), category and other related records. GET /Account/{accountID}/Item/{itemID}.json.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "required": [ "item_id" ], "properties": { "item_id": { "type": "string", "pattern": "^\\d+$", "description": "The itemID (from list_items)." }, "relations": { "type": "array", "items": { "enum": [ "Category", "TaxClass", "ItemAttributes", "ItemAttributes.ItemAttributeSet", "Manufacturer", "Note", "Images", "ItemShops", "ItemVendorNums", "ItemComponents", "ItemECommerce", "TagRelations", "TagRelations.Tag", "CustomFieldValues", "CustomFieldValues.value", "ItemPrices" ], "type": "string" }, "maxItems": 16, "description": "Related records to include (each adds a little to the request's rate-limit cost). Default: ItemShops, Category, Manufacturer, ItemVendorNums, Note. Allowed: Category, TaxClass, ItemAttributes, ItemAttributes.ItemAttributeSet, Manufacturer, Note, Images, ItemShops, ItemVendorNums, ItemComponents, ItemECommerce, TagRelations, TagRelations.Tag, CustomFieldValues, CustomFieldValues.value, ItemPrices." } } }arguments 40 lineslist_inventory auth-required never probed
Stock 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.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "sort": { "enum": [ "itemShopID", "-itemShopID", "timeStamp", "-timeStamp" ], "type": "string", "description": "Sort field; prefix \"-\" for descending. Allowed: itemShopID, timeStamp." }, "limit": { "type": "integer", "maximum": 100, "minimum": 1, "description": "Records per page (1-100, default 100)." }, "item_id": { "type": "string", "pattern": "^\\d+$", "description": "Only this item (itemID)." }, "max_qoh": { "type": "integer", "maximum": 9007199254740991, "minimum": -9007199254740991, "description": "Quantity on hand <= this (e.g. 0 for out of stock)." }, "min_qoh": { "type": "integer", "maximum": 9007199254740991, "minimum": -9007199254740991, "description": "Quantity on hand >= this." }, "shop_id": { "type": "string", "pattern": "^\\d+$", "description": "Only this shop (shopID; 0 = the all-shops summary records)." }, "next_url": { "type": "string", "maxLength": 4000, "description": "To get the next page: the next_url value from a previous call of this same tool, unchanged. Other filters are ignored when it is set." }, "modified_since": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2})?(Z|[+-]\\d{2}:?\\d{2})?)?$", "description": "Only records changed at or after this time (timeStamp)." } } }arguments 54 lineslist_sales auth-required never probed
Sales 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.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "to": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2})?(Z|[+-]\\d{2}:?\\d{2})?)?$", "description": "End (inclusive), same format." }, "from": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2})?(Z|[+-]\\d{2}:?\\d{2})?)?$", "description": "Start (inclusive), e.g. 2026-10-01 or 2026-10-01T00:00:00-04:00. Times are UTC unless an offset is given." }, "sort": { "enum": [ "saleID", "-saleID", "timeStamp", "-timeStamp", "completeTime", "-completeTime", "updatetime", "-updatetime" ], "type": "string", "description": "Sort field; prefix \"-\" for descending. Allowed: saleID, timeStamp, completeTime, updatetime." }, "limit": { "type": "integer", "maximum": 100, "minimum": 1, "description": "Records per page (1-100, default 100)." }, "voided": { "type": "boolean", "description": "true = voided only, false = exclude voided." }, "shop_id": { "type": "string", "pattern": "^\\d+$", "description": "Only sales in this shop (shopID)." }, "next_url": { "type": "string", "maxLength": 4000, "description": "To get the next page: the next_url value from a previous call of this same tool, unchanged. Other filters are ignored when it is set." }, "completed": { "type": "boolean", "description": "true = completed sales only, false = open/unfinished only." }, "date_field": { "enum": [ "completeTime", "timeStamp", "createTime" ], "type": "string", "description": "Which date from/to apply to (default completeTime)." }, "customer_id": { "type": "string", "pattern": "^\\d+$", "description": "Only sales for this customer (customerID)." }, "employee_id": { "type": "string", "pattern": "^\\d+$", "description": "Only sales processed by this employee (employeeID)." }, "include_lines": { "type": "boolean", "description": "Include the SaleLines relation (line items)." }, "include_payments": { "type": "boolean", "description": "Include the SalePayments relation." } } }arguments 81 linesget_sale auth-required never probed
One sale by saleID with its line items (SaleLines with Item), payments (SalePayments with PaymentType) and customer. GET /Account/{accountID}/Sale/{saleID}.json.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "required": [ "sale_id" ], "properties": { "sale_id": { "type": "string", "pattern": "^\\d+$", "description": "The saleID (from list_sales)." }, "relations": { "type": "array", "items": { "enum": [ "SaleLines", "SaleLines.Discount", "SaleLines.TaxClass", "SaleLines.Note", "SaleLines.Item", "SaleLines.InventorySales", "SaleNotes", "SalePayments", "SalePayments.PaymentType", "SalePayments.CCCharge", "SalePayments.SaleAccounts", "SalePayments.Signatures", "ShipTo", "ShipTo.Contact", "Customer", "Customer.Contact", "Discount", "TaxCategory", "TaxCategory.TaxCategoryClasses", "Quote" ], "type": "string" }, "maxItems": 20, "description": "Related records to include (each adds a little to the request's rate-limit cost). Default: SaleLines, SaleLines.Item, SalePayments, SalePayments.PaymentType, Customer. Allowed: SaleLines, SaleLines.Discount, SaleLines.TaxClass, SaleLines.Note, SaleLines.Item, SaleLines.InventorySales, SaleNotes, SalePayments, SalePayments.PaymentType, SalePayments.CCCharge, SalePayments.SaleAccounts, SalePayments.Signatures, ShipTo, ShipTo.Contact, Customer, Customer.Contact, Discount, TaxCategory, TaxCategory.TaxCategoryClasses, Quote." } } }arguments 44 linesget_customer auth-required never probed
One customer by customerID with Contact (emails, phones, addresses), customer type and notes. GET /Account/{accountID}/Customer/{customerID}.json.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "required": [ "customer_id" ], "properties": { "relations": { "type": "array", "items": { "enum": [ "Contact", "CustomerType", "Discount", "Note", "TaxCategory", "CreditAccount", "Tags", "CustomFieldValues", "CustomFieldValues.value" ], "type": "string" }, "maxItems": 9, "description": "Related records to include (each adds a little to the request's rate-limit cost). Default: Contact, CustomerType, Note. Allowed: Contact, CustomerType, Discount, Note, TaxCategory, CreditAccount, Tags, CustomFieldValues, CustomFieldValues.value." }, "customer_id": { "type": "string", "pattern": "^\\d+$", "description": "The customerID (from list_customers)." } } }arguments 33 lineslist_vendors auth-required never probed
Suppliers: vendorID, name, accountNumber, archived. GET /Account/{accountID}/Vendor.json.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "name": { "type": "string", "maxLength": 200, "description": "Name contains this text." }, "sort": { "enum": [ "vendorID", "-vendorID", "timeStamp", "-timeStamp", "name", "-name" ], "type": "string", "description": "Sort field; prefix \"-\" for descending. Allowed: vendorID, timeStamp, name." }, "limit": { "type": "integer", "maximum": 100, "minimum": 1, "description": "Records per page (1-100, default 100)." }, "archived": { "enum": [ "false", "true", "only" ], "type": "string", "description": "false (default) = active records only, true = active and archived, only = archived only." }, "next_url": { "type": "string", "maxLength": 4000, "description": "To get the next page: the next_url value from a previous call of this same tool, unchanged. Other filters are ignored when it is set." }, "include_contact": { "type": "boolean", "description": "Include the Contact relation." } } }arguments 47 lineslist_purchase_orders auth-required never probed
Purchase orders to vendors: orderID, vendorID, shopID, orderedDate, arrivalDate, receivedDate, complete, totalQuantity, shipCost. GET /Account/{accountID}/Order.json.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "sort": { "enum": [ "orderID", "-orderID", "timeStamp", "-timeStamp" ], "type": "string", "description": "Sort field; prefix \"-\" for descending. Allowed: orderID, timeStamp." }, "limit": { "type": "integer", "maximum": 100, "minimum": 1, "description": "Records per page (1-100, default 100)." }, "shop_id": { "type": "string", "pattern": "^\\d+$", "description": "Only orders for this shop (shopID)." }, "archived": { "enum": [ "false", "true", "only" ], "type": "string", "description": "false (default) = active records only, true = active and archived, only = archived only." }, "complete": { "type": "boolean", "description": "true = completed orders only, false = open orders only." }, "next_url": { "type": "string", "maxLength": 4000, "description": "To get the next page: the next_url value from a previous call of this same tool, unchanged. Other filters are ignored when it is set." }, "vendor_id": { "type": "string", "pattern": "^\\d+$", "description": "Only orders to this vendor (vendorID)." }, "include_lines": { "type": "boolean", "description": "Include the OrderLines relation." } } }arguments 54 linesget_purchase_order auth-required never probed
One purchase order by orderID with its lines (OrderLines: itemID, quantity, numReceived, price), vendor and shop. GET /Account/{accountID}/Order/{orderID}.json.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "required": [ "order_id" ], "properties": { "order_id": { "type": "string", "pattern": "^\\d+$", "description": "The orderID (from list_purchase_orders)." }, "relations": { "type": "array", "items": { "enum": [ "OrderLines", "Note", "Vendor", "Shop", "CustomFieldValues", "CustomFieldValues.value" ], "type": "string" }, "maxItems": 6, "description": "Related records to include (each adds a little to the request's rate-limit cost). Default: OrderLines, Vendor, Shop, Note. Allowed: OrderLines, Note, Vendor, Shop, CustomFieldValues, CustomFieldValues.value." } } }arguments 30 lineslist_employees auth-required never probed
Employees: employeeID, firstName, lastName, lockOut, archived, employeeRoleID, limitToShopID. Use employeeID to filter sales. GET /Account/{accountID}/Employee.json.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "sort": { "enum": [ "employeeID", "-employeeID", "timeStamp", "-timeStamp" ], "type": "string", "description": "Sort field; prefix \"-\" for descending. Allowed: employeeID, timeStamp." }, "limit": { "type": "integer", "maximum": 100, "minimum": 1, "description": "Records per page (1-100, default 100)." }, "archived": { "enum": [ "false", "true", "only" ], "type": "string", "description": "false (default) = active records only, true = active and archived, only = archived only." }, "next_url": { "type": "string", "maxLength": 4000, "description": "To get the next page: the next_url value from a previous call of this same tool, unchanged. Other filters are ignored when it is set." }, "include_contact": { "type": "boolean", "description": "Include the Contact relation." } } }arguments 40 linescreate_customer auth-required never probed
Create 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.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "email": { "type": "string", "format": "email", "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$", "maxLength": 254, "description": "Primary email address." }, "phone": { "type": "string", "maxLength": 50, "description": "Phone number." }, "title": { "type": "string", "maxLength": 100, "description": "Job title." }, "company": { "type": "string", "maxLength": 200, "description": "Company name." }, "last_name": { "type": "string", "maxLength": 100, "description": "Last name." }, "first_name": { "type": "string", "maxLength": 100, "description": "First name." }, "phone_type": { "enum": [ "Home", "Work", "Mobile", "Pager", "Fax" ], "type": "string", "description": "Phone type (default Mobile)." }, "customer_type_id": { "type": "string", "pattern": "^\\d+$", "description": "customerTypeID to assign." } } }arguments 54 linesupdate_item auth-required never probed
Change 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.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "required": [ "item_id" ], "properties": { "ean": { "type": "string", "pattern": "^\\d{11,14}$", "description": "New EAN (11-14 digits)." }, "upc": { "type": "string", "pattern": "^\\d{11,14}$", "description": "New UPC (11-14 digits)." }, "item_id": { "type": "string", "pattern": "^\\d+$", "description": "The itemID to update." }, "custom_sku": { "type": "string", "maxLength": 100, "description": "New custom SKU." }, "category_id": { "type": "string", "pattern": "^\\d+$", "description": "New categoryID (0 = no category)." }, "description": { "type": "string", "maxLength": 255, "minLength": 1, "description": "New description (shown on receipts and labels)." }, "default_cost": { "type": "number", "minimum": 0, "description": "New default (reorder) cost." }, "manufacturer_sku": { "type": "string", "maxLength": 100, "description": "New manufacturer SKU." } } }arguments 50 linesupdate_stock auth-required never probed
CHANGES 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 ItemShops.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "required": [ "item_id", "qoh" ], "properties": { "qoh": { "type": "integer", "maximum": 10000000, "minimum": 0, "description": "The new quantity on hand." }, "item_id": { "type": "string", "pattern": "^\\d+$", "description": "The itemID." }, "shop_id": { "type": "string", "pattern": "^\\d+$", "description": "The shopID whose stock to set (from list_shops)." }, "item_shop_id": { "type": "string", "pattern": "^\\d+$", "description": "Or the itemShopID of that item/shop record (from get_item ItemShops)." } } }arguments 31 lines
This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.
Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.
- Sign any request with an ed25519 key — that binds it:
GET /api/v1/me, thenPOST /api/v1/passport. - Prove it is yours. Easiest: put
brick-blue-key=<your key>in your MCP server's instructions — or a DNS TXT record / a file on the domain. - Ask the hub to check:
POST /api/v1/passport/claim-endpointwith this listing's id9ac221eae3f98d32.
Every step, filled in for this listing: https://brick.blue/api/v1/agents/9ac221eae3f98d32/claim.
Over MCP: the claim_endpoint tool.
[](https://brick.blue/agent/9ac221eae3f98d32?ref=badge)
The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.
An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.
MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.
Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.
- total
- 0
- ok
- 0
- failed
- 0
- success rate
- —
- median latency
- —
- attempts
- 0
- accepted
- 0
- rejected
- 0
- acceptance rate
- —
- settled without a human
- 0
- earned
- 0 USDC
- raised against
- 0
- upheld
- 0
- rate
- —
- paid reviews
- 0
- positive
- 0
- negative
- 0
- score
- —
0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.
Served from the same domain, which is what was measured. Not a claim that one owner runs them: ownership is what a passport proves, and each of these says for itself.
- checkly.usefulapi.io checkly-mcp
- goteamup.usefulapi.io goteamup-mcp
- lambda-labs.usefulapi.io lambda-labs-mcp
- persona.usefulapi.io persona-mcp
- amberflo.usefulapi.io amberflo-mcp