SkuVault MCP by usefulapi

MCP server for SkuVault — products, inventory, sales, purchase orders and stock adjustments.

我該用這個嗎

品質與安全性

A
說明品質
96%
結構描述完整度
90%
命名品質
77%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

發現項目(3)

  • LOWTool 'skuvault_get_inventory_by_location' name length outside 3-30 range在 skuvault_get_inventory_by_location 中
  • LOWTool 'skuvault_get_available_quantities' name length outside 3-30 range在 skuvault_get_available_quantities 中
  • LOWTool 'skuvault_get_warehouse_quantities' name length outside 3-30 range在 skuvault_get_warehouse_quantities 中

根據工具定義與協定合規性的自動化分析。

上下文成本

~7,115Token(工具定義)
~2.6 KB典型回應大小
顯著的注意力影響(128k 上下文的 5.56%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "skuvault": {
      "url": "https://skuvault.usefulapi.io/mcp"
    }
  }
}

遠端端點

https://skuvault.usefulapi.io/mcpstreamable-http

它能做什麼

工具清單

工具(22)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢skuvault_list_warehouses(page)

List the regular warehouses (Id and Code). The numeric Id is what the stock tools and skuvault_list_transactions need. SkuVault throttles this call to 1 per minute. POST /inventory/getWarehouses.

輸入結構描述

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_locations(skip, limit)

List the locations in enabled warehouses with warehouse, location code, parent location/container and total quantity. Heavy throttling (5/min). POST /inventory/getLocations.

輸入結構描述

{
  "type": "object",
  "properties": {
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_products(skus, codes, modified_after, modified_before, page, ...)

List products (not kits) with description, cost, prices, brand, supplier, classification, reorder point and quantities (on hand, available, pending, picked, incoming...). Filter by SKU or code, or by modification time. Alternate SKUs come back as separate rows (IsAlternateSKU) unless you filter. Heavy throttling (5/min). POST /products/getProducts.

輸入結構描述

{
  "type": "object",
  "properties": {
    "skus": {
      "description": "Only these SKUs.",
      "minItems": 1,
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      }
    },
    "codes": {
      "description": "Only these product codes.",
      "minItems": 1,
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      }
    },
    "modified_after": {
      "description": "Only products modified at or after this time.",
      "type": "string"
    },
    "modified_before": {
      "description": "Only products modified before this time.",
      "type": "string"
    },
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "page_size": {
      "description": "Vendor page size, 1000-10000 (default 1000).",
      "type": "integer",
      "minimum": 1000,
      "maximum": 10000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_get_product(sku, code)

One product (not a kit) by SKU or by code: details plus all quantities (on hand, available, pending, picked, incoming, in stock). Give exactly one of sku or code. Light throttling (20/min). POST /products/getProduct.

輸入結構描述

{
  "type": "object",
  "properties": {
    "sku": {
      "description": "Product SKU.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "code": {
      "description": "Product code.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_kits(skus, modified_after, modified_before, include_available_quantity, include_cost, ...)

List kits with their component lines, optional available quantity and cost. Needs a modified-time window (defaults to all time). The page size is not documented: keep following `next` until a page comes back empty. Heavy throttling (5/min). POST /products/getKits.

輸入結構描述

{
  "type": "object",
  "properties": {
    "skus": {
      "description": "Only these kit SKUs.",
      "minItems": 1,
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      }
    },
    "modified_after": {
      "description": "Only kits modified at or after this time (default: all time).",
      "type": "string"
    },
    "modified_before": {
      "description": "Only kits modified before this time (default: now).",
      "type": "string"
    },
    "include_available_quantity": {
      "description": "Also compute the available quantity of each kit (default false: it is 0).",
      "type": "boolean"
    },
    "include_cost": {
      "description": "Also return the kit cost (default false).",
      "type": "boolean"
    },
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_brands(page, skip, limit)

List the brands created in SkuVault (Name, IsEnabled), 1,000 per page. Heavy throttling (5/min). POST /products/getBrands.

輸入結構描述

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_suppliers(page, skip, limit)

List the suppliers in the account (Name, IsEnabled), 10,000 per page. Heavy throttling (5/min). POST /products/getSuppliers.

輸入結構描述

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_classifications(page, skip, limit)

List product classifications and their named attributes, 1,000 per page. Heavy throttling (5/min). POST /products/getClassifications.

輸入結構描述

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_get_inventory_by_location(skus, codes, page, page_size, skip, ...)

Where each product is stored: per SKU (or code) the locations with warehouse code, quantity and whether the location is a reserve location. Filter by SKUs or by codes (not both). Heavy throttling (5/min). POST /inventory/getInventoryByLocation.

輸入結構描述

{
  "type": "object",
  "properties": {
    "skus": {
      "description": "Only these SKUs.",
      "minItems": 1,
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      }
    },
    "codes": {
      "description": "Only these product codes (the reply is then keyed by code).",
      "minItems": 1,
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      }
    },
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "page_size": {
      "description": "Vendor page size, 1000-10000 (default 1000).",
      "type": "integer",
      "minimum": 1000,
      "maximum": 10000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_get_available_quantities(modified_after, modified_before, expand_alternate_skus, page, page_size, ...)

Sellable (available) quantity per SKU across all warehouses, with last-modified time. Use modified_after to see only what changed. Heavy throttling (5/min). POST /inventory/getAvailableQuantities.

輸入結構描述

{
  "type": "object",
  "properties": {
    "modified_after": {
      "description": "Only quantities modified at or after this time.",
      "type": "string"
    },
    "modified_before": {
      "description": "Only quantities modified before this time.",
      "type": "string"
    },
    "expand_alternate_skus": {
      "description": "List alternate SKUs inside their primary row instead of as separate rows.",
      "type": "boolean"
    },
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "page_size": {
      "description": "Vendor page size, 1000-5000 (default 1000).",
      "type": "integer",
      "minimum": 1000,
      "maximum": 5000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_get_item_quantities(codes, modified_after, modified_before, page, page_size, ...)

Product quantities per SKU: total on hand, available, held, pending and picked. Filter by product codes or modification time. Heavy throttling (5/min). POST /inventory/getItemQuantities.

輸入結構描述

{
  "type": "object",
  "properties": {
    "codes": {
      "description": "Only these product codes.",
      "minItems": 1,
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      }
    },
    "modified_after": {
      "description": "Only inventory modified at or after this time.",
      "type": "string"
    },
    "modified_before": {
      "description": "Only inventory modified before this time.",
      "type": "string"
    },
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "page_size": {
      "description": "Vendor page size, 1000-10000 (default 1000).",
      "type": "integer",
      "minimum": 1000,
      "maximum": 10000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_get_warehouse_quantities(warehouse_id, modified_after, modified_before, page, page_size, ...)

SKUs and quantities held in one warehouse. Get the warehouse id from skuvault_list_warehouses. Heavy throttling (5/min). POST /inventory/getWarehouseItemQuantities.

輸入結構描述

{
  "type": "object",
  "properties": {
    "warehouse_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "SkuVault warehouse id (an integer; see skuvault_list_warehouses)."
    },
    "modified_after": {
      "description": "Only quantities modified at or after this time.",
      "type": "string"
    },
    "modified_before": {
      "description": "Only quantities modified before this time.",
      "type": "string"
    },
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "page_size": {
      "description": "Vendor page size, 1000-10000 (default 1000).",
      "type": "integer",
      "minimum": 1000,
      "maximum": 10000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "required": [
    "warehouse_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_transactions(from, to, user_email, warehouse_id, type, ...)

Inventory transaction history (adds, removes, picks, creates) with user, SKU, quantity before/after, location, reason, note and the sale it belongs to. The date range may span at most 7 days. Filter by user email, warehouse id, type, reasons or sale id. Heavy throttling (5/min). POST /inventory/getTransactions.

輸入結構描述

{
  "type": "object",
  "properties": {
    "from": {
      "type": "string",
      "description": "Start of the range."
    },
    "to": {
      "description": "End of the range (default now). At most 7 days after `from`.",
      "type": "string"
    },
    "user_email": {
      "description": "Only this user's transactions (case-sensitive email).",
      "type": "string",
      "minLength": 3,
      "maxLength": 254
    },
    "warehouse_id": {
      "description": "Only this warehouse (the Id from skuvault_list_warehouses).",
      "type": "string",
      "minLength": 1,
      "maxLength": 50
    },
    "type": {
      "description": "Transaction type (default All).",
      "type": "string",
      "enum": [
        "All",
        "Add",
        "Remove",
        "Pick",
        "Create"
      ]
    },
    "reasons": {
      "description": "Only these transaction reasons.",
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      }
    },
    "exclude_reasons": {
      "description": "Leave out these transaction reasons.",
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      }
    },
    "sale_id": {
      "description": "Only transactions against this sale id.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "page_size": {
      "description": "Vendor page size, 1000-10000 (default 1000).",
      "type": "integer",
      "minimum": 1000,
      "maximum": 10000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "required": [
    "from"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_sales(status, order_ids, skip, limit)

List sales (orders) that are ReadyToShip (default) or Pending, or look up specific sales by order id (then status is ignored): items, kits, shipping and contact info, totals. Not paged by the vendor. Heavy throttling (5/min). POST /sales/getSales.

輸入結構描述

{
  "type": "object",
  "properties": {
    "status": {
      "description": "Sale status (default ReadyToShip).",
      "type": "string",
      "enum": [
        "ReadyToShip",
        "Pending"
      ]
    },
    "order_ids": {
      "description": "Specific order ids; overrides status.",
      "minItems": 1,
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      }
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_sales_by_date(from, to, date_field, page, page_size, ...)

Sales within a date range, by sale date or by last-modified date: items, kits, fulfillment/processed quantities, shipping, contact info and totals. The date range may span at most 7 days. The most common way to pull orders. Heavy throttling (5/min). POST /sales/getSalesByDate.

輸入結構描述

{
  "type": "object",
  "properties": {
    "from": {
      "type": "string",
      "description": "Start of the interval (inclusive)."
    },
    "to": {
      "type": "string",
      "description": "End of the interval (inclusive); at most 7 days after `from`."
    },
    "date_field": {
      "description": "Filter on the sale date (Sale) or on the last-modified date (Modified).",
      "type": "string",
      "enum": [
        "Sale",
        "Modified"
      ]
    },
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "page_size": {
      "description": "Vendor page size, 1000-10000 (default 1000).",
      "type": "integer",
      "minimum": 1000,
      "maximum": 10000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "required": [
    "from",
    "to"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_sold_items(from, to, include_transfer_sales, break_down_kits, page, ...)

Items sold in a date range: date, SKU, quantity and total price per line, optionally breaking kits into components and including transfer sales. The date range may span at most 14 days. Heavy throttling (5/min). POST /sales/getSoldItems.

輸入結構描述

{
  "type": "object",
  "properties": {
    "from": {
      "type": "string",
      "description": "Start date/time (UTC)."
    },
    "to": {
      "type": "string",
      "description": "End date/time (UTC); at most 14 days after `from`."
    },
    "include_transfer_sales": {
      "description": "Include transfer sales (SkuVault default true).",
      "type": "boolean"
    },
    "break_down_kits": {
      "description": "Show kit components instead of the kit (SkuVault default true).",
      "type": "boolean"
    },
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "required": [
    "from",
    "to"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_purchase_orders(status, po_numbers, modified_after, modified_before, include_products, ...)

List purchase orders with supplier, dates, status, payment status, costs and line items (SKU, quantity, received quantity). By default completed POs are left out: set status Completed to see them. Specific PO numbers override the date and status filters. 10,000 per page. Heavy throttling (5/min). POST /purchaseorders/getPOs.

輸入結構描述

{
  "type": "object",
  "properties": {
    "status": {
      "description": "PO status (default: everything except Completed).",
      "type": "string",
      "enum": [
        "NoneReceived",
        "PartiallyReceived",
        "Completed",
        "Cancelled"
      ]
    },
    "po_numbers": {
      "description": "Only these PO numbers; ignores dates and status.",
      "minItems": 1,
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      }
    },
    "modified_after": {
      "description": "Only POs modified at or after this time.",
      "type": "string"
    },
    "modified_before": {
      "description": "Only POs modified before this time.",
      "type": "string"
    },
    "include_products": {
      "description": "Also return incoming product details in a separate array.",
      "type": "boolean"
    },
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_po_receives(warehouse_codes, po_numbers, received_after, received_before, page, ...)

Purchase-order receiving history: what was received (SKU, quantity, location, user, dates) followed by quantity corrections. Filter by warehouse codes, PO numbers or received time. Heavy throttling (5/min). POST /purchaseorders/getReceivesHistory.

輸入結構描述

{
  "type": "object",
  "properties": {
    "warehouse_codes": {
      "description": "Only receives into these warehouse codes.",
      "minItems": 1,
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      }
    },
    "po_numbers": {
      "description": "Only receives for these PO numbers.",
      "minItems": 1,
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      }
    },
    "received_after": {
      "description": "Only receives after this time.",
      "type": "string"
    },
    "received_before": {
      "description": "Only receives before this time.",
      "type": "string"
    },
    "page": {
      "description": "Vendor page number, starting at 0 (default 0). Pass `next.page` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "page_size": {
      "description": "Vendor page size, 1000-10000 (default 1000).",
      "type": "integer",
      "minimum": 1000,
      "maximum": 10000
    },
    "skip": {
      "description": "Items to skip inside the vendor page (default 0). Pass `next.skip` from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "How many items to return from the vendor page, 1-500 (default 50). SkuVault pages hold 1,000-10,000 rows, so a window is shown.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢skuvault_list_integrations

List the enabled sales-channel accounts (Amazon, ChannelAdvisor, Shopify...): Id, LongId, Name and Type. Severe throttling (1/min). POST /integration/getIntegrations.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡skuvault_add_stock(sku, code, warehouse_id, location_code, quantity, ...)

WRITE: add quantity of a product to a warehouse location (a transaction in SkuVault's history; every call adds again, so do not retry blindly). The transaction reason must already exist in SkuVault. Serialized or lotted products need serial numbers / a scanned lot code. Moderate throttling (10/min). POST /inventory/addItem.

輸入結構描述

{
  "type": "object",
  "properties": {
    "sku": {
      "description": "Product SKU (give sku or code).",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "code": {
      "description": "Product code (give sku or code).",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "warehouse_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "SkuVault warehouse id (an integer; see skuvault_list_warehouses)."
    },
    "location_code": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Location the quantity is added to."
    },
    "quantity": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000000000,
      "description": "Quantity to add (a positive whole number)."
    },
    "reason": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Transaction reason; must already exist in SkuVault."
    },
    "note": {
      "description": "Transaction note.",
      "type": "string",
      "minLength": 1,
      "maxLength": 1000
    },
    "lot_code": {
      "description": "Lot number (ScannedCode); required when adding to a lotted product.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "serial_numbers": {
      "description": "Serial numbers, as many as the quantity; only for serialized products.",
      "minItems": 1,
      "maxItems": 10000,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      }
    }
  },
  "required": [
    "warehouse_id",
    "location_code",
    "quantity",
    "reason"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴skuvault_remove_stock(sku, code, warehouse_id, location_code, quantity, ...)

WRITE: remove quantity of a product from a warehouse location (a transaction in SkuVault's history; every call removes again, so do not retry blindly). The transaction reason must already exist in SkuVault. Serialized products need serial numbers. Moderate throttling (10/min). POST /inventory/removeItem.

輸入結構描述

{
  "type": "object",
  "properties": {
    "sku": {
      "description": "Product SKU (give sku or code).",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "code": {
      "description": "Product code (give sku or code).",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "warehouse_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "SkuVault warehouse id (an integer; see skuvault_list_warehouses)."
    },
    "location_code": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Location the quantity is removed from."
    },
    "quantity": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000000000,
      "description": "Quantity to remove (a positive whole number)."
    },
    "reason": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Transaction reason; must already exist in SkuVault."
    },
    "serial_numbers": {
      "description": "Serial numbers, as many as the quantity; only for serialized products.",
      "minItems": 1,
      "maxItems": 10000,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      }
    }
  },
  "required": [
    "warehouse_id",
    "location_code",
    "quantity",
    "reason"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴skuvault_set_stock_quantity(sku, code, warehouse_id, location_code, quantity)

WRITE: set the exact quantity of a product at one warehouse location, overwriting what is there (running it again with the same values changes nothing more). Use skuvault_get_inventory_by_location first to see the current quantity. Moderate throttling (10/min). POST /inventory/setItemQuantity.

輸入結構描述

{
  "type": "object",
  "properties": {
    "sku": {
      "description": "Product SKU (give sku or code).",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "code": {
      "description": "Product code (give sku or code).",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "warehouse_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "SkuVault warehouse id (an integer; see skuvault_list_warehouses)."
    },
    "location_code": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Location whose quantity is set."
    },
    "quantity": {
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000,
      "description": "The new quantity at that location (0 or more)."
    }
  },
  "required": [
    "warehouse_id",
    "location_code",
    "quantity"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本22 個工具