Skip to main content
Glama

Supplement Check: A supplement's label, dose check and halal status

supplementcheck_get_supplement
Read-onlyIdempotent

Supplement Check. A supplement's label: amounts per serving, upper limit check, halal status and a buy link. For requests like "what's in Nature Made vitamin D3?", "is Centrum halal?", "how much melatonin is in OLLY Sleep?" or "is this supplement halal?" with a barcode. Give q (brand and product name) or barcode. Returns per-serving amounts, dose_check (each vitamin and mineral compared with the adult upper limit at the most the label suggests per day, with per_day_base amounts), other_checks (melatonin, caffeine, creatine, ashwagandha and similar, including when a blend hides the amount), halal (likely_halal, doubtful, not_halal or depends_on_school, with the ingredients that need a confirmed source), alternatives (other sizes or versions), an Amazon link, and halal_options (links to halal-certified or gelatine-free versions) when the halal answer is not likely_halal. For a general name like "creatine monohydrate" it reads one common label and says so. With country=GB, dose_check uses the NHS guidance where it sets one (upper_limit says NHS guidance). Salt forms such as magnesium glycinate are counted as the mineral they hold (estimated: true), and omega-3 is read from EPA and DHA, total omega-3, or estimated from the fish oil weight.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qNoBrand and product name, for example Nature Made vitamin D3 2000 IU.
idNoA label id from the NIH database, for example from alternatives.
barcodeNoUPC or EAN barcode digits (8 to 14).
countryNoUS, GB, IE, CA, AU. GB uses NHS guidance for the dose checks; also picks the buy link site. Default from the request.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds real behavioral context beyond that: estimation flags (estimated: true for salt forms), the NHS-guidance switch for GB, the 'reads one common label and says so' fallback for general names, and halal_options only appearing when the answer is not likely_halal.

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 example triggers are front-loaded, and the dense return-value enumeration is informative rather than filler. It is long and read as one block, which slightly hurts scannability, but every clause carries content.

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?

There is no output schema, so the description carries the return-value burden and does so well, enumerating dose_check, other_checks, halal, alternatives, links and halal_options. Minor gaps remain, e.g. it does not describe what happens for mixed/blend products beyond the amount-hiding case.

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 meaning beyond the schema: country=GB switches dose checks to NHS limits (upper_limit says NHS guidance) and also changes the buy-link site, and q is clarified as brand plus product name. id and barcode are left entirely to the 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?

States a specific verb+resource (read a supplement's label, dose check and halal status) and enumerates the exact outputs. It is clearly distinguishable from siblings like supplementcheck_check_dose, check_stack and get_nutrient because it is the per-product label lookup.

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?

Gives concrete example requests ("is Centrum halal?", barcode queries) and states the input rule: 'Give q (brand and product name) or barcode.' It also explains the general-name fallback. It does not, however, explicitly say when to prefer this over check_dose/check_stack/get_nutrient.

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.