Skip to main content
Glama
AiAgentKarl

nutrition-mcp-server

by AiAgentKarl

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    Each tool has a clearly distinct purpose: searching, retrieving facts, daily values, nutrient info, finding high-nutrient foods, categories, comparison, and intake calculation. No overlap.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern with underscores (e.g., search_food, get_nutrition_facts, compare_foods). No mixed conventions.

    Tool Count5/5

    Eight tools cover the core functionalities of a nutrition database server without being excessive or insufficient. Each tool has a clear role.

    Completeness5/5

    The tool set covers search, retrieval, nutrient information, daily values, comparisons, and intake calculation. There are no obvious gaps for an informational nutrition server.

  • Average 3.6/5 across 8 of 8 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    No annotations are present, so the description carries full burden. It does not disclose any behavioral traits such as API calls, rate limits, or side effects. Only the basic operation is stated.

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

    Conciseness5/5

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

    The description is two concise sentences plus an Args section. Every word is necessary and there is no filler.

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

    Completeness2/5

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

    For a 3-parameter tool with no output schema or annotations, the description lacks details about the return value (e.g., format, units) and how daily values are determined. Missing context for new users.

    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 0%, but the description lists each parameter with brief context (e.g., 'USDA FoodData Central ID' for fdc_id). This adds value beyond the schema, but details like allowed ranges or examples are missing.

    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 states that the tool calculates the percentage of daily requirement a food covers, using a specific verb 'Berechnet' and resource 'Tagesbedarfs'. This clearly distinguishes it from sibling tools like tool_get_nutrition_facts (raw nutrient values) and tool_compare_foods (comparison).

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, exclusions, or context for when this tool is appropriate.

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

  • Behavior2/5

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

    No annotations are present, and the description does not disclose any behavioral traits such as read-only nature, destructive potential, required permissions, or rate limits. It only states the function without context.

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

    Conciseness5/5

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

    The description is very concise with two short sentences for purpose and parameter details. It is front-loaded and contains no extraneous information.

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

    Completeness3/5

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

    For a simple tool with two parameters and no output schema, the description is mostly adequate but lacks details on the return format (e.g., list of food names, nutrient amounts) and does not address case sensitivity or input normalization.

    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?

    The parameter descriptions in the docstring add examples and clarification beyond the schema (e.g., nutrient examples like 'protein', 'iron'). The schema has 0% coverage, so the description compensates well by explaining the parameters.

    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 clearly states the tool finds foods high in a specific nutrient (verb 'find', resource 'foods high in nutrient'). It is specific enough to distinguish from siblings like 'tool_search_food' which is broader, though it does not explicitly mention alternatives.

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

    Usage Guidelines2/5

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

    The description provides basic usage (when to find foods high in nutrient) but offers no guidance on when not to use it or how it compares to sibling tools like 'tool_search_food' or 'tool_get_nutrient_info'.

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

  • Behavior2/5

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

    No annotations are provided, so the description must convey behavioral traits. It mentions the database size (1M+ entries) and limit constraints (max 25), but does not disclose whether the tool is read-only, performance characteristics, authentication needs, or any side effects. The description carries the full burden but only provides minimal behavioral context.

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

    Conciseness5/5

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

    The description is extremely concise with two short paragraphs. The first sentence states the purpose immediately, and the parameter descriptions are efficient with examples. Every sentence earns its place, and there is no superfluous information.

    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?

    Given the simplicity of the tool (2 parameters, no output schema), the description is largely complete. It covers purpose, parameter meanings, and constraints. However, for completeness in context of siblings, a brief note on when to search vs. use other tools would improve it. Still, it is adequate for a straightforward search function.

    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?

    The description adds significant meaning beyond the input schema: it explains that 'query' is a search term with concrete examples ('apple', 'chicken breast'), and clarifies 'limit' with a maximum of 25 and default of 10. With schema description coverage at 0%, the description compensates well by providing clear semantics and constraints for both parameters.

    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 clearly states the tool searches foods in the USDA FoodData Central database with over 1 million entries. It uses a specific verb ('suchen') and resource ('Lebensmittel in der USDA FoodData Central Datenbank'), and the scope is well-defined. However, it does not explicitly distinguish from siblings like 'compare_foods' or 'find_foods_high_in', though the search function is implied.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It only describes the parameters without any context about appropriate scenarios, prerequisites, or when to avoid it. For a search tool among several food-related tools, clear usage guidance would be beneficial.

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

  • Behavior3/5

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

    The description explains that the tool calculates nutritional values based on serving size (default 100g), which is a behavioral trait. However, it does not mention any side effects, errors, or safety (e.g., read-only). Since no annotations, more transparency expected.

    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 concise with a clear summary and parameter list, but the German language might obscure for some users.

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

    Completeness3/5

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

    The description explains the input but not the output structure. Given no output schema, the agent lacks understanding of what data is returned. It is adequate but not fully 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?

    The description provides brief parameter explanations (fdc_id source and serving_grams purpose) beyond the schema field names, which is necessary given 0% schema description coverage. However, it lacks examples or constraints.

    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 clearly states the tool retrieves complete nutritional data for a food item using a USDA ID. It implies comprehensiveness compared to sibling tools like tool_get_nutrient_info, but does not explicitly distinguish.

    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?

    The description explains the required input (fdc_id from search_food) and optional serving size, but does not provide guidance on when to choose this tool over siblings like tool_get_nutrient_info.

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

  • Behavior2/5

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

    No annotations are provided, so the description bears full responsibility. It mentions the output includes function, deficiency signs, and food sources but lacks disclosure of behavioral traits such as input validation, data source, freshness, or error handling. The tool's read-only nature is implied but not stated.

    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 brief and front-loaded with the purpose. However, the mixture of English (tool name) and German (description) may reduce clarity for some agents. It conveys essential information without extraneous words.

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

    Completeness3/5

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

    Given the tool has one parameter, no annotations, no output schema, and a simple purpose, the description covers the basic input and expected output. However, it lacks usage guidelines and behavioral transparency, leaving gaps for a complete understanding.

    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?

    The schema lists one parameter 'nutrient' with only type and no description (0% coverage). The description adds examples ('vitamin c', 'iron') and clarifies that it expects a nutrient name, compensating for the schema gap and providing useful context.

    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 clearly states the tool's purpose: to provide detailed information about a nutrient, including function, deficiency signs, and food sources. It uses a specific verb (get) and resource (nutrient info), distinguishing it from siblings like tool_find_foods_high_in and tool_get_nutrition_facts.

    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?

    The description does not provide explicit guidance on when to use this tool vs. alternatives. It implies usage based on the need for nutrient detail, but no when-not or exclusion criteria are given. Siblings are listed but not referenced.

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

  • Behavior3/5

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

    The description 'anzeigen' implies a read-only operation, but no annotations exist to confirm. It lacks details on authentication, rate limits, or output structure, which is acceptable for a simple listing tool but not fully transparent.

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

    Conciseness5/5

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

    The description is a single sentence in German, concise and front-loaded. Every word is necessary; no redundancy or fluff.

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

    Completeness3/5

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

    Given no output schema, the description could elaborate on what categories and data types are included (e.g., 'fruits, grains, nutrients'). It is minimally complete but lacks detail that would aid agent understanding.

    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?

    The tool has no parameters, and the schema coverage is 100% (empty). The description adds no parameter information, but none is needed. The baseline for 0-param tools is 4.

    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 clearly states the tool displays available food categories and data types from USDA FoodData Central. It uses a specific verb ('anzeigen') and resource, making the purpose unambiguous and distinct from sibling tools.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like search or compare. The description does not mention prerequisites or scenarios where this tool is preferable.

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

  • Behavior4/5

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

    No annotations are provided, so the description carries the full burden. It clearly indicates a read-only operation ('anzeigen') with no side effects. While it does not disclose specifics like data caching or update frequency, the tool's simplicity (no inputs, static data) makes this sufficient.

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

    Conciseness5/5

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

    Two concise sentences, front-loaded with the primary purpose. Every word earns its place. No redundancy.

    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?

    Given zero parameters and no output schema, the description is largely complete. It specifies the audience (adults) and the data source (FDA). However, it could be improved by noting that the output is a list or table of nutrients with values, but this is minor.

    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?

    There are no parameters, so the description does not need to add meaning beyond the schema. Baseline of 4 is appropriate because the schema coverage is 100% and the tool has zero parameters.

    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 explicitly states the tool shows daily recommended nutrient intake (DRI) for adults, specifically FDA Daily Values. This distinguishes it from sibling tools like tool_get_nutrient_info, which likely provides general nutrient data. The verb 'anzeigen' (display) is specific and matches the tool's function.

    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?

    The description implies usage for retrieving adult DRI values but does not provide explicit guidance on when to use this tool over alternatives like tool_get_nutrient_info or context-specific exclusions. For a zero-parameter tool, the intended use is clear, but alternatives are not addressed.

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

  • Behavior3/5

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

    No annotations provided; description only states the compare action and parameter details. It does not disclose whether the tool is read-only, response format, or other behavioral traits, but the compare behavior is clear.

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

    Conciseness5/5

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

    Description is very concise: a clear purpose line followed by parameter explanations. No unnecessary words, and it is well-structured.

    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?

    Description adequately explains tool purpose and parameters. Lacks output description, but given the simple comparison nature, it is reasonably complete for agent invocation.

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

    Parameters5/5

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

    With 0% schema description coverage, the description fully compensates by explaining each parameter: fdc_id_1 and fdc_id_2 as USDA IDs, serving_grams as portion size with default, adding meaning beyond 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?

    Description clearly states verb 'vergleichen' (compare) and resource 'zwei Lebensmittel' (two foods) with nutritional context, distinguishing it from sibling tools that search or get single food data.

    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?

    Description specifies the tool is for comparing two foods by USDA IDs, implying when to use it. However, it does not explicitly state when not to use or mention alternatives, so it falls short of a 5.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

nutrition-mcp-server MCP server

Copy to your README.md:

Score Badge

nutrition-mcp-server MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AiAgentKarl/nutrition-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server