Skip to main content
Glama

iNutriPlan Supplement Database MCP Server

Server Details

MCP server exposing supplements database used by iNutriPlan.com

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 6 of 6 tools scored.

Server CoherenceA
Disambiguation4/5

Most tools have clear, distinct purposes. The only minor overlap is between search_by_ingredient and search_supplements, where both return product results, but the former is specifically for ingredient-based queries and also provides research context.

Naming Consistency4/5

All tool names use snake_case and follow a consistent verb_noun pattern (e.g., get_*, list_*, search_*). The only deviation is the use of 'list' instead of 'get' for categories, but it remains within the same convention.

Tool Count5/5

With 6 tools, the server is well-scoped for a supplement database. Each tool serves a distinct function (ingredient lookup, product detail, category browsing, searching), and the count is not excessive nor too sparse.

Completeness4/5

The tool surface covers core operations: ingredient research, product retrieval, category browsing, and flexible search. A minor gap is the absence of a tool to list all known ingredients, which would improve discoverability.

Available Tools

6 tools
get_ingredient_infoAInspect

Look up evidence-graded research context for a supplement ingredient from the curated registry (99 ingredients).

Returns canonical name, aliases, health goals, mechanisms of action, evidence grade (Strong / Moderate / Preliminary), research notes, and recommended iHerb search terms.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesIngredient name, alias, or health goal keyword, e.g. "magnesium", "ashwagandha", "sleep", "testosterone", "weight_loss".

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior3/5

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

With no annotations, the description must disclose behavioral traits. It covers the read nature implicitly but does not mention behavior for missing ingredients, rate limits, or any side effects. The output schema is present but not shown; the description omits potential constraints or prerequisites.

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 sentences: the first states the action concisely, and the second lists returned fields. It is front-loaded with a verb ('Look up') and contains no extraneous information, maximizing clarity in minimal space.

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 simple single-parameter tool and the existence of an output schema, the description covers core functionality (what it does and returns). It mentions the registry size (99 ingredients) for context. Minor gaps include lack of error handling details, but overall it is sufficient for a straightforward lookup.

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 input schema provides a detailed description (including examples) for the sole parameter 'name', achieving 100% coverage. The tool description adds that names come from a curated registry of 99 ingredients but does not significantly extend the schema's semantic guidance, resulting in a baseline score.

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 look up evidence-graded research context for a supplement ingredient from a curated registry of 99 ingredients. It lists specific outputs (canonical name, aliases, health goals, mechanisms, evidence grade, etc.), which distinguishes it from siblings like 'get_supplement_detail' that likely return product-level information.

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 obtaining curated research context but does not explicitly state when to use this tool versus alternatives (e.g., 'search_by_ingredient' or 'get_supplement_detail'). No when-not-to-use or alternative guidance is provided, leaving the agent to infer context from tool names.

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

get_supplement_detailAInspect

Retrieve complete details for a single iHerb product by its numeric product ID (visible in iHerb URLs, e.g. "72711" from https://www.iherb.com/pr/p/72711).

Returns the full supplement facts panel (nutrients, amounts, % daily values), ingredients list, warnings, serving info, and the affiliate purchase link.

ParametersJSON Schema
NameRequiredDescriptionDefault
product_idYesiHerb numeric product ID as a string, e.g. "72711".

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior3/5

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

No annotations provided, so description carries full burden. Describes return content but does not disclose safety (read-only), error handling for invalid IDs, or any side effects. Adequate but could be more explicit.

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 sentences: first defines purpose and source, second enumerates return content. No redundancy, front-loaded with essential info. Highly concise and structured.

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

Completeness5/5

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

Given single parameter with full schema coverage, presence of output schema, and clear return description, the description is complete. No missing aspects for an agent to correctly invoke tool.

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 has 100% coverage for product_id with description. The description adds value by explaining where to find the ID (iHerb URLs) and providing an example. Beyond schema, enhances understanding.

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 specific verb 'retrieve' and resource 'complete details for a single iHerb product', with concrete list of returned data. Distinguishes from siblings like get_ingredient_info and search_supplements by focusing on singular product detail retrieval.

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?

Explains when to use: when numeric product ID is available from URL. Does not explicitly mention when not to use or alternatives, but implied by sibling context. Adequate guidance for typical usage.

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

get_supplements_by_categoryAInspect

List top-rated in-stock products within a specific iHerb category. Use list_categories first to discover valid category slugs.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum results (1–60). Default 20.
min_ratingNoMinimum star rating (0.0–5.0). Default 4.0.
category_slugYesCategory slug, e.g. "vitamins", "supplements", "brain-cognitive", "sports", "magnesium-complex".

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior3/5

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

No annotations are provided, so the description must fully disclose behavior. It mentions 'top-rated' and 'in-stock' but does not explain the sorting order (e.g., by rating, sales) or provide details on pagination or data freshness. Overall adequate but lacks some behavioral specifics.

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 sentences with no extraneous information. It is front-loaded with the core purpose and includes a vital usage hint, making it concise and effective.

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 tool's moderate complexity (3 parameters, output schema exists, sibling tools present), the description covers the main purpose, prerequisite, and parameter hint. It could be more complete by specifying the sorting order (e.g., 'top-rated by average customer rating').

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 input schema covers all parameters with descriptions (100% coverage), so the description adds limited additional meaning. It does link category_slug to list_categories, providing useful context, but does not elaborate on limit or min_rating beyond schema defaults.

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 it lists top-rated in-stock products within a specific iHerb category. It uses specific verbs and resources, and distinguishes itself from sibling tools like search_by_ingredient and search_supplements by being category-specific.

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?

The description explicitly advises using list_categories first to find valid category slugs, providing clear prerequisite guidance. However, it does not include explicit when-not-to-use or alternative scenarios.

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

list_categoriesAInspect

Return all available iHerb product categories with their URL slugs and live product counts. Use the slug value with get_supplements_by_category to browse products within a specific category.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

No annotations provided, but description fully discloses behavior: returns all categories with slugs and counts. No hidden side effects, read-only nature implied. Minor omission: does not specify if data is live or cached, but overall good.

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, no filler. Front-loaded with action and resource, clear structure.

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

Completeness5/5

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

Output schema covers return values, description adds context about purpose and usage with sibling. Everything an agent needs is present.

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?

No parameters present, so baseline 4 applies. Description adds no parameter info, but schema coverage is 100% (trivially). Effective score is 4 due to 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?

Description explicitly states it returns all iHerb product categories with URL slugs and live product counts. It also mentions the connection to a sibling tool, clearly distinguishing its function.

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?

Directly tells when to use this tool ('to get categories') and when to use a sibling ('use slug with get_supplements_by_category'). Provides clear guidance on next steps.

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

search_by_ingredientAInspect

Find products that contain a specific ingredient or compound in their ingredients list (e.g. "ashwagandha", "CoQ10", "zinc bisglycinate").

Also returns evidence-graded research context from the ingredient registry when the ingredient is recognised — goals, mechanisms, evidence grade.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum products to return (1–40). Default 20.
ingredientYesIngredient or compound name to search for.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

No annotations are provided, so the description carries full burden. It discloses that the tool also returns evidence-graded research context when the ingredient is recognized, adding behavioral insight beyond the schema. However, it doesn't specify behavior for unrecognized ingredients or any side effects, but for a search tool this is adequate.

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 sentences, front-loading the primary purpose and adding secondary context succinctly. No redundancy or extraneous 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 small number of parameters, high schema coverage, and the presence of an output schema, the description is fairly complete. It covers the main search functionality and the extra research context. Minor gaps like pagination or behavior for unrecognized ingredients are not critical.

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% with clear parameter descriptions. The description adds value by providing example ingredient values ('ashwagandha', 'CoQ10') and reiterating the limit range, but does not significantly extend parameter meaning beyond the schema. Baseline 3 is appropriate.

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 finds products containing a specific ingredient in their ingredients list, with examples. It also mentions returning research context. This distinguishes it from siblings like get_ingredient_info (focused on ingredient details) and search_supplements (likely by name).

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?

The description implies when to use: to find products by ingredient. While it doesn't explicitly state when not to use or mention alternatives, the sibling tool names provide context. The description is clear enough for an agent to infer appropriate use cases.

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

search_supplementsAInspect

Search the iHerb product database using a natural-language query, benefit keyword, ingredient name, or brand name.

Uses the PostgreSQL GIN full-text search index first (fast, relevance-ranked), then falls back to a broader ILIKE scan if FTS yields no results.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum results (1–60). Default 20.
queryYesSearch term, e.g. "magnesium sleep support", "omega 3 fish oil", "vitamin D immune", or a brand name.
min_ratingNoMinimum star rating filter (0.0–5.0). Default 4.0.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
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 discloses the search algorithm (GIN FTS with ILIKE fallback), which is helpful. However, it does not mention rate limits, auth requirements, or any side effects.

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 sentences, front-loaded with purpose, no redundant information. Every word earns its place.

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?

The description explains the search strategy and query types. Given an output schema exists and parameters are well-documented, it is fairly complete. Lacks mention of pagination or sorting, but that is not critical.

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 schema already documents parameters. The description adds value by explaining query types but does not add new semantics 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?

The description uses a clear verb ('Search') and specifies the resource ('iHerb product database'), including various query types. It distinguishes itself from siblings like 'search_by_ingredient' by being more general.

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 lists query types but does not explicitly state when to use this tool versus alternatives like 'search_by_ingredient' or 'get_supplements_by_category'. The context is implied but not direct.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources