Skip to main content
Glama

jean — Molecular Biology & Genomics

check_primer_specificity

Read-only

Check primer pairs for products off their template, the way NCBI Primer-BLAST does, and rank them by it: each distinct primer is searched against a sequence database at EMBL-EBI with short-query BLAST, hits are paired into products by Primer-BLAST's own mismatch rule, and the template is searched too so the record identical to it is recognized as the intended target. Pairs with no product elsewhere rank first, in the order given, then pairs not checked, then pairs with a named unintended product. Primer sequences and the template LEAVE THE MACHINE; the database is a collection, not an assembled genome, and cannot be filtered by organism.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
emailNoEBI requires a contact address on every submission (their abuse contact, not a login). Left empty, the one saved in any EMBL-EBI panel is used.
pairsNoseveral pairs to rank, one per line as `forward reverse` (whitespace or a comma between), in their design order. Taken instead of forward/reverse when given.
top_nNohow many of the pairs, from the top, to search. The rest rank as unchecked. At most 14, so the batch stays inside EMBL-EBI's 30 searches.
_filesNoThe project: record references shaped like _subject. Their records become library documents a tool names in sequences/parts/document; a trace or alignment is found by file name.
forwardNoone pair's forward primer, 5'→3' (wire design_primers' `forward`).
reverseNothat pair's reverse primer, 5'→3' (wire design_primers' `reverse`).
_subjectNoThe record to act on: exactly one of sequence, accession (+source), sample (an id from list_samples) or file ({name, text} or {name, base64}); record_index picks one record of several.
databaseNothe nucleotide database id, as the service names it (em_all, em_rel_hum…). Left empty, the service's OWN nucleotide default is used and reported back.
templateNothe sequence the pairs were designed on. Searched too: the database record identical to it is where the intended product lives. Left empty, the open record is used; with neither, every product counts as unintended and the result says so.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
rankedYesevery pair in ranked order: its design rank, standing (specific, unchecked, non-specific), intended products and unintended products with subject, span, length and mismatches
forwardYesthe top-ranked pair's forward primer (wire into pcr_amplify)
reverseYesthe top-ranked pair's reverse primer
identicalYesdatabase records identical to the template, whose products are the intended ones
specificCountYespairs with no product off the template; wire into a $when to branch on "any specific pair"

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, destructiveHint=false and openWorldHint, so safety is covered. The description adds genuinely non-obvious behavioral context: primer sequences and template leave the machine, the database is a collection rather than an assembled genome, it cannot be filtered by organism, and the exact ranking rule for results.

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?

Purpose is front-loaded in the first clause and every sentence adds functional detail (pipeline, ranking, privacy, database limitation). It is dense and somewhat run-on, but no sentence is 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?

With an output schema present, return-format explanation is unnecessary, and the description covers the workflow, the empty-template fallback ('the result says so'), privacy, and database limits. For a 9-parameter tool with nested objects, this is largely sufficient, though per-parameter edge cases live only in the schema.

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 coverage is 100%, so the baseline is 3. The description goes beyond the schema by explaining the mechanics that give meaning to `template` (searched so the identical record is recognized as the intended target) and to `top_n`/ranking (unchecked vs unintended-product pairs), clarifying parameter intent.

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+resource ('Check primer pairs for products off their template') plus the exact behavior modeled ('the way NCBI Primer-BLAST does') and the output ordering. It clearly distinguishes itself from design tools and generic off-target/contamination scanners by describing the search-and-pair pipeline.

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 Primer-BLAST reference implies the intended context, and the closing caveats (sequences leave the machine; database cannot be filtered by organism) shape when to use it. However, no alternative sibling (e.g. primer_check, search_off_targets, design_primer_pairs) is named, and no explicit 'use this when / not when' guidance is given.

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