Skip to main content
Glama

Server Details

Pharmacogenomics for AI agents: cited drug–gene, gene and rsID lookups plus a medication screen.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 20 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4/5.0

Scored across 4 tools

Disambiguation4/5

list_genes and lookup_variant are clearly distinct, while lookup_gene and lookup_drug_gene have some overlap because both can surface drug interactions. However, lookup_gene is a comprehensive gene monograph and lookup_drug_gene is specifically pharmacogenomic guideline guidance, so agents can usually tell them apart.

Naming Consistency5/5

All tool names follow a consistent lowercase verb_noun pattern: list_ for browsing collections and lookup_ for retrieving specific entities. The compound lookup_drug_gene is readable and fits the same convention, with no mixed naming styles.

Tool Count5/5

Four tools is well-scoped for a read-only pharmacogenomics knowledge base: browse genes, get gene detail, get drug-gene guidance, and look up a variant. Each tool serves a distinct query path without unnecessary bloat or redundancy.

Completeness4/5

The toolset covers the main entry points for pharmacogenomic information: genes, variants, and gene-drug guidance. A minor gap is the lack of a drug-first lookup to find all relevant genes for a given drug, but the gene-centric design appears intentional and most user workflows are supported.

Available Tools

6 tools
check_medicationsScreen a medication listA
Read-onlyIdempotent
Inspect

Given a list of generic drug names, say which ones have a curated drug–gene record, with which genes and what each record rests on (a CPIC or DPWG guideline, a drug label, or the primary literature), and which are not covered. Needs no genotype. Use it before discussing whether genetics could matter for someone's medicines.

ParametersJSON Schema
NameRequiredDescriptionDefault
medicationsYesGeneric names, e.g. ["clopidogrel", "simvastatin"].

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and closed-world behavior, so the safety profile is covered. The description adds genuinely useful behavioral context beyond that: it specifies that no genotype input is needed and characterizes the returned evidence provenance (CPIC/DPWG guideline, drug label, or primary literature).

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 core behavior is front-loaded in the opening sentence, followed by two short, purposeful sentences. The first sentence is dense but every clause carries information; minor tightening only.

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?

With no output schema, the description correctly takes on the burden of describing returns (covered vs. uncovered drugs, associated genes, evidence basis) and notes the input requirement. It omits the list-size limit and any note on partial/unmatched names, so it is strong but not exhaustive.

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% and the single parameter is already documented with an example; the description's phrase 'list of generic drug names' restates the schema rather than adding format or constraint detail (e.g., the 30-item maximum). Baseline 3 is appropriate when the schema carries the parameter semantics.

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?

States a specific verb (screen/say which) and resource (a list of generic drug names), and enumerates exactly what it returns: which drugs have a curated drug–gene record, which genes, and the evidence type. The batch-of-generic-names framing implicitly distinguishes it from the singular lookup_drug_gene sibling.

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?

Gives a clear when-to-use statement ('Use it before discussing whether genetics could matter for someone's medicines') and a precondition ('Needs no genotype'). It does not explicitly name a sibling alternative (e.g., lookup_drug_gene for single-drug detail) or state when not to use it, so it stops short of full routing guidance.

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

list_genesList genesA
Read-onlyIdempotent
Inspect

List the genes in the DeepDNA knowledge base, with a one-line summary and category for each.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare the operation as read-only, idempotent, and non-destructive, covering the safety profile. The description adds behavioral context by revealing the output structure (one-line summary and category per gene), which is useful for the agent's expectation of the response. This goes beyond what annotations convey.

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, efficient sentence that front-loads the core action ('List the genes') and then adds the output detail. Every word earns its place, with no redundant or filler content, making it highly concise and well-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?

For a simple listing tool with no parameters and no output schema, the description fully covers what an agent needs to call it correctly: the action, the source (DeepDNA knowledge base), and the output content (summary and category). There are no significant gaps, and the sibling tools are clearly differentiated by their lookup nature.

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 zero parameters, so the schema is empty and provides complete coverage (100%). There are no parameter details to explain, and the description correctly omits any. The baseline of 4 applies because there is nothing to compensate for.

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 lists genes from the DeepDNA knowledge base and specifies the output includes a one-line summary and category. This is a specific verb-resource pair that inherently distinguishes it from the sibling lookup tools, which focus on retrieving individual records rather than enumerating all entries.

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 explicitly state when to use this tool versus the sibling lookup tools. The intent is implied – use this for an overview of all genes, while lookups are for specific queries – but no explicit when/when-not guidance or named alternatives are provided.

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

lookup_drug_geneLook up drug–gene guidance
Read-onlyIdempotent
Inspect

Pharmacogenomic guidance for a gene, optionally for one drug: guideline (CPIC or DPWG, "drug label", or null when the record rests on the primary literature), summary of the recommendation, phenotypes and sources. Omit drug to list every drug curated for that gene.

ParametersJSON Schema
NameRequiredDescriptionDefault
drugNoGeneric drug name, e.g. clopidogrel. Optional.
geneYesPharmacogene symbol, e.g. CYP2C19.
lookup_geneLook up a geneA
Read-onlyIdempotent
Inspect

Everything curated about one gene: function, key variants with rsIDs, metabolizer or function phenotypes, drug interactions, what a consumer genotyping array can and cannot tell you, and sources.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesHGNC gene symbol, e.g. CYP2C19. Case-insensitive.

TDQS

A3.6/5.0
Behavior3/5

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

The annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds useful detail about the breadth of content, including variants, phenotypes, and array limitations, but does not disclose edge-case behavior such as handling of unknown gene symbols or response formatting. This adds moderate value beyond the annotations.

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, well-structured sentence that front-loads the core idea ('Everything curated about one gene') and then uses a colon-delimited list to enumerate specific content categories. There is no filler or redundant wording, and every segment contributes useful 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?

For a simple read-only, one-parameter lookup with no output schema, the description gives a solid account of what the agent can expect in the response, including a notable nuance about consumer genotyping array limitations. It does not mention invalid-symbol behavior or explicitly contrast with sibling tools, but these are minor gaps given the straightforward schema and sibling names.

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 only parameter, 'symbol', is fully documented in the schema with an example ('CYP2C19') and case-insensitivity. The description adds no additional meaning about the parameter, so the schema carries the full burden. This matches the baseline for high schema coverage.

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 specifies the tool's purpose: retrieving curated information about one gene, and enumerates content types (function, variants, phenotypes, drug interactions, array limitations, sources). It focuses on a single gene, which distinguishes it from siblings like list_genes and lookup_variant, but it does not explicitly name those siblings or state how it differs from them.

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 the tool should be used when an agent needs comprehensive gene-centric curated data. However, it does not explicitly state when to choose this over lookup_variant or lookup_drug_gene, nor does it provide any exclusions or alternative routing. The agent must infer usage from the tool name and sibling context rather than from explicit guidance.

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

lookup_variantLook up a variant
Read-onlyIdempotent
Inspect

One variant by dbSNP rsID: gene, star-allele or common name, alleles, functional effect, population frequency and sources. Optionally pass the genotype read at that position (e.g. from a raw DNA file) to get how many copies of the variant allele it holds. That count is not a phenotype, metabolizer or risk call.

ParametersJSON Schema
NameRequiredDescriptionDefault
rsidYesdbSNP identifier, e.g. rs4244285.
genotypeNoOptional. The genotype at this position, e.g. AG, A/G, or one letter on X, Y or MT. Not stored.
request_beta_accessRequest private beta accessA
Idempotent
Inspect

Register the user's interest in DeepDNA's private beta (DNA file parsing, annotation, bloodwork; not deployed yet). Only call this after the user has explicitly agreed to share their email with DeepDNA for this purpose, and set user_consent to true. Stores the email and the optional use case; see https://deepdna.ai/privacy/.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYesThe user's email address.
use_caseNoOptional. What the user is building, in a sentence or two. Max 500 characters.
user_consentYesMust be true: the user agreed to share their email with DeepDNA for the private beta.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=true, openWorldHint=false. The description adds value beyond them: it discloses what is persisted (email, optional use case), links the privacy policy, and notes the beta is 'not deployed yet'. It stops short of saying what the caller receives on success or any rate limits.

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?

Three sentences, each carrying distinct load: what it does, the consent precondition, and what is stored/privacy link. Purpose is front-loaded with zero filler.

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 small mutation tool with annotations covering the safety profile and no output schema, the description covers purpose, precondition, and persisted data. It could add what the caller gets back or confirmation behavior, but nothing critical for correct invocation is missing.

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 baseline is 3; the schema already defines email, use_case (with 500-char cap), and the user_consent must-be-true rule. The description reinforces the consent semantics but adds no format or syntax detail 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?

States a specific verb and resource ('Register the user's interest in DeepDNA's private beta') and immediately scopes what the beta covers (DNA file parsing, annotation, bloodwork; not deployed yet). This clearly distinguishes it from the read-only sibling tools (lookup_gene, check_medications, etc.), which take no user-consent action.

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?

Gives an explicit, non-negotiable precondition: 'Only call this after the user has explicitly agreed to share their email' and 'set user_consent to true'. That is a clear when-to-call gate, and the implied when-not is the inverse. No alternative sibling overlaps, so no alternative routing is needed.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updates
    • Addedcheck_medications
    • Changedlookup_variant1 field changed
      • addedInput schema / properties / genotype
        Added value: +{
        +  "description": "Optional. The genotype at this position, e.g. AG, A/G, or one letter on X, Y or MT. Not stored.",
        +  "type": "string"
        +}
    • Addedrequest_beta_access
  2. 4 tool updates
    • First observedlist_genes
    • First observedlookup_drug_gene
    • First observedlookup_gene
    • First observedlookup_variant

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables AI-driven pharmacogenomic analysis by querying structured genetic variant, drug response, and disease risk data. Supports natural language questions about medications, traits, and health risks based on user genome data, with privacy-first local execution.
    16
    28 npm
    12
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables real-time pharmacogenomics analysis, including variant clinical significance, drug-gene interactions, and dosing guidelines, by connecting to ClinVar, PharmGKB, gnomAD, and other databases.
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to query clinical genomics databases, retrieve supporting literature, analyze population genetics, and visualize biological pathways.
    18
    MIT
  • F
    license
    A
    quality
    C
    maintenance
    Three composable MCP servers for clinical AI — FHIR R4 read/search/validate, medical terminology (LOINC/SNOMED/RxNorm/ICD-10), and drug safety reasoning (interactions, dose check, allergy). Apache-2.0, production-ready.
    5
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources