Skip to main content
Glama
Canada's Food Guide MCP Server

Canada's Food Guide MCP Server

Get Macronutrient Dri Tables

get_macronutrient_dri_tables

Retrieve Health Canada's official DRI macronutrient reference tables for nutrition analysis, meal planning, and dietary assessments, including AMDRs, fibre, water, and footnotes.

Instructions

Get complete DRI macronutrient reference tables from Health Canada.

REMEMBER! ALWAYS USE THIS TOOL BY DEFULT BEFORE USING get_specific_macronutrient_dri!!

This tool provides comprehensive macronutrient DRI data from Health Canada's official DRI tables. Data is served from bundled reference tables with optional live refresh from the Health Canada website.

The data includes:

  • Reference values for carbohydrate, protein, fat, essential fatty acids, fibre, water

  • Additional recommendations for saturated fats, trans fats, cholesterol, added sugars

  • Amino acid patterns for protein quality evaluation (PDCAAS)

  • Acceptable Macronutrient Distribution Ranges (AMDRs) by age group

  • Complete footnotes and explanatory notes from official tables

Use this tool when:

  • Setting up comprehensive nutrition analysis systems

  • Building meal planning applications with DRI compliance

  • Research requiring official Health Canada reference values

  • Developing nutrition education materials

  • Creating nutrition assessment tools

Data is served from local files (a data-dir snapshot if one was built, otherwise the bundled snapshot). No network access happens at tool-call time; run foodguide data build dri to refresh the local snapshot.

Input Schema

NameRequiredDescriptionDefault
force_refreshNoIf True, attempt to fetch fresh data from website

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.0.0

TDQS

A4.2/5.0
Behavior4/5

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

No annotations are supplied, so the description carries the full burden and does well: it discloses data provenance (Health Canada official tables, bundled snapshot), that no network access occurs at call time, and which command refreshes the snapshot. It stops short of describing failure modes (e.g. what happens if force_refresh is true and the site is unreachable), which keeps it from a 5.

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

Conciseness3/5

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

The purpose and the sibling routing rule are front-loaded, which is good, but the body is padded: the five-bullet 'Use this tool when' list is generic marketing prose that overlaps with the purpose statement, and the data-contents list partly restates what the output schema already provides. The shouty, misspelled 'REMEMBER! ALWAYS USE THIS TOOL BY DEFULT' also costs polish.

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 zero-required-parameter reference-table fetch with an output schema, the description covers provenance, refresh behavior, and sibling routing — enough for an agent to call it correctly. Only error/failure behavior on force_refresh is left unaddressed.

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 coverage is 100% for the single force_refresh parameter, so the baseline is 3. The description does add context around it by explaining that no network access happens at call time and that `foodguide data build dri` refreshes the snapshot, but it never states the trade-off of setting force_refresh=true (latency, failure risk), so the added meaning is modest.

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 opening states a specific verb and resource — 'Get complete DRI macronutrient reference tables from Health Canada' — and immediately contrasts itself with the sibling get_specific_macronutrient_dri. An agent can distinguish it from the specific-value sibling and from get_amdrs/get_amino_acid_patterns without consulting any schema.

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?

The description gives an explicit default-use rule ('ALWAYS USE THIS TOOL BY DEFAULT BEFORE USING get_specific_macronutrient_dri') plus a concrete 'Use this tool when:' list of scenarios. It names the alternative and the condition that selects it, which is exactly the routing guidance an agent needs.

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