Skip to main content
Glama

Craft Quantities: construction material calculators

Translate or match a trade word between markets

translate_term
Read-onlyIdempotent

Says one building-trade word in US, Canadian, UK and Australian usage, such as plasterboard (drywall in the US) or skirting (baseboard): each market's word, how close each is, false-friend warnings, unit traps such as US and imperial gallons or short and metric tons with their conversions, and the market's document family. Brand names, plurals and misspellings match too.

Input Schema

NameRequiredDescriptionDefault
toNoThe market to say it in.
fromNoThe market whose word it is, where known.
termYesA trade word or phrase as one market says it, a brand name said for the product, or a misspelling: "plasterboard", "gyprock", "casing", "skirting", "eavestrough", "a yard of concrete".
detailNofull (the default): the whole answer. summary: the result lines, the citation line and the page only — fewer tokens to read.full

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / term / description
      Previous value: -"A trade word or phrase as one market says it: \"plasterboard\", \"casing\", \"skirting\", \"eavestrough\"."New value: +"A trade word or phrase as one market says it, a brand name said for the product, or a misspelling: \"plasterboard\", \"gyprock\", \"casing\", \"skirting\", \"eavestrough\", \"a yard of concrete\"."
    • changedOutput schema / anyOf
      Previous value: -[
      -  {
      -    "properties": {
      -      "citation": {
      -        "properties": {
      -          "accessDate": {
      -            "anyOf": [
      -              {
      -                "type": "string"
      -              },
      -              {
      -                "type": "null"
      -              }
      -            ]
      -          },
      -          "author": {
      -            "type": "string"
      -          },
      -          "formats": {
      -            "properties": {
      -              "apa": {
      -                "type": "string"
      -              },
      -              "bibtex": {
      -                "type": "string"
      -              },
      -              "harvard": {
      -                "type": "string"
      -              },
      -              "plain": {
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "plain",
      -              "apa",
      -              "harvard",
      -              "bibtex"
      -            ],
      -            "type": "object"
      -          },
      -          "sourcesChecked": {
      -            "anyOf": [
      -              {
      -                "type": "string"
      -              },
      -              {
      -                "type": "null"
      -              }
      -            ]
      -          },
      -          "title": {
      -            "type": "string"
      -          },
      -          "url": {
      -            "type": "string"
      -          },
      -          "version": {
      -            "anyOf": [
      -              {
      -                "type": "string"
      -              },
      -              {
      -                "type": "null"
      -              }
      -            ]
      -          }
      -        },
      -        "required": [
      -          "author",
      -          "title",
      -          "url",
      -          "formats",
      -          "accessDate"
      -        ],
      -        "type": "object"
      -      },
      -      "concepts": {
      -        "items": {
      -          "properties": {
      -            "calculators": {
      -              "type": "array"
      -            },
      -            "concept": {
      -              "type": "string"
      -            },
      -            "confusions": {
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "definition": {
      -              "type": "string"
      -            },
      -            "matchedAs": {
      -              "items": {
      -                "required": [
      -                  "market",
      -                  "as"
      -                ],
      -                "type": "object"
      -              },
      -              "type": "array"
      -            },
      -            "names": {
      -              "items": {
      -                "properties": {
      -                  "alsoCalled": {
      -                    "items": {
      -                      "type": "string"
      -                    },
      -                    "type": "array"
      -                  },
      -                  "exactness": {
      -                    "enum": [
      -                      "identical",
      -                      "close",
      -                      "false-friend",
      -                      "absent"
      -                    ]
      -                  },
      -                  "market": {
      -                    "type": "string"
      -                  },
      -                  "note": {
      -                    "anyOf": [
      -                      {
      -                        "type": "string"
      -                      },
      -                      {
      -                        "type": "null"
      -                      }
      -                    ]
      -                  },
      -                  "term": {
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "market",
      -                  "term",
      -                  "alsoCalled",
      -                  "exactness",
      -                  "note"
      -                ],
      -                "type": "object"
      -              },
      -              "type": "array"
      -            },
      -            "slug": {
      -              "type": "string"
      -            },
      -            "translation": {
      -              "type": "object"
      -            },
      -            "url": {
      -              "type": "string"
      -            },
      -            "warnings": {
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": "array"
      -            }
      -          },
      -          "required": [
      -            "slug",
      -            "concept",
      -            "url",
      -            "definition",
      -            "matchedAs",
      -            "names",
      -            "warnings",
      -            "calculators",
      -            "confusions"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "engine": {
      -        "type": "object"
      -      },
      -      "from": {
      -        "type": "string"
      -      },
      -      "licence": {
      -        "properties": {
      -          "attribution": {
      -            "type": "string"
      -          },
      -          "name": {
      -            "type": "string"
      -          },
      -          "url": {
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "name",
      -          "url",
      -          "attribution"
      -        ],
      -        "type": "object"
      -      },
      -      "links": {
      -        "required": [
      -          "glossary"
      -        ],
      -        "type": "object"
      -      },
      -      "matchedBy": {
      -        "enum": [
      -          "term",
      -          "search"
      -        ]
      -      },
      -      "none": {
      -        "type": "string"
      -      },
      -      "note": {
      -        "type": "string"
      -      },
      -      "term": {
      -        "type": "string"
      -      },
      -      "to": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "engine",
      -      "term",
      -      "matchedBy",
      -      "concepts",
      -      "links",
      -      "citation",
      -      "licence"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "properties": {
      -      "citation": {
      -        "description": "The one citation line, built from the answer's own data.",
      -        "type": "string"
      -      },
      -      "detail": {
      -        "const": "summary"
      -      },
      -      "lines": {
      -        "description": "The result lines, as the report's table gives them.",
      -        "items": {
      -          "additionalProperties": {
      -            "type": "string"
      -          },
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "more": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "notes": {
      -        "description": "What a professional must decide, when to call one, a false-friend warning, that adoption is local: kept in every summary.",
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "open": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "title": {
      -        "type": "string"
      -      },
      -      "tool": {
      -        "type": "string"
      -      },
      -      "url": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      }
      -    },
      -    "required": [
      -      "detail",
      -      "tool",
      -      "title",
      -      "lines",
      -      "notes",
      -      "citation",
      -      "url",
      -      "open",
      -      "more"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "properties": {
      +      "citation": {
      +        "properties": {
      +          "accessDate": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "author": {
      +            "type": "string"
      +          },
      +          "formats": {
      +            "properties": {
      +              "apa": {
      +                "type": "string"
      +              },
      +              "bibtex": {
      +                "type": "string"
      +              },
      +              "harvard": {
      +                "type": "string"
      +              },
      +              "plain": {
      +                "type": "string"
      +              }
      +            },
      +            "required": [
      +              "plain",
      +              "apa",
      +              "harvard",
      +              "bibtex"
      +            ],
      +            "type": "object"
      +          },
      +          "sourcesChecked": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "type": "string"
      +          },
      +          "version": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          }
      +        },
      +        "required": [
      +          "author",
      +          "title",
      +          "url",
      +          "formats",
      +          "accessDate"
      +        ],
      +        "type": "object"
      +      },
      +      "concepts": {
      +        "items": {
      +          "properties": {
      +            "calculators": {
      +              "type": "array"
      +            },
      +            "concept": {
      +              "type": "string"
      +            },
      +            "confusions": {
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "definition": {
      +              "type": "string"
      +            },
      +            "matchedAs": {
      +              "items": {
      +                "required": [
      +                  "market",
      +                  "as"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "names": {
      +              "items": {
      +                "properties": {
      +                  "alsoCalled": {
      +                    "items": {
      +                      "type": "string"
      +                    },
      +                    "type": "array"
      +                  },
      +                  "exactness": {
      +                    "enum": [
      +                      "identical",
      +                      "close",
      +                      "false-friend",
      +                      "absent"
      +                    ]
      +                  },
      +                  "market": {
      +                    "type": "string"
      +                  },
      +                  "note": {
      +                    "anyOf": [
      +                      {
      +                        "type": "string"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ]
      +                  },
      +                  "term": {
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "market",
      +                  "term",
      +                  "alsoCalled",
      +                  "exactness",
      +                  "note"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "slug": {
      +              "type": "string"
      +            },
      +            "translation": {
      +              "type": "object"
      +            },
      +            "url": {
      +              "type": "string"
      +            },
      +            "warnings": {
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "slug",
      +            "concept",
      +            "url",
      +            "definition",
      +            "matchedAs",
      +            "names",
      +            "warnings",
      +            "calculators",
      +            "confusions"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "documents": {
      +        "description": "The family of documents that governs the concept's subject in the named market. No edition, and no claim that it matches another market's document.",
      +        "properties": {
      +          "adoption": {
      +            "type": "string"
      +          },
      +          "decidedBy": {
      +            "type": "string"
      +          },
      +          "for": {
      +            "description": "The calculator whose sources, or the document the glossary names for the concept, the subject was read from.",
      +            "type": "string"
      +          },
      +          "market": {
      +            "type": "string"
      +          },
      +          "page": {
      +            "type": "string"
      +          },
      +          "place": {
      +            "type": "string"
      +          },
      +          "subjects": {
      +            "items": {
      +              "properties": {
      +                "documents": {
      +                  "items": {
      +                    "type": "string"
      +                  },
      +                  "type": "array"
      +                },
      +                "subject": {
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "subject",
      +                "documents"
      +              ],
      +              "type": "object"
      +            },
      +            "type": "array"
      +          }
      +        },
      +        "required": [
      +          "market",
      +          "place",
      +          "subjects",
      +          "adoption",
      +          "decidedBy",
      +          "page"
      +        ],
      +        "type": "object"
      +      },
      +      "engine": {
      +        "type": "object"
      +      },
      +      "from": {
      +        "type": "string"
      +      },
      +      "licence": {
      +        "properties": {
      +          "attribution": {
      +            "type": "string"
      +          },
      +          "name": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "name",
      +          "url",
      +          "attribution"
      +        ],
      +        "type": "object"
      +      },
      +      "links": {
      +        "required": [
      +          "glossary"
      +        ],
      +        "type": "object"
      +      },
      +      "matched": {
      +        "items": {
      +          "properties": {
      +            "as": {
      +              "enum": [
      +                "term",
      +                "also called"
      +              ]
      +            },
      +            "concept": {
      +              "type": "string"
      +            },
      +            "market": {
      +              "type": "string"
      +            },
      +            "name": {
      +              "description": "The glossary's own name that matched.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "concept",
      +            "name",
      +            "market",
      +            "as"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "matchedBy": {
      +        "description": "How the word was matched: a glossary name exactly; the same name spaced, hyphenated or plural; a phrase holding a name; a misspelling of one name; or the site's ranking of the definitions.",
      +        "enum": [
      +          "term",
      +          "variant",
      +          "within",
      +          "fuzzy",
      +          "search"
      +        ]
      +      },
      +      "none": {
      +        "type": "string"
      +      },
      +      "note": {
      +        "type": "string"
      +      },
      +      "readAs": {
      +        "type": "string"
      +      },
      +      "term": {
      +        "type": "string"
      +      },
      +      "to": {
      +        "type": "string"
      +      },
      +      "unitSystems": {
      +        "description": "Each named market's primary measurement system, as the site's market registry holds it.",
      +        "items": {
      +          "properties": {
      +            "market": {
      +              "type": "string"
      +            },
      +            "system": {
      +              "enum": [
      +                "metric",
      +                "imperial"
      +              ]
      +            }
      +          },
      +          "required": [
      +            "market",
      +            "system"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "unitTraps": {
      +        "items": {
      +          "properties": {
      +            "bags": {
      +              "items": {
      +                "properties": {
      +                  "calculator": {
      +                    "type": "object"
      +                  },
      +                  "imperial": {
      +                    "items": {
      +                      "type": "string"
      +                    },
      +                    "type": "array"
      +                  },
      +                  "input": {
      +                    "type": "string"
      +                  },
      +                  "metric": {
      +                    "items": {
      +                      "type": "string"
      +                    },
      +                    "type": "array"
      +                  }
      +                },
      +                "required": [
      +                  "calculator",
      +                  "input",
      +                  "metric",
      +                  "imperial"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "conversions": {
      +              "items": {
      +                "properties": {
      +                  "by": {
      +                    "description": "The engine's unit conversion that gave the result.",
      +                    "type": "string"
      +                  },
      +                  "definition": {
      +                    "description": "The defining relation, where one side is not a unit of the conversion table.",
      +                    "type": "string"
      +                  },
      +                  "factor": {
      +                    "anyOf": [
      +                      {
      +                        "type": "number"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ]
      +                  },
      +                  "from": {
      +                    "type": "string"
      +                  },
      +                  "result": {
      +                    "type": "number"
      +                  },
      +                  "to": {
      +                    "type": "string"
      +                  },
      +                  "value": {
      +                    "type": "number"
      +                  }
      +                },
      +                "required": [
      +                  "value",
      +                  "from",
      +                  "to",
      +                  "result",
      +                  "by"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "id": {
      +              "type": "string"
      +            },
      +            "markets": {
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "page": {
      +              "type": "string"
      +            },
      +            "says": {
      +              "type": "string"
      +            },
      +            "title": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "id",
      +            "title",
      +            "says",
      +            "markets",
      +            "conversions",
      +            "page"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "engine",
      +      "term",
      +      "matchedBy",
      +      "concepts",
      +      "links",
      +      "citation",
      +      "licence"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "properties": {
      +      "citation": {
      +        "description": "The one citation line, built from the answer's own data.",
      +        "type": "string"
      +      },
      +      "detail": {
      +        "const": "summary"
      +      },
      +      "lines": {
      +        "description": "The result lines, as the report's table gives them.",
      +        "items": {
      +          "additionalProperties": {
      +            "type": "string"
      +          },
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "more": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "notes": {
      +        "description": "What a professional must decide, when to call one, a false-friend warning, that adoption is local: kept in every summary.",
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "open": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "title": {
      +        "type": "string"
      +      },
      +      "tool": {
      +        "type": "string"
      +      },
      +      "url": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      }
      +    },
      +    "required": [
      +      "detail",
      +      "tool",
      +      "title",
      +      "lines",
      +      "notes",
      +      "citation",
      +      "url",
      +      "open",
      +      "more"
      +    ],
      +    "type": "object"
      +  }
      +]
  2. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare this a safe, read-only, idempotent operation, so the safety burden is covered. The description adds genuinely useful behavioral detail beyond that: it returns each market's word, a closeness rating, false-friend warnings, unit-trap conversions, and a document family, and it discloses that brand names, plurals and misspellings are matched — none of which the annotations 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?

A single dense sentence front-loads the core purpose and then enumerates the returned facets, so nothing is buried. It is a touch overpacked with examples and unit-trap detail, but every clause contributes.

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?

With annotations covering safety and an output schema covering the return shape, the description only needs to frame scope and behavior, which it does thoroughly (markets covered, matching tolerance, unit traps, document family). Nothing essential to calling it correctly is missing, though explicit sibling routing would make it complete.

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 100%, so the baseline is 3. The description's example terms ('plasterboard', 'gyprock', 'a yard of concrete') loosely illustrate the term parameter, but it adds no syntax, format, or constraint meaning beyond what the schema already documents for from/to/detail.

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

Purpose4/5

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

The description names a specific verb (translate/says) and resource (a building-trade word) and illustrates it with concrete examples (plasterboard/drywall, skirting/baseboard), making the tool's function unmistakable. It implicitly separates itself from convert_units by focusing on words rather than quantities, but never names a sibling, so it stops short of a 5.

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

Usage Guidelines3/5

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

Usage is implied by the examples and the 'such as' framing, so an agent can infer when the tool applies. However, there is no explicit when-to-use/when-not guidance and no pointer to alternatives like convert_units for pure unit conversions, leaving routing to inference.

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