Home / MCP registry index / io.usefulapi/bsale

Bsale MCP by usefulapi

io.usefulapi/bsale in the official MCP registry. Endpoint https://bsale.usefulapi.io/mcp. Source: github.com/m190/usefulapi-mcp.

The registry describes it as: Read Bsale products, documents and stock; manage customers, prices, receipts and payments.

We read its 25 tools on 2026-10-31. Nothing in them matched our tool-poisoning rules. It also sets server instructions, text a client puts in front of the model on connect; those were read too.

A clean read means these rules found nothing, not that the server is harmless. A server can change its tools at any time, which is why the index reads it again every week.

Connect it

The endpoint answers MCP over HTTP; that is how we read it. Add it to your client:

Claude Code
claude mcp add --transport http bsale https://bsale.usefulapi.io/mcp
Cursor: ~/.cursor/mcp.json
{
  "mcpServers": {
    "bsale": {
      "url": "https://bsale.usefulapi.io/mcp"
    }
  }
}
VS Code
code --add-mcp '{"name":"bsale","type":"http","url":"https://bsale.usefulapi.io/mcp"}'

Some servers ask you to sign in the first time a client connects, or want a key from the people who run them; the server's own docs say which.

Let Claude Code check servers as it adds them

With the free lazaretto-guard plugin installed, when Claude Code adds a server for you or writes one into an MCP config, the plugin reads the server's tools first and asks you if one of our rules matches. Install it, restart Claude Code, then ask it to run the command above.

Install lazaretto-guard
claude plugin marketplace add jamesdfinance-dev/lazaretto-plugins
claude plugin install lazaretto-guard@lazaretto-plugins

Tools it advertises

bsale_list_documents bsale_get_document bsale_sales_summary bsale_list_returns bsale_list_document_types bsale_list_clients bsale_get_client bsale_client_unpaid_documents bsale_list_products bsale_get_product bsale_list_variants bsale_get_variant bsale_list_stocks bsale_list_price_lists bsale_list_price_list_details bsale_list_payments bsale_list_payment_types bsale_list_offices bsale_list_users bsale_user_sales_summary bsale_create_client bsale_update_client bsale_update_price bsale_create_stock_reception bsale_create_payment

Tool changes

We compare every full read of this server with the one before. No change in what its tools say has been seen since we started keeping this record on 2026-10-30.

Fingerprint of its tools at our last full read (2026-10-31): 147ac778006310c6. A client can hash the tools it is served the same way and compare; the full value and a hash per tool are in this page as JSON.

Run this server? Show the check in your README

The badge reflects the latest weekly read: MCP tool check badge

Markdown
[![MCP tool check](https://lazaretto.dev/mcp-registry/io-usefulapi-bsale/badge.svg)](https://lazaretto.dev/mcp-registry/io-usefulapi-bsale)

How this was checked

Lazaretto connects to the endpoint the way any MCP client does, asks the server to introduce itself and list its tools, and reads every name, description, parameter schema and server instruction for tool poisoning: hidden directive blocks, orders to read local secrets, parameters built to carry secrets or the conversation out, orders that redirect another server's tools, and invisible characters. It never calls a tool. What we found across the registry.

To run the same check every time Claude Code adds a server, install the free lazaretto-guard plugin. Browse every server in the index.

Related

Finance and markets MCP servers

The Stall
ai.intuitek.the-stall/the-stall
200 tools, nothing matched
2026-10-22
Simpler.Asia
asia.simpler/simpler-asia
200 tools, nothing matched
2026-10-26
Crypto, web, finance and app data tools
com.onrender.bess-x402/data-tools
184 tools, nothing matched
2026-10-31
x402 Services
ai.firmbrain/x402-services
159 tools, nothing matched
2026-10-21
EventTrader MCP
com.cymetica/event-trader-mcp
152 tools, nothing matched
2026-10-27
MORVS
io.github.morvs-ai/morvs
145 tools, nothing matched
2026-10-27