Skip to main content
Glama

Cutlab: CNC cutting, ships across Europe

Submit a request for quotation

submit_rfq

Send a request for quotation to Cutlab on behalf of a customer in Estonia or anywhere in Europe. Not an order. Requires the customer's e-mail (contact_email), a description of at least 20 characters and customer_consent_to_contact = true. Files: public https links in file_links, or upload them after this call to the upload_url from the result (give the link to the customer: a browser page with drag and drop; or send each file with PUT {upload_url}/{filename} and the raw file as the body). Up to 10 files, 50 MB each: DXF, DWG, STEP/STP, PDF, AI, SVG, CDR, F3D, STL, 3MF, JPG/JPEG, PNG; the link is valid 7 days. POST {upload_url}/done after the last file (optional): notifies Cutlab at once; without it the notification is sent automatically about 2 minutes after the last file. Cutlab replies to the customer by e-mail, usually within 1–2 working days. Limit: 10 requests per day per IP.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "contact_email": "<contact_email>",
      "description": "<description>",
      "customer_consent_to_contact": "<customer_consent_to_contact>"
    },
    "name": "submit_rfq"
  }
}

Input Schema

NameRequiredDescriptionDefault
agentNo
partsNo
companyNo
countryNoCustomer country, ISO 3166-1 alpha-2, for example DK; customers from any country can send a request
deadlineNo
languageNo
materialNo
quantityNo
file_linksNoPublic https links to drawings or models. To send files without a public link, upload them to the upload_url returned in the response.
descriptionYes
contact_nameNo
contact_emailYesCustomer e-mail for confirmation (required)
customer_typeNo
idempotency_keyNoOptional key that makes a retry safe: the same key never creates a second request
customer_consent_to_contactYesThe customer agrees to be contacted by e-mail about this request

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / country / description
      Added value: +"Customer country, ISO 3166-1 alpha-2, for example DK; customers from any country can send a request"
  2. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Goes well beyond the annotations: discloses the rate limit, the two-step upload flow with a 7-day link validity, the 10-file/50 MB/file-type constraints, the optional /done notification and its ~2-minute fallback, and the 1–2 working day e-mail reply channel. This is exactly the operational context the openWorldHint/readOnlyHint flags cannot convey.

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?

Purpose and the order/not-an-order distinction are front-loaded, and nearly every clause carries actionable detail. The upload mechanics paragraph is long and would read better broken into steps, but no sentence is pure filler.

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

Completeness4/5

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

For a mutation tool with 15 parameters and no output schema, it covers prerequisites, limits, file handling, the meaning of the returned upload_url, and how the customer is contacted. Residual gaps are the undocumented optional fields (parts, quantity, idempotency_key) and any auth expectations for calling Cutlab.

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

Parameters3/5

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

Schema description coverage is only 33% across 15 parameters, and the description compensates for only a few: contact_email, the 20-char description minimum, the consent constant, and file_links vs. upload_url. The remaining parameters (agent, parts, quantity, material, deadline, language, customer_type, country, idempotency_key) get no added meaning in the description, so the gap is only partly closed.

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?

Names a specific verb and resource ("Send a request for quotation to Cutlab") plus the audience (customer in Estonia or Europe) and pre-empts the most likely confusion with "Not an order." An agent can tell this apart from a quoting/estimation tool without opening the schema.

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

Usage Guidelines4/5

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

States clear preconditions (contact_email, description of at least 20 chars, customer_consent_to_contact = true) and an exclusion ("Not an order"), plus the 10-requests-per-day-per-IP limit. It does not name a sibling alternative such as estimate_quote for a price estimate, so the routing guidance is implicit rather than explicit.

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.

Resources