Bsale MCP by usefulapi

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

Read Bsale products, documents and stock; manage customers, prices, receipts and payments.

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

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

概览

AI 生成的概览

将助手连接到 Bsale 的销售与开票数据:单据、客户、商品、库存、价格表和收款,并包含部分写入操作。

可以做什么
  • 列出并查看销售单据、退货单、单据类型,以及按月份、门店或销售员汇总的销售数据
  • 查询客户、客户联系方式和未付应收款
  • 浏览商品、规格(SKU)、各门店库存、价格表及其价格
  • 查看已收款项、支付方式、门店和用户
  • 创建或更新客户、修改价格表价格、登记入库、登记收款
  • 查看套餐用量并管理订阅
适用场景
当你使用 Bsale 账户,希望用自然语言询问销售、库存、价格或客户欠款情况,或想在不打开 Bsale 界面的情况下完成入库、收款等日常录入时适用。
运行要求
以远程 MCP 端点方式仅通过 URL 添加,客户端配置中不需要 API 密钥或 Authorization 头。登录使用 OAuth,登录页会要求填写 Bsale 凭据。需要 Bsale 企业账户。免费套餐每月 50 次工具调用,付费套餐可提高上限。
安装前请注意
有五个工具会写入 Bsale:创建和更新客户、修改价格表价格(影响后续销售计价)、登记入库、登记收款。入库和收款无法通过此 API 撤销,请先核对数量与金额。新建客户对该实例的所有用户可见。付费套餐通过付款链接计费,当期不退款。Bsale 凭据需在服务商的登录页输入。

安装

在 SourceWeft 中

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

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

交给智能体安装

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

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

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

其他 MCP 客户端

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

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

README

Bsale MCP by usefulapi

Read Bsale products, documents and stock; manage customers, prices, receipts and payments.

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://bsale.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http bsale https://bsale.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": {    "bsale": {      "url": "https://bsale.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 Bsale credentials.

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

Tools

ToolTypeWhat it does
bsale_list_documentsreadList documents (sales)
bsale_get_documentreadGet document
bsale_sales_summaryreadSales summary
bsale_list_returnsreadList returns
bsale_list_document_typesreadList document types
bsale_list_clientsreadList clients
bsale_get_clientreadGet client
bsale_client_unpaid_documentsreadClient unpaid documents
bsale_list_productsreadList products
bsale_get_productreadGet product
bsale_list_variantsreadList variants (SKUs)
bsale_get_variantreadGet variant
bsale_list_stocksreadList stock levels
bsale_list_price_listsreadList price lists
bsale_list_price_list_detailsreadList price list prices
bsale_list_paymentsreadList payments
bsale_list_payment_typesreadList payment types
bsale_list_officesreadList offices (branches)
bsale_list_usersreadList users (sellers)
bsale_user_sales_summaryreadSales by seller
bsale_create_clientwriteCreate client
bsale_update_clientwriteUpdate client
bsale_update_pricewriteUpdate price list price
bsale_create_stock_receptionwriteReceive stock
bsale_create_paymentwriteRecord payment
bsale_usage_statusmetaUsage status (free-tier meter)
bsale_request_featuremetaRequest a missing feature
bsale_upgrademetaUpgrade to Pro or Pro+
bsale_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 Bsale company and API host)$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 bsale_upgrade (it returns a Stripe Checkout link). Cancel any time with bsale_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running bsale_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT

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

工具

25

bsale_list_documents

List documents (sales)

List issued documents (boletas, facturas, notas de credito, guias...) newest-first as Bsale returns them, with number, dates, net/tax/total amounts, state, SII status and public PDF link. Filter by emission date range, document type, client, office, folio number or SII code. Use expand (details, payments, client, office, document_type) to embed related data. GET /v1/documents.json.

输入参数limitstateexpandnumberoffsetcode_siiclient_idoffice_idemitted_toclient_codeemitted_frominformed_sii另有 1 个

bsale_get_document

Get document

One document by id with its amounts, dates, state and links. Use expand=[details,payments,client,office,document_type,references,sellers] to include line items, payments and related records. GET /v1/documents/{id}.json.

输入参数expanddocument_id必填

bsale_sales_summary

Sales summary

Totals of sales documents (net, tax, total, count) by month, document type and office for a date range; set per_document to list each document instead. Good for 'how much did we sell in September?'. GET /v1/documents/summary.json.

输入参数limitoffsetcode_siiemitted_toemitted_fromper_document

bsale_list_returns

List returns

List returns (devoluciones) with date, motive, amounts and the credit note issued. Use expand=[reference_document,credit_note,details] for more. GET /v1/returns.json.

输入参数limitexpandoffset

bsale_list_document_types

List document types

List document types (boleta, factura, nota de credito, guia de despacho...) with their id and tax (SII) code. Use the id when filtering documents. GET /v1/document_types.json.

输入参数limitstateoffsetcode_sii

bsale_list_clients

List clients

List customers with name, tax id (code), email, phone, address, credit limit and loyalty points. Filter by tax id, name, last name or email. GET /v1/clients.json.

输入参数codeemaillimitstateexpandoffsetlast_namefirst_name

bsale_get_client

Get client

One customer by id. Use expand=[contacts,attributes,addresses] to include contacts and extra attributes. GET /v1/clients/{id}.json.

输入参数expandclient_id必填

bsale_client_unpaid_documents

Client unpaid documents

A client's receivables: overdue and upcoming debt, total owed, and the unpaid documents with amounts. Give client_id or client_code. GET /v1/clients/unpaid_documents.json.

输入参数as_ofclient_idclient_code

bsale_list_products

List products

List products and services (name, description, class, stock control, state). SKUs live on variants: see bsale_list_variants. GET /v1/products.json.

输入参数limitstateexpandoffsetclassificationproduct_type_id

bsale_get_product

Get product

One product by id; expand=[product_type] adds the type. GET /v1/products/{id}.json.

输入参数expandproduct_id必填

bsale_list_variants

List variants (SKUs)

List product variants, the sellable SKUs: description, SKU code, barcode, stock settings and product link. Search by SKU code, barcode, description or product id. GET /v1/variants.json.

输入参数codelimitstateexpandoffsetbarcodeproduct_iddescription

bsale_get_variant

Get variant

One variant (SKU) by id; expand=[product] embeds the product. GET /v1/variants/{id}.json.

输入参数expandvariant_id必填

bsale_list_stocks

List stock levels

Stock per variant and office: quantity, reserved and available. Filter by office, variant id, SKU code or barcode (for a pack give a variant filter plus office_id). expand=[variant,office] adds names. GET /v1/stocks.json.

输入参数codelimitexpandoffsetbarcodeoffice_idvariant_id

bsale_list_price_lists

List price lists

List price lists with name, currency and state. Use the id with bsale_list_price_list_details. GET /v1/price_lists.json.

输入参数limitexpandoffsetcoin_id

bsale_list_price_list_details

List price list prices

Prices in one price list: the net price (variantValue) and price with taxes per variant, plus the detail id needed to change a price. Filter by variant id, SKU code or barcode. GET /v1/price_lists/{id}/details.json.

输入参数codelimitexpandoffsetbarcodevariant_idprice_list_id必填

bsale_list_payments

List payments

List payments received (amount, date, payment type, document, office, user). Filter by payment date, document id, or document tax code plus folio number. GET /v1/payments.json.

输入参数limitexpandnumberoffsetpaid_oncode_siidocument_id

bsale_list_payment_types

List payment types

List payment methods (cash, card, transfer, credit...) with their id. The id is needed to record a payment. GET /v1/payment_types.json.

输入参数limitstateoffset

bsale_list_offices

List offices (branches)

List branches (sucursales) with name, address and cost center. Use the id for stock and document filters. GET /v1/offices.json.

输入参数limitstateoffset

bsale_list_users

List users (sellers)

List Bsale users (sellers/cashiers) with name and office. GET /v1/users.json.

输入参数limitstateexpandoffsetoffice_id

bsale_user_sales_summary

Sales by seller

Sales and tax subtotal per seller for a date range (default: today, UTC), or for one user. GET /v1/users/sales_summary.json.

输入参数tofromuser_id

bsale_create_client

Create client

WRITE: create a new customer in Bsale (it is visible to every user of the instance). Give at least a first name or a company. Bsale rejects a second client with the same tax id. POST /v1/clients.json.

输入参数citycodenoteemailphoneaddresscompanyactivitydistrictlast_namefirst_nameis_foreigner另有 1 个

bsale_update_client

Update client

WRITE: change fields of an existing customer; only the fields you pass are sent. This overwrites the stored values. PUT /v1/clients/{id}.json.

输入参数citycodenoteemailphoneaddresscompanyactivitydistrictclient_id必填last_namefirst_name另有 1 个

bsale_update_price

Update price list price

WRITE: set the net price (variantValue, without taxes) of one variant in a price list. This changes what Bsale charges on new sales using that list. Get detail_id from bsale_list_price_list_details. PUT /v1/price_lists/{id}/details/{detail_id}.json.

输入参数detail_id必填net_price必填price_list_id必填

bsale_create_stock_reception

Receive stock

WRITE: record a stock reception (ingreso de stock) that ADDS quantities to an office's inventory. Each line names the variant by id, SKU code or barcode, with quantity and unit cost. It changes stock levels and cost; Bsale has no undo through this API, so confirm the numbers first. POST /v1/stocks/receptions.json.

输入参数notedetails必填documentoffice_id必填document_number

bsale_create_payment

Record payment

WRITE: record a payment against an issued document (normally a credit sale that is still unpaid). It changes the document's receivable balance in the books and cannot be removed through this API. Check the amount with bsale_client_unpaid_documents first and get payment_type_id from bsale_list_payment_types. POST /v1/payments.json.

输入参数amount必填paid_ondocument_id必填payment_type_id必填

版本历史

10
  1. v1.7.4最新Nov 7, 2026
  2. v1.6.3Nov 5, 2026
  3. v1.6.2Nov 5, 2026
  4. v1.6.1Nov 4, 2026
  5. v1.6.0Nov 3, 2026
  6. v1.5.1Nov 3, 2026
  7. v1.4.0Nov 1, 2026
  8. v1.2.0Oct 31, 2026
  9. v1.1.0Oct 31, 2026
  10. v1.0.1Oct 31, 2026

评分

已满足适用检查项的 100%

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

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

其他 Usefulapi 集成