Skip to main content
Glama

Find products

suppco_find_products
Read-onlyIdempotent

Find products based on user query - handles search, browsing, and recommendations. Use this whenever the user wants to discover or find products.

Input Schema

NameRequiredDescriptionDefault
formNoComma-separated list of product forms. Valid forms are: capsule, tablet, softgel, gummy, powder, liquid, other (e.g., 'capsule,tablet')
brandNoThe brand a user prefers
limitNoMaximum number of products to return (default: 5, max: 50)
queryNoFree text search for a specific product by name (e.g., "Thorne Creatine", "AG1 Greens"). Only use this when searching for a specific brand + product name with no filters. Do NOT use query together with other params — use product_category_name instead when filters like priority, brand, certifications, form, max_price, or servings are needed.
offsetNoNumber of products to skip for pagination (default: 0)
testedNoWhen true, only return products that have been TESTED by SuppCo (identity, potency, and/or heavy metals testing performed by SuppCo's lab)
priorityNoHow to rank results. Valid: best_value, most_trusted, most_popular, most_expensive. Omit (or leave blank) to apply the user's profile buying preference automatically; pass a value to override.
servingsNoComma-separated list of serving counts (e.g., '30,60,90')
max_priceNoMaximum price in dollars (e.g., 50.00)
certificationsNoRequired certifications, comma-separated. Valid: gluten_free, non_gmo, vegan_action, usda_organic, nsf_sport, usp_verified, informed_sport, informed_choice, tested_by_suppco. Omit (or leave blank) to apply the user's profile dietary preferences (vegan, gluten-free) automatically; pass an explicit list to override.
exclude_ingredientsNoComma-separated list of ingredients the product must NOT contain (e.g., 'stevia,sucralose'). Matches against both active ingredients (supplements) and inactive ingredients (excipients).
include_ingredientsNoComma-separated list of ADDITIONAL ingredients the product must also contain beyond its category (e.g., for 'collagen with hyaluronic acid', set product_category_name='Collagen' and include_ingredients='hyaluronic acid'). Do NOT put the primary supplement here — use product_category_name for that.
product_category_nameNoREQUIRED for all non-query searches. The supplement category (e.g., 'Vitamin D', 'Magnesium', 'Ashwagandha', 'Collagen'). ALWAYS provide this when using any filter params (priority, brand, certifications, form, max_price, servings, include_ingredients, exclude_ingredients). When the user asks for a supplement by name like 'ashwagandha' or 'magnesium', that IS the category.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is fully covered by structured data. The description adds nothing behavioral on top of that — no mention of pagination via limit/offset, of the profile-driven defaults for priority and certifications, or of result ranking. It is essentially a restatement of the name.

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?

Two short sentences with the verb-resource front-loaded and no padding. The 'handles search, browsing, and recommendations' clause is somewhat generic filler, but overall the definition is efficiently sized.

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?

This is a 13-parameter discovery tool with two distinct modes (free-text query vs category+filters), 0 required params, and no output schema or annotation coverage of the mode split. The description never mentions the required product_category_name for filtered searches or the profile-default behavior of priority/certifications, leaving the agent reliant entirely on schema text.

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% across all 13 params, including the detailed query-vs-product_category_name rule, the priority enum, and profile-override semantics for certifications. The description contributes no parameter meaning beyond the schema, so the baseline 3 applies.

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?

States a specific verb+resource ('Find products') and broadens scope to search, browsing, and recommendations, which separates it from read-only siblings like suppco_get_product_info or suppco_find_brands. It stops short of naming any sibling as the alternative, so the boundary with find_buying_club_products/find_brands is left implicit.

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?

'Use this whenever the user wants to discover or find products' gives an always-on trigger but no when-not condition and no alternatives. Critically, the schema's own rule that query must not be combined with filters (and that product_category_name is required for filtered searches) is never surfaced in the description, so the agent gets no routing guidance for the tool's two distinct modes.

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