Skip to main content
Glama

Singapore Event Print & Merch Quotes

This connector has been deprecated

Renamed to Singapore Buying Desk. Replaced by https://glama.ai/mcp/connectors/com.connective-labs/sg-buying-desk.

Instant quote for office and IT supplies

quote_office_supplies
Read-onlyIdempotent

Current all-in SGD price (9% GST and Singapore delivery included) and ready-by date for office, IT and electronics supplies, single units welcome: cables and adapters (HDMI, DisplayPort, USB-C, VGA, network), USB hubs and docks, storage (flash drives, microSD/SD cards, SSDs, hard drives), peripherals (mice, keyboards, webcams, headsets, speakers), monitors, UPS units, networking (switches, routers), printers, ink and toner, label tapes, tools. Pass category, brand, model, specs, quantity and needed_by whenever you know them, plus the buyer's own words in item. Key specs by category: cables: connector at each end + length in metres; adapters: from + to connector; memory cards: card type (microSD/SD/CF) + capacity; flash drives: capacity + connector (USB-A/USB-C); SSD/HDD: capacity + internal or external; UPS: VA rating or model; ink and toner: printer brand + cartridge code (or printer model) + colour; mice/keyboards: model, or wired/wireless; monitors: size in inches; network switches: port count. Each option carries confidence: exact (model number matches), spec (category and every key spec given match) or similar (closest line, with the differences listed). If the request is too vague to price, the result has match 'needs_detail' and lists what to ask the buyer; ask, then call again. Never invent a price: if nothing matches, call request_quote with category office-it-supplies. Example input: {"item":"HDMI cable 5m","quantity":2}.

Input Schema

NameRequiredDescriptionDefault
itemNoThe buyer's own wording, e.g. 'HDMI cable 5m', 'microSD 128GB', 'Logitech M185', 'HP 206A cyan toner'. Kept for compatibility; structured fields below improve matching.
brandNoBrand, e.g. HP, Brother, Canon, Logitech, SanDisk, APC, Eaton, Ugreen.
modelNoModel number or cartridge code exactly as printed, e.g. 'M185', '206A', 'TN-2480', '5E700UI'. For ink or toner the printer model also works, e.g. 'M283fdw'.
specsNoKey specs you know. Use the fields that apply to the category; omit the rest.
categoryNoThe kind of item, which decides which price table and specs apply; leave it out if unsure. ink-toner covers ink, toner and ribbons; usb-hub covers hubs and docking stations; camera covers webcams.
quantityNoHow many units the buyer wants priced.
needed_byNoThe date the buyer must have the items in hand, in Singapore time. Each option then shows makes_deadline, meaning whether it arrives in time. If left out, options are listed without a deadline check.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • changedInput schema / properties / category / description
      Previous value: -"Item category if known. ink-toner covers ink, toner and ribbons; usb-hub covers hubs and docking stations; camera covers webcams."New value: +"The kind of item, which decides which price table and specs apply; leave it out if unsure. ink-toner covers ink, toner and ribbons; usb-hub covers hubs and docking stations; camera covers webcams."
    • changedInput schema / properties / needed_by / description
      Previous value: -"Deadline the items must be in hand, YYYY-MM-DD, Singapore time. Each option then shows makes_deadline."New value: +"The date the buyer must have the items in hand, in Singapore time. Each option then shows makes_deadline, meaning whether it arrives in time. If left out, options are listed without a deadline check."
    • addedInput schema / properties / needed_by / format
      Added value: +"date"
    • changedInput schema / properties / quantity / description
      Previous value: -"Number of units."New value: +"How many units the buyer wants priced."
  2. Changed8 schema fields changed
    • addedInput schema / properties / brand
      Added value: +{
      +  "description": "Brand, e.g. HP, Brother, Canon, Logitech, SanDisk, APC, Eaton, Ugreen.",
      +  "type": "string"
      +}
    • addedInput schema / properties / category
      Added value: +{
      +  "description": "Item category if known. ink-toner covers ink, toner and ribbons; usb-hub covers hubs and docking stations; camera covers webcams.",
      +  "enum": [
      +    "cable",
      +    "adapter",
      +    "usb-hub",
      +    "memory-card",
      +    "flash-drive",
      +    "ssd",
      +    "hdd",
      +    "card-reader",
      +    "ups",
      +    "ups-accessory",
      +    "ink-toner",
      +    "label-tape",
      +    "mouse",
      +    "keyboard",
      +    "keyboard-mouse",
      +    "mousepad",
      +    "monitor",
      +    "camera",
      +    "headset",
      +    "speaker",
      +    "printer",
      +    "network-switch",
      +    "router",
      +    "kvm",
      +    "av-switch",
      +    "power",
      +    "tool",
      +    "ram",
      +    "optical",
      +    "blocker",
      +    "projector"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / item / description
      Previous value: -"Brand and model number as the buyer wrote it, plus colour for ink or toner. Example: 'HP 415A black toner'."New value: +"The buyer's own wording, e.g. 'HDMI cable 5m', 'microSD 128GB', 'Logitech M185', 'HP 206A cyan toner'. Kept for compatibility; structured fields below improve matching."
    • addedInput schema / properties / model
      Added value: +{
      +  "description": "Model number or cartridge code exactly as printed, e.g. 'M185', '206A', 'TN-2480', '5E700UI'. For ink or toner the printer model also works, e.g. 'M283fdw'.",
      +  "type": "string"
      +}
    • changedInput schema / properties / needed_by / description
      Previous value: -"Optional deadline, YYYY-MM-DD, Singapore time."New value: +"Deadline the items must be in hand, YYYY-MM-DD, Singapore time. Each option then shows makes_deadline."
    • addedInput schema / properties / quantity / description
      Added value: +"Number of units."
    • addedInput schema / properties / specs
      Added value: +{
      +  "description": "Key specs you know. Use the fields that apply to the category; omit the rest.",
      +  "properties": {
      +    "capacity": {
      +      "description": "Storage capacity, e.g. '128GB', '2TB'.",
      +      "type": "string"
      +    },
      +    "card_type": {
      +      "description": "Memory card type.",
      +      "enum": [
      +        "microSD",
      +        "SD",
      +        "CF"
      +      ],
      +      "type": "string"
      +    },
      +    "colour": {
      +      "description": "Ink or toner colour: black, cyan, magenta, yellow.",
      +      "type": "string"
      +    },
      +    "connectors": {
      +      "description": "Connector at each end, e.g. ['HDMI','HDMI'], ['USB-C','USB-A'], ['RJ45']. For hubs and flash drives, the host connector.",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "interface": {
      +      "description": "Other interface detail, e.g. 'USB 3.0', 'Cat6', 'external', 'M.2 NVMe'.",
      +      "type": "string"
      +    },
      +    "length": {
      +      "description": "Cable length, e.g. '5m'.",
      +      "type": "string"
      +    },
      +    "ports": {
      +      "description": "Number of ports (hubs, switches).",
      +      "type": "integer"
      +    },
      +    "screen_size": {
      +      "description": "Monitor size, e.g. '24 inch'.",
      +      "type": "string"
      +    },
      +    "va_rating": {
      +      "description": "UPS rating, e.g. '1000VA' or '1.5kVA'.",
      +      "type": "string"
      +    },
      +    "wireless": {
      +      "description": "true for wireless, false for wired (mice, keyboards, headsets).",
      +      "type": "boolean"
      +    }
      +  },
      +  "type": "object"
      +}
    • removedInput schema / required
      Removed value: -[
      -  "item"
      -]
  3. Added

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations (readOnly, idempotent, non-destructive), the description discloses that prices are all-in SGD including 9% GST and Singapore delivery, that options carry confidence levels (exact/spec/similar), that vague requests return match 'needs_detail', and that the agent must never invent a price. These are meaningful behavioral traits an agent needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the purpose and price semantics, then spec guidance, then fallback, with an example at the end. It is long and dense, and repeats some category enumerations already present in the schema enum, but the length is largely justified by the tool's 31-category scope and nested specs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description still explains what the result includes: price, ready-by date, confidence, makes_deadline, and the needs_detail structure with what to ask the buyer. It also covers the no-match fallback, making it complete for an agent to call correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds real value by mapping key specs to categories (e.g., cables need connector at each end + length; UPS needs VA rating; ink/toner needs printer brand + cartridge code + colour). It also explains that item is the buyer's own words and that structured fields improve matching, going beyond the already-descriptive schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb-and-resource: 'Current all-in SGD price ... and ready-by date for office, IT and electronics supplies.' It immediately distinguishes this quoting tool from siblings like quote_list and quote_event_print by naming the exact product scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly tells the agent to pass known structured fields and the buyer's own wording, describes the 'needs_detail' flow for vague requests, and names the alternative tool request_quote with the exact category to use when nothing matches. This is clear when/when-not/alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.