elthio-mcp
Server Details
Supplement safety for AI agents - drug interactions, quality grading, NIH verification.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- Iomed-commits/elthio-mcp
- GitHub Stars
- 0
Tool Definition Quality
Average 3.9/5 across 5 of 5 tools scored.
check_supplement_safety overlaps heavily with get_supplement_timing, grade_supplement_quality, and verify_nih_label by returning timing, quality grade, filler detection, and NIH verification alongside safety data. This creates unclear boundaries and makes tool selection ambiguous.
All tool names follow a consistent verb_noun snake_case pattern: check_full_stack, check_supplement_safety, get_supplement_timing, grade_supplement_quality, verify_nih_label. The naming is predictable and easy to navigate.
Five tools is a well-scoped size for the supplement advisory domain. Each tool covers a distinct high-level concern, and the count is neither bloated nor too thin.
The tool set covers full-stack interaction checking, individual safety checks, timing, quality grading, and NIH label verification. Minor gaps exist around detailed supplement information retrieval, but the core domain is functionally complete.
Available Tools
5 toolscheck_full_stackAInspect
Check a complete supplement and medication stack for all interactions, conflicts, synergies, and generate a full daily timing schedule. Use this when a user wants to check their entire supplement regimen or build a complete daily schedule.
| Name | Required | Description | Default |
|---|---|---|---|
| bedtime | No | Bedtime HH:MM | |
| wake_time | No | Wake time in HH:MM format. e.g. '07:00' | |
| dinner_time | No | Dinner time HH:MM | |
| medications | No | All prescription medications. | |
| supplements | Yes | All supplements and vitamins. | |
| breakfast_time | No | Breakfast time HH:MM |
Tool Definition Quality
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 core behavior (checking interactions and generating a schedule) but omits details about the output format, handling of missing times, or how conflicts are reported. It is accurate but shallow.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core function and a clear usage case. There is no filler; every clause adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having six parameters and producing a complex schedule, the description does not explain the schedule output, the optionality of time parameters, or how missing times are handled. With no output schema, this is a significant gap for an agent to correctly invoke and interpret the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning every parameter already has an explanation in the schema. The description adds no additional parameter semantics, so the baseline of 3 applies. It does not clarify relationships between time parameters or how they influence the schedule.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('check') and resource ('complete supplement and medication stack'), and clearly outputs a 'full daily timing schedule.' It also explicitly contrasts with checking individual items, which distinguishes it from siblings like check_supplement_safety and get_supplement_timing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides a clear when-to-use directive ('when a user wants to check their entire supplement regimen or build a complete daily schedule'), but does not explicitly state when NOT to use it or name alternative tools. The sibling names are present in the context, but the description itself does not contrast with them explicitly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_supplement_safetyAInspect
Check if a supplement is safe with a user's medications and existing supplements. Returns interaction data, safety score, quality grade, filler detection, NIH verification, and timing recommendation. Use this whenever a user asks about supplement safety, drug interactions, or whether they can take a supplement with their medications.
| Name | Required | Description | Default |
|---|---|---|---|
| supplement | Yes | The supplement to check. Include brand and form for best results. e.g. 'Magnesium Bisglycinate 400mg' or 'Fish Oil 1000mg' | |
| medications | No | List of user's prescription medications. e.g. ['Warfarin', 'Levothyroxine'] | |
| supplements | No | User's existing supplements for interaction checking. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It openly lists the kinds of results returned (interaction data, safety score, quality grade, filler detection, NIH verification, timing recommendation), which gives the agent a clear behavioral model. It does not reveal any limitations or underlying data-source behavior, but the read-only 'check' framing is reasonably transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: the core purpose comes first, followed by return categories and a usage trigger. Every sentence adds value, though the second sentence is a dense list of outputs that could arguably be trimmed or structured better.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so listing the return categories is important and mostly sufficient. However, the description bundles outputs that appear to belong to sibling tools (quality grade, NIH verification, timing) without clarifying how this tool relates to them or when to call those siblings instead. This creates moderate ambiguity for an agent navigating the full toolset.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 all three parameters adequately. The description adds little to parameter semantics beyond echoing the concept of 'existing supplements' and medications, which matches the schema. This is the baseline 3 case where the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Check'), a clear resource (supplement safety against medications and existing supplements), and lists the outputs returned. It does not explicitly differentiate itself from sibling tools like grade_supplement_quality or get_supplement_timing, even though its output list overlaps with them, so it stops just short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear trigger conditions: 'Use this whenever a user asks about supplement safety, drug interactions, or whether they can take a supplement with their medications.' It does not state when not to use it or point to alternatives such as verify_nih_label or grade_supplement_quality, which are relevant given the overlapping outputs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_supplement_timingAInspect
Get the optimal time to take a supplement and why. Returns slot (morning/bedtime/with food/etc), clinical reasoning, and personalized instruction. Use this when a user asks when to take a supplement or how to build a timing schedule.
| Name | Required | Description | Default |
|---|---|---|---|
| supplement | Yes | Supplement name. e.g. 'Magnesium Glycinate' | |
| medications | No | User's medications — affects timing recommendations. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. It transparently states that the tool returns a slot, clinical reasoning, and personalized instruction, making it clear this is a read-only advisory operation with no side effects. It does not mention data sources or limitations, but for this query-oriented tool the disclosed behavior 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences convey the tool's purpose, what it returns, and when to use it, with no filler. The primary action and outputs are front-loaded, and the usage guidance follows naturally. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity tool with two parameters, no output schema, and no annotations, the description clearly explains return values (slot, reasoning, instruction) and the trigger scenario. An agent has enough to decide when to call it and what to expect back, even without an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 both parameters: 'supplement' with an example and 'medications' as affecting timing. The description adds only that the result includes 'personalized instruction,' which indirectly implies the role of medications. The schema does the heavy lifting, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('Get the optimal time to take a supplement and why'), identifies the resource (a supplement), and enumerates the concrete return components (slot, clinical reasoning, personalized instruction). This clearly separates it from sibling tools focused on safety, quality, label verification, and full-stack checks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use the tool: 'when a user asks when to take a supplement or how to build a timing schedule.' This gives clear context, though it does not name sibling alternatives or state when not to use it. The guidance is sufficient for most agent routing decisions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
grade_supplement_qualityAInspect
Get the quality grade (A-D) for a supplement based on bioavailability, filler detection, and NIH verification. Use this when a user asks about supplement quality, which form is best, whether a supplement has concerning fillers, or wants to compare brands.
| Name | Required | Description | Default |
|---|---|---|---|
| supplement | Yes | Supplement name to grade. e.g. 'Magnesium Oxide' or 'NOW Foods Vitamin D3 5000IU' | |
| other_ingredients | No | Other ingredients text from the label for filler detection. Optional. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the responsibility for behavioral disclosure. It communicates the read-only operation via 'Get', describes the output scale (A-D), and names the evaluation criteria. It does not mention dependencies, failure modes, or how the optional other_ingredients parameter affects grading, leaving some behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler, and the core function is front-loaded in the first phrase. Every clause adds decision-relevant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple 2-param getter, but with no output schema and no annotations the description must cover invocation semantics. It explains output format and typical use cases, yet it leaves ambiguity about brand comparisons (single call vs. multiple calls) and the effect of omitting other_ingredients on filler detection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description mentions filler detection and NIH verification, but it does not add parameter-level detail beyond what the schema already provides; the examples and optionality are already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), resource ('quality grade (A-D) for a supplement'), and the three evaluation criteria (bioavailability, filler detection, NIH verification). It also lists concrete trigger questions, making its purpose clear. However, it does not explicitly distinguish itself from sibling tools such as verify_nih_label or check_supplement_safety, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit use cases: 'when a user asks about supplement quality, which form is best, whether a supplement has concerning fillers, or wants to compare brands.' This gives clear context for selection, but it does not state when to prefer a sibling tool or when not to use this tool, so it lacks exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_nih_labelAInspect
Verify if a supplement matches a record in the NIH Dietary Supplement Label Database (DSLD). Returns verification status, DSLD ID, and confidence level. Use this when a user asks if a supplement is legitimate or wants to verify label accuracy.
| Name | Required | Description | Default |
|---|---|---|---|
| supplement | Yes | Supplement name to verify against NIH DSLD. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the disclosure burden. It usefully discloses that the tool 'Returns verification status, DSLD ID, and confidence level', but does not describe behavior for edge cases (e.g. no match found) or any data-source semantics beyond matching.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: purpose, return values, and usage context, all front-loaded with no filler. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with full schema coverage, the description is complete: it covers what it does, what it returns, and when to use it. Minor gap is the absence of edge-case or 'no record found' behavior, which would normally be covered by an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single 'supplement' parameter is already described as the name to verify. The description adds no extra meaning beyond the schema, matching the baseline for full coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Verify') and resource ('NIH Dietary Supplement Label Database'), and names the output briefly. The sibling tools cover safety, timing, and quality, so this verification-against-a-database purpose is clearly distinct from them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use this when a user asks if a supplement is legitimate or wants to verify label accuracy.' It provides clear when-to-use context, though it does not state exclusions or name an alternative tool as a fallback.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user or an account that owns the GitHub organization, then choose Claim with GitHub.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Connectors
Supplement research, biomarker effects, drug interactions, and brand quality data
Condition-aware ingredient and product checks for agents, with evidence tiers and citations.
Physician-reviewed medical opinions and prescriptions for AI agents.
Evidence-graded analyses of 511 supplements: claims, doses, safety, PubMed references (en/pt-BR)
Related MCP Servers
- AlicenseAqualityNot gradedmaintenanceSupplement safety MCP server for AI agents. FDA FAERS signals, CYP450 pathways, 584 compound aliases. Works with Claude Desktop, LangChain, CrewAI.51
- AlicenseNot gradedqualityCmaintenanceEvidence-based supplement intelligence in your terminal, exposed as an MCP server for AI agents to research, compare, stack, and manage supplements.122MIT
- AlicenseAqualityBmaintenanceEvidence-based supplement recommendation MCP server covering 17 supplements and 40+ conditions with medication interaction checking and form quality classification.579MIT
- FlicenseBqualityDmaintenanceEnables AI agents to query free biomedical and pharmaceutical APIs for clinical trials, drug data, molecular structures, adverse events, and research literature.14