Sapo MCP by usefulapi

io.usefulapi由 usefulapi.io 发布官方发布者v1.14.4更新于 Nov 7, 2026

Read Sapo store products, orders, customers and stock levels; edit order notes and stock.

发布方自己的服务:Ably MCP by usefulapi

已验证Streamable HTTP可网页运行数据与分析商业与电商

概览

AI 生成的概览

面向 Sapo 商店的托管 MCP 服务器:让助手读取商品、订单、客户和库存,并可修改订单备注/标签和库存数量。

可以做什么
  • 读取商店设置、商品、变体与手动分类
  • 列出、统计并获取订单,含订单行、交易、付款与履约状态
  • 列出、统计并获取客户,含联系方式、订单数与消费总额
  • 查看门店/仓库、库存项目及各地点库存水平,以及折扣价格规则
  • 写入订单备注与标签,并按原因设定精确的现有库存
  • 查看当月用量、提交功能请求、升级或取消付费方案
适用场景
适合经营 Sapo 商店、希望用自然语言查询销售、未付款订单、低库存或客户消费情况,或在不打开后台的情况下小幅修正订单备注和库存数量的场景。
运行要求
需将 sapo.usefulapi.io/mcp 作为远程 MCP 服务器地址添加;客户端配置中不要填 API key 或 Authorization 头。登录通过 OAuth 完成,登录页会要求输入 Sapo 账号凭据。免费方案每月 50 次工具调用,付费方案可提高上限。
安装前请注意
有两个写入工具:sapo_update_order 会替换现有备注或标签,sapo_set_inventory_level 会以库存调整方式覆盖现有库存数量,应先读取并与用户确认。服务器通过自己的 OAuth 页面处理 Sapo 登录。付费方案需付费,通过 Stripe 结账链接订阅;取消后当期不退款。用量按工具调用次数计费。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Sapo MCP by usefulapi,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.usefulapi%2Fsapo/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "sapo-by-usefulapi": {
      "type": "http",
      "url": "https://sapo.usefulapi.io/mcp"
    }
  }
}

README

Sapo MCP by usefulapi

Live endpoint: https://sapo.usefulapi.io/mcp · Homepage: https://usefulapi.io/sapo

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://sapo.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http sapo https://sapo.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "sapo": {      "url": "https://sapo.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your Sapo credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/sapo/

Tools

ToolTypeWhat it does
sapo_get_storereadGet store
sapo_list_productsreadList products
sapo_count_productsreadCount products
sapo_get_productreadGet product
sapo_list_product_variantsreadList product variants
sapo_get_product_variantreadGet product variant
sapo_list_custom_collectionsreadList collections
sapo_list_ordersreadList orders
sapo_count_ordersreadCount orders
sapo_get_orderreadGet order
sapo_list_order_transactionsreadList order transactions
sapo_list_customersreadList customers
sapo_count_customersreadCount customers
sapo_get_customerreadGet customer
sapo_list_locationsreadList locations
sapo_list_inventory_itemsreadList inventory items
sapo_list_inventory_levelsreadList inventory levels
sapo_list_price_rulesreadList price rules
sapo_update_orderwriteUpdate order note or tags
sapo_set_inventory_levelwriteSet stock quantity
sapo_usage_statusmetaUsage status (free-tier meter)
sapo_request_featuremetaRequest a missing feature
sapo_upgrademetaUpgrade to Pro or Pro+
sapo_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro (per store)$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with sapo_upgrade (it returns a Stripe Checkout link). Cancel any time with sapo_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running sapo_upgrade before then undoes the cancel. Or write to [email protected].

License

来源:servers/sapo/README.md,提交 4046075

工具

20

sapo_get_store

Get store

The Sapo store this login belongs to: name, domain, currency, timezone, plan and other settings. GET /admin/store.json.

无需输入参数。

sapo_list_products

List products

List products with their variants, prices, SKUs and images. Filter by name, vendor, type, collection or created/modified dates. Paged: pass next_page as page. GET /admin/products.json.

输入参数idspagelimitqueryvendorsince_idproduct_typecollection_idcreated_on_maxcreated_on_minmodified_on_maxmodified_on_min

sapo_count_products

Count products

Number of products matching the filters. GET /admin/products/count.json.

输入参数vendorproduct_typecollection_idcreated_on_maxcreated_on_min

sapo_get_product

Get product

One product by id, with variants and images. GET /admin/products/{id}.json.

输入参数product_id必填

sapo_list_product_variants

List product variants

The variants (size, color, SKU, barcode, price) of one product. Paged. GET /admin/products/{product_id}/variants.json.

输入参数pagelimitproduct_id必填

sapo_get_product_variant

Get product variant

One product variant by id. GET /admin/variants/{id}.json.

输入参数variant_id必填

sapo_list_custom_collections

List collections

List manual product collections (danh mục thủ công). Paged. GET /admin/custom_collections.json.

输入参数namepagelimitproduct_id

sapo_list_orders

List orders

List orders with line items, customer, totals, payment and fulfillment status. Filter by status, tag, customer or dates. Paged: pass next_page as page. GET /admin/orders.json.

输入参数tagpagelimitquerystatuscustomer_idcreated_on_maxcreated_on_minmodified_on_maxmodified_on_minfinancial_statusfulfillment_status

sapo_count_orders

Count orders

Number of orders matching the filters. GET /admin/orders/count.json.

输入参数statuscreated_on_maxcreated_on_minmodified_on_maxmodified_on_minfinancial_statusfulfillment_status

sapo_get_order

Get order

One order by id with line items, addresses, discounts, payment and shipping. GET /admin/orders/{id}.json.

输入参数order_id必填

sapo_list_order_transactions

List order transactions

The payment transactions recorded on one order. GET /admin/orders/{order_id}/transactions.json.

输入参数order_id必填

sapo_list_customers

List customers

List customers with contact details, addresses, order count and total spent. Paged. GET /admin/customers.json.

输入参数pagelimitsince_idcreated_on_maxcreated_on_minmodified_on_maxmodified_on_min

sapo_count_customers

Count customers

Total number of customers. GET /admin/customers/count.json.

无需输入参数。

sapo_get_customer

Get customer

One customer by id. GET /admin/customers/{id}.json.

输入参数customer_id必填

sapo_list_locations

List locations

List branches, stores and warehouses (id, name, address, whether they track stock). Use the ids for stock levels. Paged. GET /admin/locations.json.

输入参数pagelimitquerystatus

sapo_list_inventory_items

List inventory items

List inventory items (one per variant) by SKU/barcode search, variant or product ids. The id is what stock levels use as inventory_item_id. Paged. GET /admin/inventory_items.json.

输入参数idspagelimitqueryproduct_idsvariant_ids

sapo_list_inventory_levels

List inventory levels

Stock per item and location: on_hand, available, committed, incoming, reserved. Filter by inventory item or location ids, or by a minimum/maximum available quantity. Sapo documents no paging for this list, so narrow it with ids. GET /admin/inventory_levels.json.

输入参数location_idsavailable_maxavailable_mininventory_item_ids

sapo_list_price_rules

List price rules

List discount price rules (percentage, fixed amount, fixed price) with validity dates and usage counts. Paged. GET /admin/price_rules.json.

输入参数pagelimittimes_usedends_on_maxends_on_minstarts_on_maxstarts_on_mincreated_on_maxcreated_on_min

sapo_update_order

Update order note or tags

WRITE: set the note and/or the tags of an order (Sapo only lets an order's items and quantities stay fixed after creation). The value REPLACES the existing note or tags: read the order first to keep what is there. PUT /admin/orders/{id}.json.

输入参数notetagsorder_id必填

sapo_set_inventory_level

Set stock quantity

WRITE: set the physical stock (on_hand) of one inventory item at one location to an exact quantity, with a reason. This OVERWRITES the current number and is recorded as a stock adjustment: read the level first (sapo_list_inventory_levels). PUT /admin/inventory_levels/set.json.

输入参数reasonon_hand必填location_id必填inventory_item_id必填

版本历史

12
  1. v1.14.4最新Nov 7, 2026
  2. v1.13.3Nov 5, 2026
  3. v1.13.2Nov 5, 2026
  4. v1.13.1Nov 4, 2026
  5. v1.13.0Nov 3, 2026
  6. v1.12.1Nov 3, 2026
  7. v1.11.0Nov 1, 2026
  8. v1.9.0Oct 31, 2026
  9. v1.8.0Oct 31, 2026
  10. v1.7.2Oct 30, 2026
  11. v1.7.0Oct 30, 2026
  12. v1.2.0Oct 26, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Usefulapi 集成