Skip to main content
Glama

primer_check

Read-only

Where a primer anneals on the open plasmid: 3'-anchored sites with identity % and the ✓/⚠/~/✗ verdict, graded at a bar you can move and that the answer states. The scan is 3'-anchored, so every site it reports matches the oligo's 3' seed exactly and 'no sites' means no seed match rather than a low score.

Input Schema

NameRequiredDescriptionDefault
_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.
primerYesprimer sequence 5'→3'.
_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.
thresholdsNothe identity boundaries the ✓/⚠/~/✗ verdict is cut at. Left unset, the run uses the bar your Primer Library is set to, and with no panel state the upstream SpliceCraft default — either way the bar it used comes back in `thresholds`, because a verdict whose cutoff is not stated cannot be checked. Move it to say what you are asking: screening a pool tolerates a lower `strong` than checking a clone does. Advanced.

Output Schema

NameRequiredDescriptionDefault
sitesYesannealing sites with identity %, mismatches, strand, the 3'-anchored footprint, and each one's tier and what that tier MEANS — read the tier rather than re-deriving it from the percentage, because the bar is a parameter
bestTierYesthe best site's tier: exact · strong · weak · marginal · none, or unknown when nothing was graded
siteCountYeshow many sites the seed found at all. Branch on this rather than on the length of `sites`: 0 is a real result and means the oligo's 3' end matches nowhere, not that it binds weakly
thresholdsYesthe four boundaries every verdict above was made against, and whether they came from your panel or from the upstream default — the same shape the `thresholds` parameter takes, so a run can be repeated at the bar it was graded at
bindingCountYeshow many sites are at or above the `strong` boundary — the ones expected to bind. More than one is a different experiment from one: a primer with two real sites gives two products, so a single clean band is not what this predicts
bestIdentityPctYesidentity of the best site, or 0 when nothing was found — a measurement, never a verdict

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedOutput schema / properties / bestIdentityPct / x-unit
      Added value: +"%"
  2. First observed

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already establish read-only, non-destructive, closed-world behavior, and the description adds a genuinely non-obvious caveat beyond them: the scan is strictly 3'-anchored, so every reported site exactly matches the 3' seed and 'no sites' means no seed match rather than a weak score. That prevents a real misreading of empty results. It stops short of saying what happens when no plasmid record is open.

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 sentences, purpose front-loaded, no filler. The second sentence is dense but every clause carries real information (anchor rule, empty-result meaning). Slightly prose-heavy for a tool definition, but nothing is wasted.

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

Completeness3/5

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

An output schema exists and annotations cover safety, so the description needn't explain return values — it correctly focuses on purpose and the anchoring caveat. However, for a tool that resolves a primer against 'the open plasmid', it never states what happens if no record is loaded or how record selection works, leaving a gap an agent would hit in practice.

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%, so the schema already documents primer, _subject, _files, and each threshold boundary in detail. The description echoes the movable-vs-stated-cutoff idea for thresholds ('a bar you can move and that the answer states') but adds no syntax or semantics the schema lacks, and says nothing about the primer or record parameters.

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 first clause states a specific verb and resource: where a primer anneals on the open plasmid, returning identity % plus a ✓/⚠/~/✗ verdict. 'On the open plasmid' and '3'-anchored' scope it away from genome-wide siblings like check_primer_specificity or search_off_targets, though no sibling is named explicitly.

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?

Usage is implied rather than stated — 'screening a pool tolerates a lower `strong` than checking a clone does' gives context for tuning, but there is no explicit when-to-use/when-not or named alternative among the many primer and motif-scan tools. The agent must infer that this checks binding on the currently loaded record only.

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