# BotBuy.tw (tw.botbuy/marketplace): tool descriptions scored

- tools/list taken: 2026-11-02 (UTC)
- From: [Official MCP Registry](https://registry.modelcontextprotocol.io/v0/servers/tw.botbuy%2Fmarketplace/versions/latest)
- Connected to: https://botbuy.tw/mcp
- Homepage: https://botbuy.tw/agents
- Repository: https://github.com/kevinsilver527/botbuy
- Scoring rules: v2
- Tools: 18
- Average: 27.7 / 100 (Rain)
- Near-identical pairs: 0

This page shows how BotBuy.tw (tw.botbuy/marketplace)'s tool descriptions scored, the issues found and the names of its tools and parameters. The descriptions are the server's own: read them where the copy came from.

Forecall asked the URL this server lists in the official MCP Registry for its tools/list once, on the date above, without calling any tool. The server may have changed since.

## Across the server

No server-wide issues.

## Tools

- `get_listing`: 20 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: listing_id.
  - Minor: String arguments with no constraint or example: listing_id.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: listing_id. Name the tool or the place that returns it, or models look it up first.
- `search_listings`: 22 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: q, min_price, max_price, location, sort, page.
  - Minor: String arguments with no constraint or example: q, location.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `update_listing`: 22 / 100
  - Major: The description is too short (3 words).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: title, price, floor_price, quantity, description, condition, location.
  - Minor: String arguments with no constraint or example: manage_url, title, description, condition, location.
  - Minor: Says nothing about what it returns.
- `send_deal_message`: 25 / 100
  - Major: The description is too short (1 word).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: deal_id, body.
  - Minor: String arguments with no constraint or example: deal_id, body, api_key.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: deal_id. Name the tool or the place that returns it, or models look it up first.
- `counter_offer`: 26 / 100
  - Major: The description is too short (1 word).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: deal_id, price, body.
  - Minor: String arguments with no constraint or example: deal_id, body, idempotency_key, api_key.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: deal_id. Name the tool or the place that returns it, or models look it up first.
- `create_listing`: 27 / 100
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: title, photos, description, condition, location, quantity.
  - Minor: String arguments with no constraint or example: title, description, condition, location, contact, idempotency_key, api_key.
  - Minor: Says nothing about what it returns.
- `deal_action`: 27 / 100
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: deal_id, action, reason.
  - Minor: String arguments with no constraint or example: deal_id, reason, body, api_key.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: deal_id. Name the tool or the place that returns it, or models look it up first.
- `add_listing_photos`: 28 / 100
  - Major: The description is too short (2 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: photos.
  - Minor: String arguments with no constraint or example: manage_url.
  - Minor: Says nothing about what it returns.
- `cancel_request`: 28 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: request_id.
  - Minor: String arguments with no constraint or example: request_id, api_key.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `get_deal`: 28 / 100
  - Major: The description is too short (2 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: deal_id.
  - Minor: String arguments with no constraint or example: deal_id, api_key.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: deal_id. Name the tool or the place that returns it, or models look it up first.
- `list_deals`: 28 / 100
  - Major: The description is too short (7 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: since.
  - Minor: String arguments with no constraint or example: since, api_key.
  - Minor: Says nothing about what it returns.
- `set_contact`: 28 / 100
  - Major: The description is too short (2 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: contact.
  - Minor: String arguments with no constraint or example: contact, api_key.
  - Minor: Says nothing about what it returns.
- `create_request`: 29 / 100
  - Major: The description is too short (1 word).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: max_price, location.
  - Minor: String arguments with no constraint or example: query, location, contact, api_key.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `listing_action`: 30 / 100
  - Major: The description is too short (5 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: action.
  - Minor: String arguments with no constraint or example: manage_url.
  - Minor: Says nothing about what it returns.
- `make_offer`: 30 / 100
  - Major: The description is too short (7 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: listing_id, price.
  - Minor: String arguments with no constraint or example: listing_id, body, contact, idempotency_key, api_key.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: listing_id. Name the tool or the place that returns it, or models look it up first.
- `buy_listing`: 31 / 100
  - Major: The description is too short (1 word).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: listing_id.
  - Minor: String arguments with no constraint or example: listing_id, contact, idempotency_key, api_key.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: listing_id. Name the tool or the place that returns it, or models look it up first.
- `list_my_listings`: 35 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: api_key.
  - Minor: Says nothing about what it returns.
- `list_requests`: 35 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: api_key.
  - Minor: Says nothing about what it returns.

Is your server listed here and you would rather it were not? Email support@forecall.dev, and we will take it off within 7 days.

[All scored servers](https://forecall.dev/en/servers)
