workbench
Server Details
Hosted DNA/RNA/protein tools: primers, oligos, PCR, cloning, CRISPR, alignment, batch & pipelines.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.1/5 across 84 of 84 tools scored. Lowest: 3/5.
Several tools overlap heavily: sequence_report and characterize_sequence both provide one-click sequence analysis; format_sequence and sequence_format_convert both handle sequence transformation; reverse_complement duplicates functionality within format_sequence. With 84 tools, an agent will struggle to pick the right one.
All tools use lowercase underscores consistently, and many follow verb_noun (find_orfs, parse_genbank) or noun_verb (codon_optimize, alphafold_lookup) patterns. Some are pure nouns (gc_content, melting_temperature) but the style is uniform.
84 tools is far beyond the typical well-scoped range. Even for a comprehensive bioinformatics suite, this creates an overwhelming selection problem and suggests insufficient consolidation.
The tool surface is extraordinarily broad, covering sequence manipulation, primer design, CRISPR/base editing, cloning, protein analysis, NGS QC, variant annotation, and session/workflow utilities. Major workflows are represented, and the few gaps (e.g., no phylogenetic tree) are minor.
Available Tools
88 toolsalphafold_lookupLook up an AlphaFold structure predictionARead-onlyIdempotentInspect
Look up a UniProt accession in the AlphaFold Protein Structure Database (CC-BY 4.0). Returns confidence, model version and structure file URLs, or {found:false} when no prediction exists for that accession.
| Name | Required | Description | Default |
|---|---|---|---|
| accession | Yes | UniProt accession, e.g. "P04637". |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint. The description adds details about return values (confidence, model version, file URLs) and the failure case ({found:false}), plus the license. No contradictions.
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, front-loaded with the core action, no redundancy.
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?
Given the simple one-parameter input and no output schema, the description fully explains the return format including success and failure cases.
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 coverage is 100% with a clear description and example. The tool description does not add further parameter guidance beyond 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 specifies the action ('look up'), the resource ('UniProt accession in the AlphaFold Protein Structure Database'), and the database license. It clearly distinguishes itself from sibling tools like 'protein_annotate' or 'sequence_fetch' by focusing solely on AlphaFold predictions.
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 implies use when needing AlphaFold predictions for a given UniProt accession. It does not explicitly state when not to use, but the narrow scope makes misapplication unlikely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aso_designASO Gapmer DesignerARead-onlyIdempotentInspect
Design antisense-oligonucleotide (ASO) gapmers against an mRNA target: scans candidate sites, builds the antisense oligo in the standard 5-10-5 architecture (chemically-modified wings, central DNA gap for RNase H1, phosphorothioate backbone), and screens each for known liabilities (G-quadruplex motifs, CpG immunostimulation, self-complementarity, GC extremes). No transcriptome-wide off-target search.
| Name | Required | Description | Default |
|---|---|---|---|
| wing | No | Modified-wing length on each side (nt); the central gap = length − 2×wing. | |
| length | No | Total gapmer length (nt). | |
| target | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint), the description adds rich behavioral context: it scans candidate sites, builds the antisense oligo with specific chemistry, screens for liabilities, and explicitly states what it does not do. This fully informs the agent of the tool's behavior.
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 long, front-loads the core purpose, and includes all essential details without unnecessary words. Every sentence 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?
While the purpose and behavior are well described, the output format is not mentioned. With no output schema to rely on, the agent is left uncertain about what the tool returns (e.g., list of designs, scores). This gap reduces completeness for a read-only design tool.
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?
The input schema covers all three parameters with descriptions, but the description adds meaningful context by explaining the 5-10-5 architecture linking wing and length, and the screening steps. This provides additional semantics beyond the schema defaults and descriptions.
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 clearly states the tool designs ASO gapmers against mRNA targets, specifies the 5-10-5 architecture, and distinguishes itself from sibling tools like siRNA or CRISPR design tools by focusing on antisense oligonucleotides and explicitly mentioning no transcriptome-wide off-target search.
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 context for when to use this tool (for ASO gapmer design) and mentions a key limitation (no transcriptome-wide off-target search), implying alternative tools might be needed for that. However, it does not explicitly name alternatives or state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
base_editing_designBase Editing DesignerARead-onlyIdempotentInspect
Design cytosine (CBE, C→T) or adenine (ABE, A→G) base-editing gRNAs for an SpCas9 target: for each NGG gRNA it reports every editable base inside the editor's activity window, flags bystander edits (more than one editable base in the window), and — with a CDS reading frame — classifies each edit's amino-acid consequence (silent / missense / nonsense / stop-loss). Bystander-free guides are ranked first. Handles both strands (a C→T on the protospacer of a reverse-strand guide is reported as the forward-strand G→A).
| Name | Required | Description | Default |
|---|---|---|---|
| editor | No | Base editor: be3/be4max (CBE, C→T) or abe7.10/abe8e (ABE, A→G). | be4max |
| target | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| frameStart | No | Optional 1-based CDS reading-frame start, to classify each edit's amino-acid consequence. | |
| targetPosition | No | Optional 1-based forward-strand position of the base you intend to edit; only guides whose window covers it are returned. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral details beyond annotations (readOnlyHint=true): it explains strand handling, reporting of forward-strand changes for reverse guides, and classification of edits. Annotations already indicate safety, so the additional context is valuable. It lacks details on output format or pagination but is sufficient.
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 a single paragraph that is front-loaded with the main purpose and contains no fluff. It is slightly long but every sentence adds value. It could be slightly more structured (e.g., bullet points) but remains clear and efficient.
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?
Given no output schema, the description fully explains what the tool returns: reported editable bases, bystander flags, amino-acid consequences, and ranking of bystander-free guides. It covers strands and editing types completely. No gaps are present.
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?
With 100% schema coverage, the description still adds significant meaning: explaining what edible bases are, what bystander edits mean, and how frameStart affects amino-acid classification. This goes beyond the schema descriptions, providing critical context for proper parameter usage.
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 clearly states the tool designs cytosine (CBE, C→T) or adenine (ABE, A→G) base-editing gRNAs for SpCas9 targets, reports editable bases, flags bystander edits, and classifies amino-acid consequences. It distinguishes itself from sibling tools like crispr_grna_design and prime_editing_design by specifying the base editing context.
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 implies usage for base editing design and differentiates from siblings by naming specific editors (CBE, ABE). However, it does not explicitly state when not to use this tool or provide alternatives, leaving some inference to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
batchBatch (one tool over many records)ARead-onlyIdempotentInspect
Run one SeqBench tool over many records at once. input is multi-FASTA or one sequence per line; tool is any batchable tool name; args are shared arguments. Returns a table of per-record results.
| Name | Required | Description | Default |
|---|---|---|---|
| args | No | Shared arguments applied to every record. | |
| tool | Yes | Batchable tool name (e.g. gc_content, translate). | |
| input | Yes | Multi-FASTA or one sequence per line. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the description does not need to reiterate safety. It adds context about batch execution and return format but lacks details on error handling or limits. With annotations, this 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?
The description is two sentences, front-loaded with core action, and every sentence adds value. No wasted words.
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 no output schema, the description mentions return format ('a table of per-record results'). Combined with annotations and schema, this is complete for an agent to select and invoke the tool correctly.
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 coverage is 100%, so baseline is 3. The description adds meaning beyond schema labels by explaining 'input' as multi-FASTA or one per line, 'tool' as any batchable tool name, and 'args' as shared arguments. This helps the agent understand parameter semantics.
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 clearly states the verb 'run' and the resource 'one SeqBench tool over many records at once'. It distinguishes from sibling tools, which are individual sequence analysis tools, making this a meta-tool for batching.
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 implies usage for applying a tool to multiple sequences, but does not explicitly state when not to use it or mention alternatives. However, given the context and sibling tools, the purpose is clear enough for an agent to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
characterize_sequenceCharacterize sequenceARead-onlyIdempotentInspect
One-paste 'tell me everything': auto-detects DNA/RNA/protein, then reports composition, ORFs, single-cutter enzymes, end primers or protein properties, plus a BLAST link.
| Name | Required | Description | Default |
|---|---|---|---|
| maxOrfs | No | Maximum number of ORFs to return, longest first. | |
| minOrfAa | No | Minimum ORF length in amino acids (nucleotide input only). | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| endPrimerLength | No | Length of the naive end primers taken from each end. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint and idempotentHint. The description adds behavioral context by listing the types of analyses performed (composition, ORFs, enzymes, etc.), which helps the agent understand the scope. No contradictions with annotations.
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 a single, concise sentence that front-loads the key purpose and lists the outputs efficiently. No unnecessary words.
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?
Given the tool's complexity (multiple analysis types), the description covers the main outputs. However, it does not mention the output format or any caveats (e.g., optional parameters). Annotations and schema cover safety and parameter details, so overall completeness is good but not perfect.
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 parameter meanings are well-documented in the schema. The description adds no additional parameter semantics beyond what is in the schema, so baseline score 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 clearly states that the tool auto-detects sequence type and provides a comprehensive characterization including composition, ORFs, enzymes, primers, protein properties, and a BLAST link. This effectively differentiates it from siblings that focus on specific aspects like find_orfs or protein_properties.
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 implies the tool is for comprehensive analysis ('One-paste tell me everything'), but does not explicitly state when to use it versus alternatives or when not to use it. Sibling tools provide context, but the description lacks direct guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloning_simulateCloning simulatorARead-onlyIdempotentInspect
Assemble fragments by Gibson/overlap, Golden Gate (Type IIS) or restriction–ligation, returning the product and junction primers.
| Name | Required | Description | Default |
|---|---|---|---|
| names | No | Optional labels for each fragment. | |
| enzyme | No | Type IIS enzyme for Golden Gate — one of BsaI, BbsI, Esp3I (BsmBI); "BsmBI" also resolves to Esp3I. Any other name is rejected rather than substituted. | BsaI |
| insert | No | Insert sequence (restriction method). | |
| method | Yes | Assembly method. | gibson |
| vector | No | Vector sequence (restriction method). | |
| enzyme3 | No | Insert 3′ enzyme (restriction method). | BamHI |
| enzyme5 | No | Insert 5′ enzyme (restriction method). | EcoRI |
| circular | No | Produce a circular product. | |
| topoMode | No | TOPO chemistry (topo method): TA (Taq 3′-A), blunt, or directional (pENTR/D-TOPO, needs 5′-CACC on the insert). | ta |
| fragments | No | Fragments (5′→3′), assembled head-to-tail. Used by gibson/goldengate. | |
| overlapLen | No | Gibson homology-arm length (bp). | |
| armTmTarget | No | Target annealing Tm (°C) for primer arms. | |
| vectorEnzyme3 | No | Vector 3′ enzyme (restriction method); defaults to enzyme3. | |
| vectorEnzyme5 | No | Vector 5′ enzyme (restriction method); defaults to enzyme5. Set a different, compatible enzyme (e.g. BglII for a BamHI insert) to model heterologous-overhang cloning. | |
| dephosphorylateVector | No | CIP/rSAP-dephosphorylate the vector to suppress self-ligation background (restriction method). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the description's addition of returning product and junction primers adds some context but does not disclose potential edge-case behaviors like enzyme name rejection or method-specific constraints. No contradiction with annotations is present.
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 a single, front-loaded sentence that states the core action and output without any filler. It is concise and efficiently communicates the essential purpose.
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 description provides a clear high-level summary and return value, which is helpful given the absence of an output schema. However, for a complex 15-parameter tool with multiple methods, a slightly richer description of what the output looks like (e.g., format of product or primers) would improve completeness. The rich schema and annotations mitigate this gap.
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% with detailed descriptions for every parameter, including defaults and method-specific usage. The tool description itself does not add parameter semantics, but the schema already carries the full burden, so the baseline score of 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 clearly states the tool assembles fragments via Gibson/overlap, Golden Gate (Type IIS), or restriction–ligation, and returns the product and junction primers. It uses a specific verb and resource, and the mention of multiple methods distinguishes it from simpler sibling tools like double_digest or in_silico_pcr.
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 implies use for simulating cloning assemblies but does not explicitly contrast with sibling tools such as golden_gate_fidelity or verify_assembly. It gives no when-not guidance or alternatives, leaving the agent to infer usage from the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
codon_adaptation_indexCAI analyserBRead-onlyIdempotentInspect
Codon Adaptation Index (CAI) and per-codon relative adaptiveness of a CDS against an expression host, with rare-codon and GC3 analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| organism | No | ecoli | |
| sequence | Yes | Coding sequence (DNA/RNA; should start in-frame at ATG). | |
| frameStart | No | 1-based position to start reading codons. | |
| rareThreshold | No | Relative adaptiveness (w) below this flags a codon as rare. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the description does not need to restate these. The description adds context about the analysis outputs (CAI, adaptiveness, rare-codon, GC3) but does not disclose any unexpected behaviors, side effects, or limitations beyond what annotations provide.
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 a single well-formed sentence that efficiently conveys the tool's purpose without redundancy. Every word contributes to meaning, making it easy to scan and understand quickly.
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 has moderate complexity (4 parameters, no output schema), but the description does not explain what the tool returns (e.g., numerical values, plots, or a report). It omits details about output format, error conditions, or required input validation, leaving the agent to infer behavior.
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 75%, and the schema itself provides clear descriptions for all parameters (e.g., sequence: 'should start in-frame at ATG'). The description adds no new meaning beyond listing the analysis components, so it meets the baseline but does not enhance parameter understanding.
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 explicitly states that the tool computes Codon Adaptation Index and per-codon relative adaptiveness for a coding sequence against an expression host, including rare-codon and GC3 analysis. This clearly identifies the tool's specific function and distinguishes it from sibling tools like codon_optimize and gc_content.
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 no guidance on when to use this tool versus alternatives (e.g., codon_optimize for modification, gc_content for simple GC). It does not mention exclusions or prerequisites, such as requiring a valid coding sequence starting with ATG.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
codon_optimizeCodon optimiserARead-onlyIdempotentInspect
Codon-optimise a protein (or coding DNA) for an expression host by picking the most-frequent codon per residue.
| Name | Required | Description | Default |
|---|---|---|---|
| protein | Yes | Protein sequence (one-letter codes). Coding DNA/RNA is accepted and translated in frame +1 up to the first stop codon (residues after an in-frame stop are NOT optimised). | |
| organism | No | ecoli | |
| inputType | No | How to read `protein`. 'auto' guesses from the alphabet (>90% ACGTUN reads as DNA), which mis-files genuine Ala/Cys/Gly/Thr/Asn-only peptides — set 'protein' or 'dna' to force it. | auto |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds the deterministic algorithm ('most-frequent codon per residue'), which reinforces idempotency. It does not mention that coding DNA is translated in frame +1 up to the first stop codon (a key behavior), though that detail is captured in the input schema's protein parameter description. Overall, it adds some useful context beyond annotations.
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 a single sentence, front-loaded with the purpose, and contains no superfluous words. It effectively communicates the core function and method in a compact form.
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, and the description does not explicitly state what the tool returns (presumably an optimized DNA sequence). It also omits how the tool handles ambiguous inputs (e.g., protein-only vs DNA) beyond the 'protein' parameter schema. For an agent to know the invocation's result, this is a notable gap, though the tool's simplicity mitigates it.
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 67%, with detailed descriptions for 'protein' and 'inputType'. The main description adds the term 'expression host' which maps to the 'organism' parameter, but does not further explain the 'organism' enum or default. The schema itself provides sufficient meaning for all parameters, so the description does not need to compensate much.
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 uses a specific verb ('Codon-optimise') with a clear resource ('a protein (or coding DNA)') and states the method ('picking the most-frequent codon per residue'). It clearly distinguishes from siblings like 'reverse_translate' (which does not optimize for a host) and 'codon_adaptation_index' (which computes a score, not an optimized sequence).
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 implies use for host-specific codon optimization ('for an expression host'), but does not explicitly state when to use this tool versus alternatives or when not to use it. Sibling tools like 'reverse_translate' are not mentioned as alternatives, and no exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
construct_autofixConstruct auto-fix (domestication)BRead-onlyIdempotentInspect
Iteratively substitutes synonymous codons to resolve unwanted restriction sites (domestication for Golden Gate), homopolymers, tandem repeats, predicted secondary structure, cryptic RBS/polyA motifs and hidden alternate-frame ORFs that construct_qc flags — without changing the encoded protein (verified). Does NOT touch premature stops or GC extremes; re-run construct_qc afterward to confirm. A native TypeScript alternative to a constraint-solver sidecar.
| Name | Required | Description | Default |
|---|---|---|---|
| gcLow | No | ||
| gcHigh | No | ||
| gcWindow | No | ||
| organism | No | Codon-usage table to prefer among synonymous options. | ecoli |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| maxPasses | No | Repeat full passes until clean or no further progress. | |
| frameStart | No | 1-based nucleotide where the reading frame begins. | |
| avoidEnzymes | No | Enzyme names whose internal sites should be removed (e.g. ["BsaI","BsmBI"] for Golden Gate domestication). | |
| homopolymerMin | No | ||
| crypticOrfMinAa | No | Minimum peptide length (aa) for a hidden alternate-frame ORF to be flagged. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description contradicts the annotation readOnlyHint=true because the tool clearly modifies the sequence (substitutes codons). According to the rule, a score of 1 is given when description contradicts annotations. The description itself is transparent, but the contradiction undermines trust.
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 extremely concise with four sentences covering purpose, scope, limitations, and context. Every sentence earns its place with no redundancy.
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?
Given the complexity (10 parameters, no output schema) and the annotations with contradictions, the description covers the main purpose and limitations but lacks details on output format, error cases, and parameter interplay. It is minimally adequate but leaves gaps.
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 60%, but the tool description adds no additional information about the 10 parameters. The description does not explain parameter roles, defaults, or interactions beyond what is in the schema, so it fails to add value.
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 clearly states the tool iteratively substitutes synonymous codons to resolve unwanted restriction sites and other issues flagged by construct_qc, without changing the encoded protein. It distinguishes itself from sibling tools like construct_qc and codon_optimize by focusing on fix-ups after QC.
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 advises to re-run construct_qc afterward, implies it should be used after construct_qc detects problems, and states what it does NOT touch (premature stops, GC extremes). This provides clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
construct_qcConstruct QC linterARead-onlyIdempotentInspect
Lint a coding DNA sequence for premature stops, internal RBS/polyA motifs, unwanted restriction sites, GC extremes and repeats.
| Name | Required | Description | Default |
|---|---|---|---|
| gcLow | No | GC% below this flags an AT-rich window. | |
| gcHigh | No | GC% above this flags a GC-rich window. | |
| gcWindow | No | Sliding-window size (nt) for GC-extreme scanning. | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| frameStart | No | 1-based nucleotide where the reading frame begins. | |
| avoidEnzymes | No | Enzyme names whose internal sites should be flagged as errors. Matched against the curated common-enzyme set plus the Golden Gate Type IIS enzymes (BsaI, BbsI, Esp3I/BsmBI); an unrecognised name is rejected, never skipped. | |
| homopolymerMin | No | Minimum run length to flag a homopolymer. | |
| crypticOrfMinAa | No | Minimum peptide length (aa) for a hidden alternate-frame ORF to be flagged. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is covered. The description adds behavior by enumerating the features it flags, which suggests the output will be a report of those issues. It does not contradict the annotations and adds useful context beyond what annotations declare, though it does not specify output format or error handling.
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 a single sentence that front-loads the verb 'Lint' and immediately enumerates the checks in a compact list. Every word contributes meaning, and there is zero fluff or redundancy.
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?
With 8 parameters and no output schema, the description plus the rich schema annotations cover the behavior well. The absence of an explicit return-format description is a minor gap, but the term 'lint' implies a report, and the enumerated checks give a clear picture of what will be flagged. The tool's scope is adequately complete for selection and invocation.
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 every parameter (sequence, gcLow, gcHigh, gcWindow, frameStart, avoidEnzymes, homopolymerMin, crypticOrfMinAa) has a rich description and defaults. The tool description itself does not discuss parameters, but the schema fully carries that burden, so the baseline of 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 uses a specific verb ('Lint') and a specific resource ('coding DNA sequence'), and enumerates the exact checks it performs: premature stops, internal RBS/polyA motifs, unwanted restriction sites, GC extremes, and repeats. This clearly distinguishes it from siblings like gc_content or restriction_sites, which target only a single check.
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 conveys a clear use case: comprehensive QC of a coding DNA construct. It implies that this tool should be used when multiple sequence features need to be validated at once, but it does not explicitly name alternatives or state when not to use it. Hence it provides clear context without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
crispr_grna_designCRISPR gRNA designerARead-onlyIdempotentInspect
Find and score candidate guide RNAs (protospacer + PAM) in a target DNA for common nucleases (SpCas9, SpCas9-NG, SaCas9, Cas12a). PREDICTED, NOT MEASURED. No held-out skill statistic is claimed. Both are pre-2016 models superseded in accuracy by Rule Set 2 / Azimuth and by DeepSpCas9, neither of which is shipped here. Treat the ordering as a ranking aid, not an efficiency prediction. Valid for: SpCas9 with an NGG PAM and a 20 nt spacer, and only when enough genomic flanking context is present to build the model's 30-mer / 35-mer window — both scores are null rather than padded otherwise. Nothing is predicted for SaCas9, Cas12a or SpCas9-NG.
| Name | Required | Description | Default |
|---|---|---|---|
| minScore | No | Only return guides with a heuristic score at least this high (0–100). | |
| nuclease | No | Nuclease id. Omit to just list the available nucleases (no scan is performed). | spcas9 |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| searchReverseStrand | No | Also scan the reverse strand for guides. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as readOnlyHint=true and idempotentHint=true. The description goes well beyond by stating that scores are predicted, not measured; that models are pre-2016 and superseded; that ordering is a ranking aid only; and that scores are null rather than padded for invalid conditions (SaCas9, Cas12a, SpCas9-NG). This fully discloses the tool's limitations and behavior, adding significant transparency.
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 front-loaded with the main purpose in the first sentence. Every subsequent sentence adds value (caveats, validity conditions). While it could be slightly more concise by merging some warnings, the trade-off for clarity is acceptable. No superfluous text.
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 lacking an output schema, the description explains what the output contains (scored guides), when scores are null, and what the order means. It also handles edge cases (no scan if nuclease omitted). For a tool of this complexity (multiple nucleases, scoring models, validity conditions), the description is remarkably complete without needing to reference external documentation.
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 coverage is 100% — all four parameters have descriptions in the JSON schema. The description does not add new parameter-specific details beyond what the schema already provides (e.g., minScore default, nuclease enum, sequence format, searchReverseStrand). According to guidelines, with high schema coverage the baseline is 3, and the description does not improve upon this.
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 explicitly states the tool finds and scores candidate guide RNAs for specific nucleases, which clearly distinguishes it from siblings like crispr_offtarget_check, prime_editing_design, and others. The verb 'Find and score' paired with 'candidate guide RNAs' makes the action and resource unambiguous, and the listed nuclease names differentiate from related CRISPR tools.
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 strong usage context: it warns that predictions are not measured, models are superseded, and ordering is only a ranking aid. It also specifies validity conditions (only SpCas9 with NGG PAM and sufficient flanking context; null scores otherwise). However, it does not explicitly name alternative tools (e.g., more accurate models) or say when to prefer those, leaving the agent to infer from the caveats.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
crispr_hdr_donorHDR donor designerARead-onlyIdempotentInspect
Build an HDR donor (homology arms flanking an edit) from a target sequence and either an explicit edit window (editStart/editEnd) or a guide's cut site (guideStart/guideEnd/guideStrand/nuclease — SpCas9-family only; Cas12a's staggered cut needs an explicit editStart/editEnd). Also designs genotyping primers spanning the edit site on the original sequence (a real size-shift or sequencing target to confirm the edit), reusing the same primer-design engine as primer_design.
| Name | Required | Description | Default |
|---|---|---|---|
| editEnd | No | 1-based inclusive end of the region being replaced; editEnd = editStart-1 denotes a pure insertion with nothing removed. Omit to derive from the guide's cut site. | |
| blockPam | No | When a SpCas9-family guide is supplied and the edit does not already disrupt its PAM, fold a PAM-blocking mutation (silent when a CDS frame is given) into the donor so the edited allele can't be re-cut. | |
| guideEnd | No | 1-based forward-strand end of the guide's protospacer. | |
| nuclease | No | Needed only when deriving the cut site from guideStart/guideEnd/guideStrand. | spcas9 |
| armLength | No | Homology arm length (bp) on each side. Use ~30–60 for an ssODN donor, ~500–1000 for a dsDNA donor plasmid. | |
| editStart | No | 1-based start of the region being replaced. Omit to derive from guideStart/guideEnd/guideStrand instead. | |
| frameStart | No | Optional 1-based CDS reading-frame start; makes the PAM-blocking mutation synonymous where possible. | |
| guideStart | No | 1-based forward-strand start of the guide's protospacer (alternative to editStart/editEnd, for an insertion exactly at the cut site). | |
| guideStrand | No | Strand the guide's protospacer is on. | |
| replacement | Yes | Sequence to insert/substitute ("" for a pure deletion). | |
| targetSequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| designGenotypingPrimers | No | Also design a primer pair (on the original targetSequence) whose product spans the edit site. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, establishing safety. The description adds meaningful context: it reuses primer_design engine, auto-designs genotyping primers, and handles PAM disruption. No contradictions with annotations. Additional detail about 'real size-shift or sequencing target' adds transparency.
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 a single paragraph of about 4 sentences, front-loaded with the core purpose. Every sentence contributes necessary information without redundancy. It efficiently covers modes, nuclease constraints, and secondary functionality (genotyping primers).
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 description explains inputs and high-level outputs but does not specify the exact return format (e.g., what sequences or primer pairs are returned). Since there is no output schema, this information is needed for the agent to understand how to use the result. Otherwise, it covers the main use cases and parameter interactions.
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 baseline is 3. The description adds value beyond the schema by grouping parameters into two modes (edit window vs guide cut) and explaining edge cases like Cas12a requiring explicit edit window. It also clarifies the purpose of blockPam and frameStart in the context of PAM disruption.
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 clearly states the tool builds an HDR donor with homology arms flanking an edit. It specifies two modes: explicit edit window or guide cut site, and mentions it designs genotyping primers. It distinguishes from sibling tools like primer_design by noting it reuses its engine, and covers nuclease-specific constraints (Cas12a needs explicit window). No ambiguity.
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 clear guidance on when to use explicit editStart/editEnd versus guide parameters, especially for Cas12a. It also explains PAM-blocking behavior. However, it does not explicitly compare to other design tools like prime_editing_design or base_editing_design, leaving the decision to the agent's broader context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
crispr_offtarget_checkCRISPR guide off-target checkARead-onlyIdempotentInspect
Screen a guide's protospacer for off-target sites (protospacer match + valid PAM, both strands) against a small curated set of common lab reference genomes (see genomesChecked) — NOT a whole human/mouse genome search. For SpCas9 with a 20 nt spacer each site also gets a Doench 2016 CFD score, so sites are ranked by predicted cut likelihood rather than by mismatch count alone, and the guide gets an aggregate specificity. Use this the same way primer_specificity is used: a useful sanity check within the covered organisms, not a clearance guarantee for a mammalian expression host. PREDICTED, NOT MEASURED. Best of the common off-target scores on the authors' GUIDE-Seq comparison, at Pearson r = 0.40 over 9 guides and 402 sites (vs CCTop 0.31, Hsu-Zhang 0.26) — a useful ranking, not a reliable magnitude. Weights were measured for SINGLE mismatches; multiple mismatches are multiplied, and Listgarten et al. 2018 note the training data never contained a mismatch and an alternative PAM together, so that combination is extrapolation. Valid for: SpCas9 with a 20 nt spacer, which is the only case scored — every other nuclease returns null rather than a number from the wrong enzyme's table. One locus, one cell line. Substitutions only: DNA/RNA bulges are neither searched nor scorable, and a low score is not a claim that a site is safe.
| Name | Required | Description | Default |
|---|---|---|---|
| nuclease | No | Nuclease id — determines the PAM pattern/side required at each candidate site. | spcas9 |
| protospacer | Yes | The guide's protospacer sequence, 5'→3' (no PAM). Max 32 nt — every supported nuclease uses a 20–23 nt guide. | |
| maxMismatches | No | Mismatches tolerated between the protospacer and a candidate genomic site. Max 4 — a complete search seeds on maxMismatches+1 non-overlapping blocks, and past that the blocks are too short to be selective against a multi-Mb genome (a site that mismatched more would not be cut anyway). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, openWorldHint, and idempotentHint. Description adds extensive behavioral detail: CFD scoring only for SpCas9 20nt spacer, Pearson correlation 0.40, single mismatch limitation, null returns for unsupported nucleases, and that DNA/RNA bulges are not searched. No contradictions with annotations.
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 front-loaded with the core purpose and then adds important caveats. It could be slightly more concise (e.g., the GUIDE-Seq comparison detail is valuable but adds length), but each sentence earns its place for capturing nuanced behavior. No waste.
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?
Given the tool's complexity (3 parameters, no output schema, nuanced behavioral constraints), the description covers purpose, scope, limitations, scoring validity, and exception cases. Without output schema, describing the ranking output would improve completeness, but the description is already thorough for a read-only computation tool.
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 baseline is 3. Description adds value by explaining the broader context: that maxMismatches seeding uses maxMismatches+1 blocks, and that nuclease determines PAM pattern. However, it doesn't explicitly describe the allowed sequence range for protospacer beyond what schema provides.
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?
Description clearly states the tool screens a protospacer for off-target sites (protospacer match + valid PAM, both strands) against curated lab reference genomes, not whole genomes. This distinctively positions it from sibling tools like crispr_grna_design or primer_specificity, with explicit scope limitations.
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 to use 'the same way primer_specificity is used: a useful sanity check within the covered organisms, not a clearance guarantee.' States what it's NOT (whole genome search, measured data, safe for multiple mismatches + PAM combinations, valid for non-SpCas9 nucleases). Provides clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cross_dimerCross-DimerARead-onlyIdempotentInspect
Screen two oligos for the most stable heterodimer (cross-dimer) between them.
| Name | Required | Description | Default |
|---|---|---|---|
| sequenceA | Yes | First oligo (5'→3'). | |
| sequenceB | Yes | Second oligo (5'→3'). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only and idempotent, but description does not explain what the output or behavior is (e.g., returns stability score, temperature). Without output schema, more detail needed.
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?
Single sentence, front-loaded, no redundancy.
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?
Tool is simple with 2 params fully covered, annotations present. Lacks output description, but sufficient for basic understanding.
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 coverage 100% with descriptions 'First oligo (5'→3')' and 'Second oligo (5'→3')'. Description adds no extra meaning beyond schema, but baseline is adequate.
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?
Clear verb 'Screen' and resource 'two oligos' with specific purpose 'most stable heterodimer'. Distinct from sibling tools like 'primer_design' or 'oligo_analysis'.
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?
No explicit guidance on when to use vs alternatives. Implied by name and context, but missing when not to use or examples.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dna_molarityDNA molarity calculatorARead-onlyIdempotentInspect
Nucleic-acid quantity conversions: molar mass, amount (pmol/nmol), molar and mass concentration, and copy number, from mass ± volume and either a length or a sequence.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Molecule type. | dsDNA |
| length | No | Length in bp (dsDNA) or nt (ssDNA/ssRNA). Ignored when a sequence is given. | |
| massNg | No | Mass in nanograms. | |
| sequence | No | Optional sequence — overrides length and gives an exact molar mass from base composition. | |
| volumeUl | No | Volume in microlitres (0 = unknown; needed for concentration). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals the tool produces multiple computed values (molar mass, amount, concentration, copy number) which are not captured in annotations or schema. It also clarifies the relationship between inputs (mass ± volume, length or sequence). Annotations already indicate read-only and idempotent behavior, so the description adds valuable output context without contradiction.
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 a single, front-loaded sentence that conveys the complete purpose and key input-output relationships without unnecessary words. Every part of the sentence adds value, making it highly efficient.
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 lacking an output schema, the description enumerates the computed quantities (molar mass, amount, concentration, copy number) and specifies inputs and prerequisites. Combined with full parameter descriptions in the schema and safety annotations, the tool is fully comprehensible for an AI agent.
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?
The input schema has 100% description coverage, fully documenting each parameter. The description recaps input types but adds no additional semantics beyond what the schema already provides (e.g., defaults, relationships). The phrase 'from mass ± volume and either a length or a sequence' succinctly summarizes inputs but does not enhance parameter understanding.
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 clearly states the tool performs nucleic-acid quantity conversions including molar mass, amount, concentration, and copy number. It specifies input requirements (mass, volume, length/sequence) and output types, making the purpose unambiguous and distinct from all listed sibling tools which focus on design, analysis, or sequence manipulation.
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 implies usage when molarity/concentration conversions are needed but does not explicitly state when to use or avoid this tool relative to alternatives. No exclusions or comparisons are provided, though the specificity of the function makes the context clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
double_digestDouble digest bufferARead-onlyIdempotentInspect
Recommend a single NEB buffer (and flag caveats) for digesting with two enzymes in one tube.
| Name | Required | Description | Default |
|---|---|---|---|
| enzymeA | Yes | First enzyme name (e.g. EcoRI). | |
| enzymeB | Yes | Second enzyme name (e.g. BamHI). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint as true, indicating safe, idempotent operation. The description adds behavioral context by mentioning 'flag caveats', which warns about potential issues (e.g., incompatibility). No contradiction with annotations.
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 a single sentence that captures the full purpose, including both the primary action and a note about caveats. Every word earns its place; no unnecessary 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?
Given the tool's simplicity (no output schema, two string parameters), the description fully conveys what the tool does and what it returns (a recommendation with caveats). No missing information for an agent to invoke it correctly.
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?
Input schema coverage is 100% with descriptions for both parameters ('First enzyme name' and 'Second enzyme name'). The description does not add additional meaning beyond the schema, so baseline of 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 uses a specific verb ('Recommend') and resource ('a single NEB buffer') with clear context ('digesting with two enzymes in one tube'). It uniquely identifies the tool among siblings like 'restriction_sites' which deals with site mapping, not buffer selection.
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 clearly implies when to use: when performing a double digest with two enzymes needing a buffer recommendation. No explicit when-not or alternatives are provided, but the narrow scope makes it distinct from siblings, and the context is clear enough for an agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_echo_picklistEcho picklist exportARead-onlyIdempotentInspect
Generate a downloadable Beckman/Labcyte Echo acoustic-liquid-handler picklist CSV (columns: Source Plate Name, Source Plate Type, Source Well, Destination Plate Name, Destination Well, Transfer Volume, Name — the header row reproduced from PyEcho, a real open-source Echo-picklist generator) for the given PCR reactions, at the same well positions export_plate_layout assigns. Assumes a 5 uL Echo-scale PCR reaction (master mix 2500 nL, each primer 250 nL, template 250 nL, water 1750 nL) — a commonly used acoustic-dispensing miniaturization scale, not a universal standard; rescale the volumes for your own protocol. Source/Destination Plate Type uses a placeholder Echo plate-type code (384PP_AQ_BP) — replace with the exact type from your own Echo Plate Type Library. Each distinct template label gets its own well on the TemplateSource plate, row-major (A1, A2, … A24, then B1, …) across that 384-well source plate.
| Name | Required | Description | Default |
|---|---|---|---|
| reactions | Yes | One entry per PCR reaction, up to 96 (a single 96-well plate). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the tool's safety profile is known. The description adds substantial behavioral context: the CSV columns, the plate type placeholder, the well-layout logic (row-major across a 384-well plate), and the assumption of a 5 uL reaction with explicit volume breakdowns. It also discloses that the plate type code is a placeholder, which is a non-obvious caveat. No contradictions exist.
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 dense but not wasteful. The first sentence captures the core purpose, and subsequent sentences provide important details (column names, volume assumptions, plate placeholder, well ordering). Every sentence adds value, though it is longer than strictly necessary and could be split into a summary plus caveats.
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?
With no output schema, the description carries the burden of explaining the return value, and it does so thoroughly: it names the CSV columns, describes plate type placeholders, explains the source plate layout, and flags that the volume scale is not universal. It also references how positions relate to export_plate_layout, which gives richer context. The tool's assumptions and limitations are clearly stated.
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?
The schema covers 100% of the single parameter 'reactions' with nested object descriptions and a max of 96 entries. The description adds meaningful semantics beyond the schema by explaining how distinct template labels are assigned to unique wells and connecting the parameter to the output layout and volume assumptions. This goes beyond a baseline of 3.
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 begins with 'Generate a downloadable Beckman/Labcyte Echo acoustic-liquid-handler picklist CSV', which clearly states the action (generate), resource (picklist CSV), and target platform (Echo). It distinguishes from siblings like export_plate_layout and export_opentrons_protocol by specifying the exact output format and its association with Echo acoustic dispensing.
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 context: it is for PCR reactions on an Echo acoustic liquid handler, and it aligns well positions with export_plate_layout. However, it does not explicitly mention when not to use it or name alternatives such as export_opentrons_protocol, so exclusions are absent. The context is strong, but the guidance could be more direct.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_opentrons_protocolOpentrons protocol exportARead-onlyIdempotentInspect
Generate a downloadable Opentrons Python Protocol API (v2, OT-2) script that sets up the given PCR reactions on a 96-well PCR plate, at the same well positions export_plate_layout assigns. Uses real Opentrons labware/pipette API names confirmed against docs.opentrons.com and the Opentrons shared-data labware-definitions repository (opentrons_96_wellplate_200ul_pcr_full_skirt, opentrons_96_tiprack_20ul, opentrons_24_tuberack_nest_1.5ml_snapcap, nest_12_reservoir_15ml, p20_single_gen2) and the confirmed load_labware/load_instrument/transfer method signatures. Master-mix/primer/template/water volumes are clearly-labeled placeholder constants at the top of the script — this is a starting point to review and adapt for your own enzyme and instrument, not a certified ready-to-run protocol.
| Name | Required | Description | Default |
|---|---|---|---|
| reactions | Yes | One entry per PCR reaction, up to 96 (a single 96-well plate). | |
| protocolName | No | Optional protocol name (used in the script's metadata). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint and idempotentHint; the description adds context that the output is a downloadable script with placeholder volumes and labware names, needing review. It does not contradict annotations and provides useful behavioral context.
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 detailed but front-loads the purpose. It is not overly long; each sentence adds value. Could be slightly more concise, but effectively structured.
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?
Given no output schema, the description adequately explains what the tool generates and its nature (starting point, not certified), referencing related tools. It covers the usage scenario sufficiently.
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 coverage is 100%, but the description adds meaning by noting that master-mix volumes are placeholder constants and that the script uses confirmed labware/pipette API names, enhancing understanding beyond 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 uses specific verb 'Generate' and resource 'downloadable Opentrons Python Protocol API script', clearly stating the tool's function. It distinguishes itself from the sibling 'export_plate_layout' by referencing well positions from that tool.
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 implies usage for setting up PCR reactions on a 96-well plate and mentions the script is a starting point, but does not explicitly state when to use vs alternatives (e.g., other export tools) or provide exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_plate_layoutPCR plate layoutARead-onlyIdempotentInspect
Assign a set of PCR reactions (name + forward/reverse primer + optional template label) to wells on a 96-well plate, row-major (A1, A2, … A12, then B1, B2, … up to H12). Returns the well-assignment data for rendering a plate diagram; export_opentrons_protocol and export_echo_picklist build their downloadable files from this exact same layout, so all three always agree.
| Name | Required | Description | Default |
|---|---|---|---|
| reactions | Yes | One entry per PCR reaction, up to 96 (a single 96-well plate). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, indicating safe, idempotent operation. The description adds behavioral details: row-major well assignment and the fact that the layout is shared with export tools, ensuring agreement. No contradictions with annotations.
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 long, front-loads the core purpose, and adds necessary context about sibling tools. Every sentence contributes value without redundancy.
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?
Given the tool has one parameter, no output schema, and good annotations, the description adequately covers what the tool does, its input constraints, and its relationship to sibling tools. It could be improved by mentioning error conditions or further behavior details, but it is largely complete for an agent to select and invoke.
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 coverage is 100%, and the schema already describes the 'reactions' array and its properties. The description reiterates the fields (name, forward, reverse, template) but adds no new semantic detail beyond the schema. The row-major ordering pertains to output, not parameter semantics.
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 clearly states the tool assigns PCR reactions to a 96-well plate in row-major order and returns well-assignment data for a plate diagram. It distinguishes itself from related tools by mentioning that export_opentrons_protocol and export_echo_picklist use the same layout, ensuring consistency.
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 implies when to use this tool (for plate layout and diagram rendering) versus the sibling export tools (for file creation), but it does not explicitly state exclusion conditions or provide definitive guidance on tool selection. The mention of sibling agreement helps, but could be more direct.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
expression_heatmap_clusterExpression heatmap clusteringARead-onlyIdempotentInspect
Hierarchically cluster a genes x samples expression matrix (UPGMA/average, complete, or single linkage; Euclidean or correlation distance) and return the row/column leaf order, dendrogram merge trees, and row-z-scored values for the Clustered Expression Heatmap visualization.
| Name | Required | Description | Default |
|---|---|---|---|
| genes | Yes | Row (gene) labels. | |
| values | Yes | genes x samples numeric matrix — one row per gene, in the same order as `genes`. | |
| linkage | No | average = UPGMA (standard default), complete = farthest-neighbor, single = nearest-neighbor. | average |
| samples | Yes | Column (sample) labels. | |
| zScoreRows | No | Row-wise z-score each gene's values before clustering and returning (the conventional 'relative expression' heatmap normalization — the dendrograms are computed on the same scaled matrix the heatmap shows, as in seaborn's clustermap(z_score=0) / pheatmap's scale="row"). | |
| clusterCols | No | Cluster (reorder) samples. | |
| clusterRows | No | Cluster (reorder) genes. | |
| distanceMetric | No | correlation = 1 - Pearson r (the standard expression-heatmap default); euclidean = straight-line distance. | correlation |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, so the agent knows it is a safe, deterministic operation. The description adds value by specifying the outputs (leaf order, merge trees, z-scored values) and describing the computation, which goes beyond the annotations. It does not mention potential limitations like matrix size or missing data handling.
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 one dense but efficient sentence that covers the core function, algorithmic options, and outputs without redundancy. It is front-loaded with the primary action and every clause contributes to understanding the tool.
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?
Given the tool's complexity (8 params, no output schema), the description provides a solid overview of inputs, processing, and outputs. It names the return artifacts explicitly, which is helpful. It could be more explicit about the exact data structure of merge trees or edge-case behavior, but the core purpose and data flow are clear.
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?
All 8 parameters have detailed descriptions in the schema (100% coverage), including the meaning of linkage, distanceMetric, and zScoreRows. The main description only briefly summarizes options already present in the schema, so it does not add substantial meaning beyond 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 clearly states the tool hierarchically clusters a genes x samples expression matrix and returns specific artifacts (leaf order, dendrogram merge trees, row-z-scored values) for a heatmap visualization. This distinctly differentiates it from sibling tools like gene_expression or volcano_plot_data.
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 context is clear: it is a data-preparation step for the 'Clustered Expression Heatmap visualization.' However, it doesn't explicitly mention when to avoid using it or suggest alternative tools, which keeps it from a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fastq_qc_reportFASTQ Deep QC ReportARead-onlyIdempotentInspect
FastQC-style deep quality-control report for a FASTQ file: per-base quality and content, GC and length distributions, sequence duplication levels, overrepresented sequences, and adapter content — each with a warn/fail verdict against FastQC's own published thresholds.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes | FASTQ text: records of an '@id' header, sequence, '+' separator and quality line (four lines each). | |
| qualityOffset | No | FASTQ Phred ASCII offset (33 = Sanger/Illumina 1.8+, 64 = Illumina 1.3-1.7). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true and idempotentHint=true, so the tool's safety is clear. The description adds detail on the report contents (e.g., per-base quality, GC content) but does not reveal additional behavioral traits like output format or potential limitations.
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 a single, well-structured sentence that front-loads key information about the tool's purpose and components. No redundant words.
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 no output schema, the description does not specify the output format (JSON, text, etc.) or provide details on return structure. For a complex tool generating multiple QC modules, this omission leaves the agent uncertain about what to expect.
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?
Input schema has 2 parameters with 100% description coverage, so the schema already documents them. The description adds no extra meaning beyond the schema, meeting the baseline of 3.
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 clearly identifies the tool as a FastQC-style deep QC report for FASTQ files, listing specific modules (per-base quality, GC distribution, etc.) and mention of warn/fail verdicts against FastQC thresholds. This distinguishes it from siblings like fastq_trim or seqfile_stats.
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 does not explicitly state when to use this tool versus alternatives like seqfile_stats for basic stats or fastq_trim for trimming. Usage context is implied by the tool's purpose, but no explicit when-to-use or when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fastq_trimFASTQ Adapter & Quality TrimmerARead-onlyIdempotentInspect
Trim FASTQ reads: an ungapped sliding-suffix adapter match (against the same named Illumina adapters as the QC report) followed by a BWA-style 3' quality trim (the same algorithm Cutadapt's own -q option reuses), then drops reads below a minimum length. Returns the trimmed FASTQ plus before/after read-count, mean-length and mean-quality stats.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes | FASTQ text: records of an '@id' header, sequence, '+' separator and quality line (four lines each). | |
| minLength | No | Reads shorter than this after trimming are dropped. | |
| qualityOffset | No | FASTQ Phred ASCII offset (33 = Sanger/Illumina 1.8+, 64 = Illumina 1.3-1.7). | |
| qualityThreshold | No | 3' quality-trim threshold (Phred score). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and idempotentHint=true, and the description adds details about the trimming algorithms (ungapped sliding-suffix adapter match, BWA-style quality trim) and the outcome (drops short reads, returns stats). This adds value beyond annotations.
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 a single dense paragraph that efficiently states the purpose, algorithm, and output. It is appropriately sized and front-loaded, though could be slightly more concise.
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?
Given the tool's moderate complexity and absence of output schema, the description adequately covers purpose, algorithm, and return values (trimmed FASTQ plus stats). It lacks error conditions or input format verification, but schema covers input format.
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 coverage is 100%, so baseline is 3. The description mentions the minLength parameter implicitly by saying 'drops reads below a minimum length', but does not add significant meaning beyond what the schema already provides for each parameter.
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 clearly states it trims FASTQ reads with adapter and quality trimming, specifying the exact algorithm and returning trimmed FASTQ plus statistics. The verb 'trim' and resource 'FASTQ reads' are specific, and it distinguishes from sibling tools like fastq_qc_report which focuses on QC reporting.
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 implicitly defines usage for trimming FASTQ with adapter and quality trimming, but does not explicitly exclude other use cases or name alternative tools. It provides clear context but lacks exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_orfsORF FinderARead-onlyIdempotentInspect
Find open reading frames (ATG…stop) across all six frames.
| Name | Required | Description | Default |
|---|---|---|---|
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| minAaLength | No | Minimum protein length (aa) to report. | |
| requireStop | No | Only report ORFs terminated by a stop codon. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. Description adds minimal extra behavior disclosure beyond 'across all six frames'. No contradictions, but limited added value.
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?
Single sentence, perfectly concise, and front-loaded with the action. No unnecessary words.
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?
Given 3 well-documented parameters and no output schema, the description sufficiently states the core function. Could mention output format but not essential for basic use.
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 baseline is 3. Description does not add meaning beyond schema; it does not elaborate on parameters like minAaLength or requireStop.
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 uses specific verb 'Find' and resource 'open reading frames (ATG…stop)' with scope 'across all six frames'. This clearly distinguishes it from sibling tools like translate or motif_finder.
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 implies usage for ORF detection but lacks explicit guidance on when not to use or alternatives (e.g., translate for simple translation). No exclusions or context provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
format_sequenceFormat SequenceARead-onlyIdempotentInspect
Clean, case-fold, DNA↔RNA convert, reverse and line-wrap a sequence.
| Name | Required | Description | Default |
|---|---|---|---|
| width | No | Line-wrap width; 0 = single line. | |
| convert | No | DNA→RNA (T→U) or RNA→DNA (U→T). | none |
| reverse | No | Reverse the sequence (no complement). | |
| caseMode | No | keep | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| stripNonLetters | No | Remove digits, spaces and gaps (keep letters only). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint true, so the description does not need to cover safety. It adds value by listing operations (cleaning, conversion, etc.) but does not disclose additional behavioral traits beyond what the schema provides.
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 a single concise sentence that front-loads the key operations. It contains no wasted words, but could be slightly more structured for readability.
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?
Given 6 parameters, no output schema, and good annotations, the description adequately summarizes the tool's capabilities but does not mention the output format or any edge cases. It is minimally complete.
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?
With 83% schema description coverage, the schema already documents most parameters. The description summarizes the operations (clean, convert, reverse) that map to parameters, but does not add meaning beyond what is 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 clearly states the tool's function: 'Clean, case-fold, DNA↔RNA convert, reverse and line-wrap a sequence.' It specifies the verb (format) and the resource (sequence), and lists distinct operations that differentiate it from siblings like reverse_complement or translate.
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 implies usage but does not provide explicit guidance on when to use this tool versus alternatives or when not to use it. No exclusions or comparisons to sibling tools are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
functional_enrichmentFunctional enrichment (GO + Reactome)ARead-onlyIdempotentInspect
Over-representation analysis: test which GO terms (biological process / molecular function / cellular component) and Reactome pathways are statistically enriched in a query gene list versus a background, using the hypergeometric test with Benjamini-Hochberg FDR correction across all tested terms. Uses bundled GO Consortium + Reactome reference data (human only). KEGG is not included (its license does not permit bundling gene sets).
| Name | Required | Description | Default |
|---|---|---|---|
| genes | Yes | Query gene symbols (human, e.g. "TP53"). Case-insensitive. Capped at 5000. | |
| background | No | Custom background/universe gene symbols. If omitted, defaults to every gene present in the bundled GO+Reactome dataset (the 'only annotated genes' convention, as used by g:Profiler) rather than the whole genome. | |
| collections | No | Which term collections to test. Defaults to all four. | |
| maxTermSize | No | Skip terms/pathways with more than this many background genes (matches clusterProfiler's default). | |
| minTermSize | No | Skip terms/pathways with fewer than this many background genes. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description discloses the statistical method, multiple testing correction (Benjamini-Hochberg), reliance on bundled reference data (human only), and the default background convention. No contradictions with annotations.
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 a single paragraph of three sentences, front-loading the core purpose and method. Every sentence adds essential information without redundancy.
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?
Given no output schema, the description could specify the output format more explicitly, but it adequately covers the method, data sources, parameter defaults, and limitations. The 100% schema coverage compensates, making the overall description complete enough for its complexity.
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?
With 100% schema coverage, the description still adds value by explaining the default background meaning (only annotated genes, like g:Profiler) and the default maxTermSize (matching clusterProfiler). This contextualizes parameter behavior beyond their schema descriptions.
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 explicitly states it performs over-representation analysis for GO terms and Reactome pathways using the hypergeometric test with FDR correction. It clearly identifies the specific input (query gene list vs background) and output (enriched terms), distinguishing it from sibling tools like gene_expression or crispr_grna_design.
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 clear guidance on when to use this tool (for enrichment of GO and Reactome terms) and explicitly notes that KEGG is excluded due to licensing, which helps manage expectations. It does not list alternative tools for KEGG enrichment, but the context is sufficient for an agent to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gc_contentGC ContentBRead-onlyIdempotentInspect
GC content, AT content and per-base composition of a sequence.
| Name | Required | Description | Default |
|---|---|---|---|
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, so no destructive behavior. The description adds that the tool returns composition metrics, which is useful but minimal. No mention of edge cases or format of output.
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?
A single sentence that efficiently communicates the tool's purpose with no unnecessary words. Front-loaded with key 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?
For a simple tool with one parameter and no output schema, the description is adequate but incomplete. It does not specify the output format (e.g., percentages, raw counts), which would help the agent 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?
The schema has 100% coverage for the single parameter, which is well-described. The tool description adds meaning by specifying what is computed from the sequence, going beyond the input description.
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 clearly states the tool computes GC content, AT content, and per-base composition for a sequence. It gives specific outputs, distinguishing it from generic sequence tools, though it does not explicitly differentiate from siblings like 'characterize_sequence'.
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?
No guidance on when to use this tool versus alternatives. No when-to-use or when-not-to-use information is provided, leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gene_dossierGene/Target DossierARead-onlyIdempotentInspect
A gene/drug-target dossier fanned out to five independent sources in one call: Open Targets (function, tractability, top associated diseases), an NCBI/UniProt plain-English function summary, ChEMBL (known drugs and their mechanism/clinical phase, cross-referenced with indications), ClinicalTrials.gov (trials by gene/condition term), and Europe PMC (top cited papers). Each source fails independently — a down source returns null/empty for its own section rather than failing the whole call, and every failure is listed in "sourceErrors" rather than silently omitted.
| Name | Required | Description | Default |
|---|---|---|---|
| gene | Yes | A human gene symbol ("TP53") or Ensembl gene ID ("ENSG00000141510"). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and idempotent behavior. The description adds critical detail: each source fails independently (null/empty for its section) and failures are listed in 'sourceErrors' rather than aborting the call. This goes well beyond annotation information.
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 a single sentence structure broken into two sentences, packing a lot of detail. While it is somewhat long, every part is informative and front-loaded with the core function. Minor redundancy ('fanned out' and 'in one call') could be trimmed.
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?
Given no output schema, the description adequately covers the expected result shape: per-source sections with potential null/empty, and a sourceErrors list. It names each source's contributions. However, it does not specify whether the output is flat or nested, which could be clarified further.
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?
There is only one parameter (gene) with 100% schema coverage in the description. The tool description adds no further parameter-level detail beyond what the schema provides, so a baseline score of 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 clearly states that this tool generates a multi-source dossier for a gene/drug-target by aggregating from five distinct sources. It lists each source and what it provides (Open Targets, NCBI/UniProt, ChEMBL, ClinicalTrials.gov, Europe PMC). This distinguishes it from siblings like gene_expression or gene_model which focus on single aspects.
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 implies 'in one call' for a comprehensive overview, but does not explicitly specify when to use this tool versus alternatives like web_search or individual source tools. There is no guidance on prerequisites or limitations, though the parameter description restricts to human genes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gene_expressionGene Expression FingerprintARead-onlyIdempotentInspect
A gene's tissue-expression fingerprint: per-tissue median TPM from GTEx (v8) and subcellular localization / RNA tissue-specificity / protein class from the Human Protein Atlas, in one call.
| Name | Required | Description | Default |
|---|---|---|---|
| gene | Yes | A human gene symbol ("TP53") or Ensembl gene ID ("ENSG00000141510"). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and idempotentHint=true, so the tool is safe and idempotent. The description adds value by detailing the specific data sources (GTEx v8, Human Protein Atlas) and the types of data returned, providing useful context beyond what annotations alone convey. However, it does not mention rate limits or other constraints.
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 a single efficient sentence that front-loads the key concept ('tissue-expression fingerprint'). It includes necessary detail without verbosity, though it could be slightly more concise by breaking the list of data types into separate points.
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?
Given the complexity of returning multiple data types from two databases, the description adequately lists what is included. However, it does not describe the output format or how to interpret the fingerprint, leaving some gaps for an agent 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?
The sole parameter 'gene' is described in the schema with examples of symbol or Ensembl ID. The tool description does not add additional meaning beyond the schema, as it only repeats the concept of a gene. Schema description coverage is 100%, so 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 clearly states the tool returns a 'gene's tissue-expression fingerprint' and lists specific data types (per-tissue median TPM, subcellular localization, RNA tissue-specificity, protein class) from GTEx and Human Protein Atlas. This distinctively identifies the resource and operation, differentiating it from sibling tools that cover sequence analysis, CRISPR design, etc.
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 implies use when needing gene expression data but does not explicitly state when to use this tool versus alternatives or when not to use it. No exclusions or alternative tool names are provided, leaving the agent to infer the context from sibling names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gene_modelGene Model (Exon/CDS Structure)ARead-onlyIdempotentInspect
The real exon/UTR/CDS structure of a human gene's canonical transcript, fetched live from Ensembl (the same exon/CDS map the HGVS Converter tool uses) — for rendering an exon diagram.
| Name | Required | Description | Default |
|---|---|---|---|
| gene | Yes | A human gene symbol ("TP53") or Ensembl gene ID ("ENSG00000141510"). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey readOnlyHint=true and idempotentHint=true. The description adds valuable context: the data is fetched live from Ensembl, uses the canonical transcript, and mirrors the HGVS Converter tool's map. No contradictions, and the extra details help the agent understand behavior beyond annotations.
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 a single, efficient sentence that conveys the core function and purpose without superfluous words. Every element 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?
Given low complexity and good annotations, the description adequately explains what the tool does and its source. However, without an output schema, it lacks specifics about the returned data structure (e.g., coordinate lists), which could limit an agent's ability to use the output effectively.
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?
The only parameter 'gene' is fully described in the schema (100% coverage). The tool description adds no additional meaning beyond the schema, so a baseline score of 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 clearly states it fetches the exon/UTR/CDS structure from Ensembl for a human gene's canonical transcript, with a specific purpose of rendering an exon diagram. It distinguishes from siblings by specifying the source (Ensembl) and transcript selection (canonical), but could more explicitly contrast with similar tools like gene_dossier.
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 lacks explicit guidance on when to use this tool versus alternatives. It mentions a use case (rendering an exon diagram) but does not provide exclusions, prerequisites, or compare with other tools from the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
golden_gate_fidelityGolden Gate overhang fidelityARead-onlyIdempotentInspect
Score a candidate set of 4-base Golden Gate/MoClo junction overhangs against real published T4-ligase ligation-count data: per-overhang specificity, the weakest link in the set, and any risky cross-reacting pairs. Optionally compare against a named published overhang set. This is SeqBench's own transparent scoring methodology — it does not reproduce NEB's/Potapov's own published aggregate fidelity percentages for named sets (their exact formula isn't disclosed anywhere accessible).
| Name | Required | Description | Default |
|---|---|---|---|
| dataset | No | Which real ligation dataset to score against — generic T4 ligase, or an enzyme-specific one-pot dataset if that matches your actual digestion enzyme. | generic-t4-37c-1h |
| overhangs | Yes | The candidate 4-base overhangs for one assembly (e.g. ["GGAG","TACT","AATG"]). At least 2, no duplicates. | |
| riskThreshold | No | Flag a pair as risky when the cross-reaction is at least this fraction of that pair's own total signal. | |
| compareToNamedSet | No | Also score this published reference set (see namedSetsAvailable in the output) alongside your candidate set, for comparison. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only and idempotent behavior, and the description adds context about the transparent methodology and its limitations (not reproducing NEB's exact values). No contradictions. The description enhances understanding 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long with no filler. The first sentence clearly states the main function and outputs, while the second clarifies limitations. Very efficient.
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?
Given the complexity (multiple parameters, optional comparisons, no output schema), the description covers the essential workflow, inputs, and what the tool does not provide. It is sufficient for an agent to understand usage without needing the 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 coverage is 100% with each parameter described well. The description does not add new meaning beyond the schema, but provides context for the overall scoring purpose. 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 clearly states the tool scores candidate overhang sets against real ligation data, enumerates specific outputs (specificity, weakest link, risky pairs), and distinguishes itself from alternatives like NEB's undisclosed methodology. It is specific and sets clear boundaries.
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 mentions optional comparison with named sets but does not explicitly cover when not to use the tool or offer direct alternatives. However, it does clarify what the tool does not do (reproduce NEB percentages), which helps guide appropriate use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hgvs_convertHGVS Variant Converter (c. <-> g. <-> p.)ARead-onlyIdempotentInspect
Parse an HGVS "c." variant description (by gene symbol, RefSeq NM_, or Ensembl ENST accession), convert it to genomic (g.) coordinates via a real, live-fetched Ensembl exon/CDS map (transcripts resolved through the bundled MANE RefSeq<->Ensembl crosswalk), apply 3'-rule normalization to any del/dup/ins, and predict the protein (p.) effect where that is safely computable. Refuses cleanly — rather than guessing — for circular/mitochondrial genomes, RNA-level or protein-level input, uncertain/mosaic syntax, splice-junction-adjacent or inversion protein effects, and non-MANE/non-Ensembl transcripts.
| Name | Required | Description | Default |
|---|---|---|---|
| variant | Yes | A full HGVS "c." variant description: "<accession or gene symbol>:c.<edit>", e.g. "NM_000546.6:c.215C>G" or "TP53:c.215C>G". Substitution (">"), deletion ("del"), duplication ("dup"), insertion ("ins"), delins, and inversion ("inv") are supported. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description details internal processes (live Ensembl maps, MANE crosswalk, 3'-rule normalization) and refusal reasons, adding significant behavioral context. No contradiction with annotations.
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?
Every sentence is informative and earns its place. The description is well-structured with a clear purpose, detailed behavior, and explicit limitations, all without unnecessary verbosity.
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?
Given the tool's complexity and high parameter documentation, the description covers most aspects. However, it lacks explicit mention of the output structure (e.g., what fields are returned), which would enhance completeness for an output-schema-less tool.
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?
The sole parameter 'variant' has full schema coverage, but the description adds crucial context: required format with examples, supported accessions and edit types, which goes beyond the schema definition.
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 clearly states it converts HGVS 'c.' descriptions to genomic coordinates and predicts protein effects. It specifies supported accessions (gene symbol, RefSeq, Ensembl) and edit types, distinguishing it from sibling tools like variant_annotate.
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 and lists clear refusal cases (circular/mitochondrial genomes, RNA/protein input, uncertain syntax, etc.), providing excellent guidance on when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
id_map_pollPoll a batch ID mapping jobARead-onlyIdempotentInspect
Check a UniProt id-mapping job submitted via id_map_submit. Returns {status, ready:false} while still running; once FINISHED, also returns the mapped ids (normalized regardless of which target database was requested) and any ids that failed to map.
| Name | Required | Description | Default |
|---|---|---|---|
| jobId | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, indicating safe, idempotent polling. The description adds value by detailing the response format and a key behavioral trait: normalization of mapped ids regardless of target database. No contradictions with annotations.
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 efficient, front-loaded sentences. The first states purpose, the second details response lifecycle. No unnecessary words. Perfectly concise for the complexity.
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 simple polling tool with one parameter and sufficient annotations, the description is complete. It explains the return value structure and a notable behavior (normalization). No output schema exists, but the description adequately covers what is returned.
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?
With schema description coverage at 0%, the description must clarify the parameter. It mentions 'job submitted via id_map_submit', implying the jobId comes from that submission. However, it does not specify format or constraints beyond what the schema provides (type string, required). It adds marginal meaning.
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 clearly states the tool's purpose: checking a UniProt id-mapping job submitted via id_map_submit. It specifies the behavior (returns status while running, mapped ids and failed ids when finished), and distinguishes it from the submission tool id_map_submit. The verb 'Check' and resource are explicit.
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 ties usage to a prior id_map_submit call, providing clear context. It doesn't explicitly state when not to use the tool, but the complementary sibling relationship is evident. This is sufficient guidance for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
id_map_submitSubmit a batch gene/protein ID mapping jobARead-onlyIdempotentInspect
Submit up to 1000 ids to UniProt's ID mapping service for a single confirmed-safe hop (e.g. Gene_Name -> UniProtKB-Swiss-Prot, or UniProtKB_AC-ID -> Ensembl/GeneID/RefSeq_Protein/Gene_Name). Returns a jobId immediately — poll it with id_map_poll.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Target id type. Supported single hops: Gene_Name/Ensembl/GeneID/RefSeq_Protein -> "UniProtKB-Swiss-Prot" (the only direct target for these), or "UniProtKB_AC-ID" -> Ensembl/GeneID/RefSeq_Protein/Gene_Name. Any other pair is rejected — chain two of these hops instead. | |
| ids | Yes | The ids to map, up to 1000 (e.g. gene symbols, UniProt accessions, Ensembl gene IDs, Entrez GeneIDs, or RefSeq protein accessions, depending on "from"). | |
| from | Yes | Source id type: "Gene_Name", "Ensembl", "GeneID", "RefSeq_Protein", or "UniProtKB_AC-ID". UniProt's mapping graph is hub-and-spoke — see the "to" note. | |
| taxId | No | NCBI taxonomy id to disambiguate a gene symbol (only used when from="Gene_Name"). Defaults to human (9606) if omitted. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and idempotentHint. The description adds value by specifying the 1000 ID limit and that it returns a jobId immediately, but does not add significant behavioral context beyond what annotations imply. No contradiction with annotations.
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 concise sentences, front-loaded with the core action and examples, and includes the important note about polling. No wasted words.
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 submission tool, the description is complete: it explains what it does, the limit, the return value (jobId), and how to get results (poll id_map_poll). The schema covers all parameter details, and the sibling tool for polling is referenced.
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% with very detailed parameter descriptions. The description adds some examples of valid hops but does not significantly enhance parameter understanding beyond the schema. Baseline of 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 clearly states the tool submits up to 1000 IDs to UniProt's ID mapping service for a single confirmed-safe hop, with concrete examples like Gene_Name -> UniProtKB-Swiss-Prot. It distinguishes itself from the sibling id_map_poll by stating it returns a jobId to poll.
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 explains when to use the tool: for a single hop mapping. It mentions polling with id_map_poll and implies multi-hop scenarios require chaining, though this is detailed more in the input schema. Explicit exclusions for non-safe hops are in the schema but not in the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
in_silico_pcrIn-silico PCRARead-onlyIdempotentInspect
Predict PCR products for a template and a pair of primers (IUPAC-aware, allows mismatches, handles circular templates).
| Name | Required | Description | Default |
|---|---|---|---|
| circular | No | Treat the template as circular (plasmid). | |
| template | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| forwardPrimer | Yes | Primer 1, 5'→3'. | |
| maxMismatches | No | Mismatches tolerated per primer (0–10). | |
| reversePrimer | Yes | Primer 2, 5'→3' (order does not matter). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly and idempotent behavior. The description adds valuable behavioral context: IUPAC-aware, mismatch tolerance, and circular template handling. These disclose key capabilities beyond the annotations, though no details on output format or edge cases are given.
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 a single, front-loaded sentence that conveys the core purpose and three additional capabilities without excess words. Every phrase 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?
The tool has a well-described schema and clear annotations. The description effectively summarizes the function and key features. It does not describe the output format, but the phrase 'Predict PCR products' sufficiently indicates the return value. The addition of usage alternatives would make it more complete, but for a read-only tool this is adequate.
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 coverage is 100%, so the schema already documents all parameters. The description's mention of mismatches and circular templates loosely maps to maxMismatches and circular, but it does not add meaningful detail beyond what the schema provides. Baseline 3 applies.
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 clearly states the tool's function with a specific verb ('Predict PCR products') and resources ('template', 'pair of primers'). It distinguishes from sibling tools like primer_design (which designs primers) and primer_specificity (which checks specificity).
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 implies usage: when you have a template and primer pair and want to predict amplification products. However, it provides no explicit guidance on when to prefer this over related tools such as melting_temperature or cloning_simulate, nor any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kasp_primer_designKASP / ARMS Allele-Specific PrimersARead-onlyIdempotentInspect
Design KASP/ARMS allele-specific genotyping primers for a SNP: two allele-specific forward primers differing only at the 3' terminal base (one per allele), each with the standard KASP universal tail (FAM for allele A, HEX for allele B), a deliberate internal ARMS secondary mismatch near the 3' end whose strength complements that primer's own natural allele mismatch (strong↔weak), and one common downstream reverse primer sized to a chosen amplicon range. Because a forward primer reads the antisense strand, each primer's 3' base sits opposite the complement of the other allele, so the two primers get different mismatch classes and are reported separately (graded from the measured PCR yields in Kwok et al. 1990). Reuses the site's nearest-neighbor Tm engine.
| Name | Required | Description | Default |
|---|---|---|---|
| target | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| alleleA | Yes | First allele (single base) — gets the FAM tail. | |
| alleleB | Yes | Second allele (single base) — gets the HEX tail. | |
| maxAmplicon | No | Maximum amplicon length for the common reverse primer. | |
| minAmplicon | No | Minimum amplicon length for the common reverse primer. | |
| snpPosition | Yes | 1-based position of the SNP on the forward strand. Must be 18 or greater: the allele-specific primers end on the SNP, so they need at least 17 bp of upstream template to build a core from. | |
| targetCoreTm | No | Target Tm (°C) for the allele-specific primer core (before the universal tail). | |
| addSecondaryMismatch | No | Engineer the internal ARMS destabilising mismatch near the 3' end. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and idempotentHint, so the bar is lowered. The description adds valuable behavioral context: the antisense-strand interpretation, mismatch-class differences between the two primers, grading by Kwok et al. 1990 yields, and reuse of the Tm engine—none of which is in annotations.
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 a single dense run-on sentence that front-loads nearly all details without structural breaks. It is information-dense and not wasteful, but its lack of paragraphing or bullet-like separation makes it harder to parse quickly.
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 complex 8-parameter design tool with no output schema, the description covers the core algorithm, key design constraints, and reporting distinction without explaining exact return values. It is substantially complete for an experienced user, though an explicit output description would have been useful.
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 coverage is 100%, so baseline is 3. The description enriches parameter understanding by explaining why FAM/HEX tails are assigned per allele, how amplicon range relates to the reverse primer, and how the secondary mismatch interacts with the natural allele mismatch—value beyond the schema's property descriptions.
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 uses a specific verb ('Design') and resource ('KASP/ARMS allele-specific genotyping primers for a SNP'), and details the two allele-specific forward primers plus common reverse primer. This clearly distinguishes it from generic primer_design or aso_design siblings.
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 implies usage for SNP genotyping and KASP/ARMS applications, but it does not explicitly state when to prefer this tool over sibling tools like primer_design or aso_design, nor does it mention exclusions. Context is present but not fully actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
melting_temperaturePrimer Tm calculatorARead-onlyIdempotentInspect
Primer/oligo melting temperature: nearest-neighbour (SantaLucia 1998) at the supplied reaction conditions, recommended from 14 nt up, with the Wallace rule for shorter oligos, a fixed-100 mM-Na+ Schildkraut-Lifson reference estimate, and molecular weights.
| Name | Required | Description | Default |
|---|---|---|---|
| mgMM | No | Divalent cation [Mg2+] (mM). | |
| naMM | No | Monovalent cation [Na+]/[K+] (mM). | |
| dntpMM | No | Total [dNTP] (mM), chelates Mg2+. | |
| oligoNM | No | Total strand concentration (nM). | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| targetTm | No | Optional target Tm (°C). When given, the response includes a pass/fail gate. | |
| tmTolerance | No | Allowed +/- window (°C) around targetTm for the gate. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and idempotent behavior. The description adds methodological context (nearest-neighbour, Wallace rule, Schildkraut-Lifson) but does not detail return format, the pass/fail gate for targetTm, or potential limitations like sequence length restrictions beyond the 14 nt recommendation.
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 a single, information-dense sentence that front-loads the core purpose. It includes relevant details without excessive filler, though the listing of multiple thermodynamic methods makes it slightly heavier than necessary.
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 calculation tool with 7 parameters and no output schema, the description explains what it computes and the methodology, but it does not explain the optional targetTm pass/fail gate or what the response contains beyond molecular weights. It also lacks explicit comparison to sibling oligo analysis tools, which would help in a rich tool ecosystem.
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 coverage is 100% with parameter descriptions, so the baseline is 3. The description's mention of 'supplied reaction conditions' and 'molecular weights' adds context to parameters like mgMM and oligoNM but does not directly map to parameter syntax or required input formats.
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 opens with 'Primer/oligo melting temperature' clearly stating the tool's function. It further specifies the calculation method (nearest-neighbour SantaLucia 1998) and includes molecular weights, distinguishing it from sibling tools like primer_design or cross_dimer.
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 implies usage for Tm calculation and offers some guidance by noting the 14 nt length recommendation and the Wallace rule for shorter oligos. However, it does not explicitly state when to use this tool over alternatives or provide exclusions, such as when to choose primer_design or oligo_analysis.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
motif_finderMotif FinderARead-onlyIdempotentInspect
Find (overlapping) occurrences of an IUPAC motif on either strand, allowing mismatches.
| Name | Required | Description | Default |
|---|---|---|---|
| motif | Yes | Query motif; IUPAC ambiguity codes (R Y S W K M B D H V N) allowed. | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| maxMismatches | No | Maximum allowed mismatches per match. | |
| searchReverseStrand | No | Also search the reverse strand. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations by specifying overlapping matches, allowance of mismatches, and dual-strand search. Annotations already indicate read-only and idempotent behavior, so the description effectively supplements these with operation details.
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?
A single 13-word sentence that front-loads the action and includes key qualifiers. Every word contributes meaning, with no redundancy or filler. Ideal conciseness for quick parsing.
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 description lacks output format details (e.g., positions, list of matches) and does not address limits (e.g., sequence length). With no output schema, the description should compensate, but it does not, leaving an AI agent with incomplete invocation context.
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?
Input schema has 100% description coverage, so the schema already documents all four parameters. The description adds no new semantic information beyond rephrasing the tool's purpose. Baseline score of 3 is appropriate since schema carries the burden.
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 clearly states the verb 'Find' and the resource 'occurrences of an IUPAC motif', with specific qualifiers like overlapping, either strand, and allowing mismatches. This makes the tool's exact functionality unambiguous and distinguishes it from sibling tools like 'find_orfs' or 'restriction_sites'.
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 implicitly defines when to use this tool (motif finding in nucleotide sequences) but lacks explicit guidance on when not to use it or which sibling tools are alternatives. An agent could reasonably infer usage, but clearer direction would improve selection confidence.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
multiple_sequence_alignmentMultiple Sequence AlignmentARead-onlyIdempotentInspect
Center-star multiple sequence alignment of a multi-FASTA input, with consensus and per-column conservation.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes | Two or more sequences in multi-FASTA format (>name / sequence). Up to 25 are aligned. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint and idempotentHint, so no destructive behavior. The description adds value by specifying input constraints (up to 25 sequences) and output features (consensus, per-column conservation), which are not in annotations.
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 a single, well-structured sentence that front-loads the core purpose and key details. Every word is informative, with no unnecessary content.
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 robust annotations and no output schema, the description adequately covers input constraints and output features. Minor omission: no explanation of the alignment algorithm beyond 'center-star', but this is acceptable given tool simplicity.
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 coverage is 100% for the single parameter 'input', which already specifies multi-FASTA format and upper limit. The description repeats this, adding no new semantic detail; 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 clearly states the tool performs multiple sequence alignment using the center-star method on a multi-FASTA input, producing consensus and per-column conservation. This explicitly distinguishes it from the sibling pairwise_alignment tool.
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 implies usage for aligning multiple sequences, contrasting with pairwise alignment, but does not provide explicit guidance on when to choose this over alternatives or mention any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
oligo_analysisOligo analyzerARead-onlyIdempotentInspect
Full oligo analysis: nearest-neighbour Tm/ΔG/ΔH/ΔS plus hairpin and self-dimer screening with base-pair diagrams and warnings.
| Name | Required | Description | Default |
|---|---|---|---|
| mgMM | No | Divalent cation [Mg2+] (mM). | |
| naMM | No | Monovalent cation [Na+]/[K+] (mM). | |
| dntpMM | No | Total [dNTP] (mM), chelates Mg2+. | |
| oligoNM | No | Total strand concentration (nM). | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and idempotentHint=true, so safety is clear. Description adds that it returns base-pair diagrams and warnings, which is useful but does not elaborate on computational cost or limitations.
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?
Single sentence that is front-loaded with key outputs (Tm, ΔG, ΔH, ΔS, screening, diagrams, warnings). No unnecessary words.
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?
No output schema provided, so description must explain return values. It lists thermodynamics, screening results, and diagrams, which is sufficient but lacks detail on format or structure (e.g., whether it returns a report, JSON, or visualization).
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 covers 100% of parameters with descriptions (e.g., mgMM, naMM, dntpMM, oligoNM, sequence). The description only restates that it uses sequence and cation concentrations, adding no new meaning beyond 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?
Description clearly states the tool performs full oligo analysis including nearest-neighbour thermodynamics (Tm, ΔG, ΔH, ΔS) and secondary structure screening (hairpin, self-dimer) with diagrams and warnings. This distinguishes it from siblings like 'melting_temperature' which only calculates Tm.
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?
No explicit guidance on when to use this tool versus alternatives (e.g., 'melting_temperature' for just Tm, 'cross_dimer' for heterodimers). The description implies comprehensive analysis but does not state use cases or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
oligo_cofoldOligo cofold (ΔG)ARead-onlyIdempotentInspect
Minimum-free-energy structure and ΔG for one oligo (hairpin) or two oligos together (homo/heterodimer), using ViennaRNA's published loop model at a temperature you choose — DNA parameters (Mathews 2004) by default, RNA (Turner 2004) on request. Reports each strand alone, the duplex, and the interaction ΔG the two gain by pairing with each other rather than folding alone, which is the number a primer-dimer screen wants. Unlike oligo_analysis's fast stack-sum screen this is a full loop model with bulge, internal-loop and dangling-end terms; the two are on different parameter sets and must not be compared. PREDICTED, NOT MEASURED. No skill statistic is claimed for predicting whether a PCR fails. Loop-model MFE folding reproduces measured structure well for short duplexes and progressively worse with length; the ΔG itself carries roughly kcal/mol-scale uncertainty and the MFE structure is one structure out of an ensemble — request partition for the ensemble free energy, which is the more honest single number when several structures compete. Valid for: short oligos, at most 200 nt per strand, at the temperature given. It models two strands in isolation at no particular concentration: it does not know your primer concentration, salt, or cycling programme, so it cannot say whether a dimer will actually form in your tube.
| Name | Required | Description | Default |
|---|---|---|---|
| a | Yes | First oligo, 5'→3'. Max 200 nt. | |
| b | No | Second oligo. Omit to analyse hairpin structure in 'a' alone; pass the same sequence as 'a' for a homodimer. | |
| alphabet | No | Which measured parameter set to use. This is not cosmetic — the same 20-mer can differ by several kcal/mol between them. | dna |
| partition | No | Also compute the ensemble free energy over all structures, not just the MFE one. Costs a second pass. | |
| temperature | No | °C. Primer dimers matter at the annealing temperature, not at 37 °C. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond annotations (readOnlyHint, idempotentHint) by disclosing that results are predicted, not measured; that ΔG has ~kcal/mol uncertainty; that MFE structure accuracy degrades with length; and that the model ignores concentration and salt. No contradiction with annotations.
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?
Description is fairly long but every sentence adds essential information: purpose, output, comparison, limitations, validity range, parameter usage advice. Front-loaded with core purpose. Could be slightly more streamlined, but no fluff.
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?
Given the complexity of the tool and absence of output schema, the description thoroughly covers what it computes, parameter sets, temperature, comparators, limitations, validity (≤200 nt), and what it cannot do (ignore concentration, salt, cycling). Provides sufficient context for an agent to use and interpret results.
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 already covers all 5 parameters with high-quality descriptions (100% coverage). Description adds contextual value for temperature (should be annealing temperature) and partition (costs second pass, more honest for competing structures). Modest added value beyond schema, justifying a score above baseline 3.
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?
Description explicitly states it computes minimum-free-energy structure and ΔG for one or two oligos (hairpin/dimer), contrasting with sibling oligo_analysis's fast stack-sum screen. It clearly defines the resource and action, and avoids tautology.
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?
Provides explicit when-to-use guidance: full loop model for short oligos (≤200 nt), contrasts with oligo_analysis, warns about uncertainty and limitations (not measured, no PCR failure prediction, ignores concentration/salt/cycling), and advises using partition for ensemble free energy when competing structures exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ortholog_mapFind orthologs/paralogs for gene symbols across speciesARead-onlyIdempotentInspect
Look up the orthologous (or paralogous) gene for up to 50 gene symbols in a target species, via Ensembl's homology-by-symbol REST endpoint. Symbols with no homology record are reported in unmapped, never silently dropped.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Homology type to return. Defaults to orthologues. | orthologues |
| symbols | Yes | Gene symbols to look up, up to 50 (e.g. ["TP53", "BRCA1"]). | |
| sourceSpecies | No | Ensembl species slug the symbols belong to (e.g. "human", "mouse"). Defaults to "human". | human |
| targetSpecies | Yes | Ensembl species slug to find homologs in (e.g. "mouse", "rat", "zebrafish", "fruit_fly"). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint and idempotentHint, so the agent knows it is safe and idempotent. The description adds that unmapped symbols are reported in 'unmapped' and never silently dropped, which is valuable beyond the annotations. No contradictions.
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 extremely concise with only two sentences, front-loaded with the key verb 'Look up'. Every sentence provides essential information without redundancy.
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?
Given that there is no output schema and the tool is a lookup, the description hints at the output structure by mentioning the 'unmapped' field. However, it does not fully describe the response format for successful mappings, which could be improved. Still, it is fairly complete for the complexity level.
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 coverage is 100%, so parameters are well-documented. The description adds context about the 50-symbol limit and the behavior for unmapped results, which goes beyond the schema. It also explicitly mentions the Ensembl REST endpoint, adding operational context.
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 clearly states the tool's purpose: looking up orthologous/paralogous genes for up to 50 gene symbols across species via Ensembl's homology-by-symbol endpoint. It uses a specific verb and resource, and distinguishes itself from sibling tools by its focused functionality.
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 implicitly guides when to use this tool (when needing orthologs/paralogs for gene symbols) and mentions the source endpoint and constraints. No explicit exclusions or alternatives are given, but the context is clear enough for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pairwise_alignmentPairwise AlignmentARead-onlyIdempotentInspect
Global (Needleman-Wunsch), local (Smith-Waterman) or semi-global/fitting pairwise alignment of two sequences, with match/mismatch scoring and affine gap costs (Gotoh).
| Name | Required | Description | Default |
|---|---|---|---|
| gap | No | Affine gap EXTEND penalty, charged per gap position (including the first). | |
| mode | No | "global" penalises end gaps in both sequences; "local" returns the best-scoring subalignment; "semiglobal" is a fitting alignment — seqB is consumed end to end while seqA's terminal overhangs are free and are not emitted, so a partial read placed on a longer reference is not smeared across it. | global |
| seqA | Yes | First sequence (raw or FASTA; nucleotide or protein). | |
| seqB | Yes | Second sequence (raw or FASTA; nucleotide or protein). | |
| match | No | Match score. | |
| gapOpen | No | Extra one-off penalty charged on top of gap for a gap's first position. Defaults to 1.5 * gap, so a k-base gap costs gap * (k + 1.5) and one contiguous k-base indel is cheaper than k scattered 1-base gaps. Pass 0 for a purely linear penalty. | |
| mismatch | No | Mismatch penalty. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, so safety is covered. The description adds valuable behavioral details about the algorithms and, notably, the semiglobal behavior (terminal overhangs free, no smearing of partial reads). It does not describe the return format, but this is not a major gap given the read-only nature.
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 a single, information-dense sentence that front-loads the core purpose and packs in algorithms, scoring, and gap model without wasted words. It is concise yet comprehensive, well-structured for quick scanning.
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 complex tool with 7 parameters and no output schema, the description covers the key aspects: modes, scoring, and gap penalties. It does not explicitly state the output format, which would be helpful, but the core functionality and behavioral nuances are sufficiently described. Overall, it is complete enough for an agent to understand when and how to use it.
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 adds minimal parameter-specific meaning beyond the schema; it mentions affine gap costs and scoring modes, but the schema already provides detailed descriptions for each parameter. No significant extra value is added.
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 clearly states the tool's purpose: pairwise alignment of two sequences, with specific algorithm names (Needleman-Wunsch, Smith-Waterman, Gotoh) and scoring details. It distinguishes itself from multiple sequence alignment by focusing on pairwise, and the specificity of algorithms and modes leaves no ambiguity.
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 implies usage context through the three modes (global, local, semiglobal), each explained in terms of when they are appropriate (e.g., semiglobal for fitting a partial read to a reference). It does not explicitly name alternatives or when not to use, but the context is clear enough to guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
parse_genbankGenBank ParserARead-onlyIdempotentInspect
Parse a GenBank flat file into its locus, definition, features and sequence.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | A GenBank flat file (LOCUS … FEATURES … ORIGIN … //). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and idempotentHint. The description adds value by specifying that the tool extracts locus, definition, features, and sequence, which is not obvious from annotations alone. However, it does not disclose error handling, input validation requirements, or output format details.
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 a single, well-structured sentence of 12 words. It front-loads the verb and outcome without any redundant or unnecessary information, earning every word.
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 simple parser with one parameter and no output schema, the description is fairly complete. It explains what the tool does and what data is extracted. Minor gap: it does not describe the return format (e.g., JSON object structure), but overall adequate given the tool's simplicity.
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 coverage is 100% and the parameter description already mentions the GenBank flat file format. The tool description reinforces this but does not add new meaning beyond what the schema provides, so a baseline score of 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 clearly states the action (parse), the specific resource (GenBank flat file), and the output components (locus, definition, features, sequence). It distinguishes itself from sibling tools like 'characterize_sequence' or 'plasmid_annotate' by its unique purpose.
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 no guidance on when to use this tool versus alternatives, no mention of prerequisites or when not to use it. The agent must infer usage solely from the tool's name and sibling context, which is insufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
parse_sanger_traceSanger Trace ParserARead-onlyIdempotentInspect
Decode a Sanger ABIF (.ab1 / .abi) chromatogram: base calls, per-base quality, the four dye-channel traces and peak locations.
| Name | Required | Description | Default |
|---|---|---|---|
| fileName | No | Optional original file name (echoed back). | |
| fileBase64 | Yes | The binary ABIF (.ab1 / .abi) trace file, base64-encoded. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is consistent with annotations (readOnlyHint, idempotentHint) and adds context about outputs (traces, peaks). However, it does not describe edge cases (corrupt files), return format, or any potential side effects beyond what annotations already convey.
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?
Single sentence of 12 words, front-loaded with the action, and lists key outputs efficiently. No redundant 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?
Lacks details about the return structure (e.g., JSON format, array types), file size limits, or encoding requirements. For a tool with no output schema, more description of response format would improve completeness.
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 does not add meaningful information beyond what the schema already provides (fileBase64 is binary ABIF, fileName is optional).
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 clearly specifies the tool's action ('Decode'), the input format ('Sanger ABIF .ab1/.abi chromatogram'), and the outputs ('base calls, per-base quality, the four dye-channel traces and peak locations'). It is a specific verb+resource and distinguishes from siblings like sanger_vs_reference.
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?
No guidance on when to use this tool versus alternatives (e.g., sanger_vs_reference). Does not mention prerequisites, file size limits, or when not to use it. The description is purely functional.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
plasmid_annotatePlasmid annotatorARead-onlyIdempotentInspect
Auto-detect common cloning features (promoters, tags, origins, resistance markers, MCS, primers) on both strands. Signatures under 20 bp must match exactly; longer ones tolerate up to ~10% mismatches so point mutants still annotate — each feature reports its own mismatches count and an exact flag.
| Name | Required | Description | Default |
|---|---|---|---|
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by disclosing specific matching behavior: exact match required for signatures under 20 bp, ~10% mismatch tolerance for longer signatures, and each feature reporting a 'mismatches' count and 'exact' flag. It also mentions both strands are examined. These are valuable behavioral details not present in the readOnlyHint or idempotentHint.
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 concise (two sentences) and front-loaded with the core purpose. It lists featured feature types and key behavioral constraints without fluff. No redundant words; every sentence 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?
For a one-parameter, read-only tool with no output schema, the description covers the main behavior and even hints at the output (mismatches/exact flags). However, it does not describe the overall return structure (e.g., a list of features with locations). Still, it is sufficiently complete for straightforward annotation use.
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?
The only parameter 'sequence' already has a complete description in the schema ('Nucleotide sequence (raw or FASTA; IUPAC accepted).'). The tool description adds no additional parameter-level detail beyond this. Since schema coverage is 100%, baseline of 3 applies.
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 clearly states the tool's function: auto-detecting common cloning features (promoters, tags, origins, resistance markers, MCS, primers) on both strands. This is a specific verb+resource combination and the list of feature types distinguishes it from generic sequence analysis tools.
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?
No guidance is provided on when to use this tool versus alternatives. Sibling tools like plasmid_deep_annotate and plasmid_full_report exist, but the description does not mention them or any context where this tool is preferred. It only states what it does, not when to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
plasmid_deep_annotateDeep plasmid annotation (pLannotate)ARead-onlyIdempotentInspect
Annotate a plasmid against pLannotate's open-source feature library — a much larger signature set (GenoLIB parts + Swiss-Prot + FPbase + Rfam, cross-referenced against ~195k Addgene-deposited plasmids) than plasmid_annotate's built-in curated list, and it reports partial and low-identity hits as graded alignments rather than the pass/fail signature match plasmid_annotate does (that one is not exact-only either — signatures of 20 bp or more tolerate up to ~10% mismatches — but it reports a hit or nothing, with a mismatches count and an exact flag). Each feature here carries its percent identity, reference coverage and a fragment flag so you can judge a weak hit. Runs a multi-second search on a shared service and is therefore rate limited (see 429/503); use plasmid_annotate for an instant, unmetered first pass.
| Name | Required | Description | Default |
|---|---|---|---|
| circular | No | Treat the sequence as a circular plasmid (vs. linear). | |
| sequence | Yes | Nucleotide sequence (raw or FASTA). A, C, G, T, N only — other IUPAC codes are rejected rather than silently dropped, because pLannotate's search engines discard them and every coordinate after would shift. Max 30,000 bp. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly and idempotent hints, but the description adds substantial behavioral context: multi-second runtime, shared-service rate limiting (429/503), reporting of partial/low-identity hits with percent identity, reference coverage, and fragment flags. No contradictions with annotations.
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 dense but well-structured, starting with the primary action, then comparing to the sibling, then detailing output attributes and usage caveats. It is slightly long due to parentheticals, but each sentence earns its place and front-loads key 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?
For a complex tool with no output schema, the description explains the nature of returned data (graded alignments, per-feature metrics) and covers performance and rate-limit context. It lacks an explicit description of the full return format, but the provided information is sufficient for selection and invocation.
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 baseline is 3. The description does not add parameter-specific details beyond the schema, but the schema already fully explains the sequence and circular parameters. No extra semantic value provided.
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 clearly states the tool annotates a plasmid against pLannotate's feature library, using a specific verb and resource. It distinguishes itself from the sibling plasmid_annotate by emphasizing a larger signature set and graded alignments for partial hits.
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 names plasmid_annotate as the alternative for an instant, unmetered first pass, and describes when the deep annotation is appropriate (when judging weak hits, needing more comprehensive library). Also mentions rate limits, giving practical usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
plasmid_full_reportPlasmid full report (identity + features + unexplained regions)ARead-onlyIdempotentInspect
One combined view of 'what is this plasmid': recognized common features (from plasmid_annotate), backbone identity / possible chimera (from plasmid_identify), and — the two crossed together — any region that neither a curated backbone nor a recognized common feature explains. That last list is a triage signal (an unusual insert, an unannotated part, or worth a closer look), not a defect finding: a real gene-of-interest legitimately has no curated-feature match.
| Name | Required | Description | Default |
|---|---|---|---|
| topN | No | How many top-ranked backbone candidates to report. | |
| circular | No | Treat the query as a circular molecule (most plasmids are). | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the agent knows it's safe and repeatable. The description adds valuable context: that the unexplained region list is a triage signal, not a defect finding, which shapes how the agent should interpret results. No contradictions with annotations.
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 a single, well-structured paragraph. The first sentence states the purpose, followed by break down of components. Every sentence adds substance without redundancy. No wasted words.
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?
Given the tool combines three analyses and has no output schema, the description does a good job explaining what each part does and how to interpret the results. It could briefly mention the return format (e.g., JSON structure) but overall provides sufficient context for a complex tool.
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 coverage is 100% with all three parameters (topN, circular, sequence) described. The description does not add additional detail about parameter usage or constraints beyond what the schema provides, so baseline score of 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 clearly states it combines three analyses: common features, backbone identity/chimera, and crossed unexplained regions. It uses a specific verb 'One combined view' and distinguishes from sibling tools like plasmid_annotate and plasmid_identify.
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 explains what the tool outputs and includes guidance that the unexplained regions are a triage signal, not a defect. However, it does not explicitly state when to use this tool versus calling its component tools separately or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
plasmid_identifyIdentify an unknown plasmidARead-onlyIdempotentInspect
Screen a query plasmid against a small curated set of common backbones (cloning vectors, expression vectors, BACs — see referencesChecked for the exact list) to identify which one(s) it resembles, separate an unmatched region (normal — your own insert) from a POSSIBLE CHIMERA (a region matching a different known backbone than its neighbor), and report per-match %identity/%coverage. NOT a search against Addgene's ~100k-plasmid catalog or PlasmidScope's 850k+ — a curated-set screen only.
| Name | Required | Description | Default |
|---|---|---|---|
| topN | No | How many top-ranked backbone candidates to report. | |
| circular | No | Treat the query as a circular molecule (most plasmids are). | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true (safe read) and idempotentHint=true. Description adds behavioral details: it screens against a small curated list, identifies chimeras, and reports per-match %identity/%coverage. No contradictions with annotations.
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?
Description is approximately four lines, front-loaded with the primary purpose. Every sentence adds necessary information—what it does, what it excludes, and output details. No filler or repetition.
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 no output schema, the description covers the tool's scope (curated set), its outputs (matched vs. unmatched, chimera detection, %identity/%coverage), and its limitations (not a large catalog search). This is complete for a moderate-complexity tool like plasmid identification.
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 coverage is 100%—all three parameters have descriptions. The description does not add significant parameter-level details beyond the schema, but it provides context about the reference set ('small curated set of common backbones — see referencesChecked'), which adds some value. 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?
Description clearly states the tool screens a query plasmid against a curated set of common backbones, identifies resemblance, separates unmatched region from possible chimera, and reports %identity/%coverage. It distinguishes itself from larger catalog searches, making the purpose precise.
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 'NOT a search against Addgene's ~100k-plasmid catalog or PlasmidScope's 850k+ — a curated-set screen only,' providing clear when-to-use and when-not-to-use guidance. Also explains chimera detection, helping the agent decide when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prime_editing_designPrime Editing Studio (pegRNA)ARead-onlyIdempotentInspect
Design SpCas9 prime-editing pegRNAs for a substitution, insertion, deletion, or small replacement: for each usable NGG PAM it builds the spacer, a primer-binding-site (PBS) length sweep targeting a ~30 C melting temperature, the reverse-transcriptase template (RTT) that encodes the edit, and the full 3' extension, plus PE3 nicking-sgRNA suggestions 40-90 bp away on the opposite strand. Designs where the edit destroys the pegRNA's own PAM (preventing re-nicking of the edited allele) are ranked first. Coordinates: every pegRNA coordinate (protospacer span, nick position, editStart/editEnd) is 1-based inclusive in the submitted PRE-EDIT target's frame — the protospacer+PAM search runs on the unedited sequence, because Cas9 has to bind the allele you actually have. The one exception is edit-dependent PE3b nicking guides, which exist only once the edit is installed; each nickingGuides entry therefore carries a coordinateFrame field of "target" or "editedSequence" naming the frame its own start/end/nickToNickDistance are measured in, and for a length-changing edit the two frames differ downstream of the edit. Off-target activity is not evaluated (no in-browser reference genome).
| Name | Required | Description | Default |
|---|---|---|---|
| target | Yes | Forward-strand target DNA (raw or FASTA), with flanking sequence around the intended edit. | |
| editEnd | Yes | 1-based inclusive end of the region being changed. For a pure insertion, set editEnd = editStart - 1. | |
| editStart | Yes | 1-based inclusive start of the region being changed. | |
| pbsLength | No | Optional preferred PBS length to highlight; a full 8-17 nt sweep is always returned. | |
| frameStart | No | Optional 1-based CDS reading-frame start, used only to annotate whether a PAM-blocking mutation would be silent. | |
| insertedSeq | No | Replacement bases (forward strand). Empty string means a deletion. | |
| rttHomology | No | Homology length (nt) 3' of the edit that the RTT should include (typically 10-16). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes far beyond the readOnlyHint and idempotentHint annotations. It discloses the coordinate frame behavior (1-based inclusive, pre-edit frame), explains the exception for PE3b guides via a coordinateFrame field, and notes the ranking priority for PAM-destroying edits. It also discloses the absence of off-target evaluation, providing deep behavioral context.
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 long but dense, with each sentence adding value. It is well-structured, starting with the core purpose and then detailing coordinates, ranking, and limitations. While not as curt as a two-sentence example, the complexity justifies the length, and the text is front-loaded with the most important 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?
Despite lacking an output schema, the description explains the shape of the returned data (nickingGuides entries with coordinateFrame) and the key behavioral rules (PAM destruction ranking, coordinate frame semantics). It also notes a limitation (no off-target scoring), making it highly complete for an agent to understand what to expect.
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?
The input schema already covers 100% of parameters, so the baseline is 3. The description adds some context (e.g., explaining that a pure insertion uses editEnd = editStart - 1), but this duplicates schema descriptions. It does not add significant new meaning beyond the schema for individual parameters.
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 opens with a specific verb ('Design') and a precise resource ('SpCas9 prime-editing pegRNAs'), and enumerates the edit types (substitution, insertion, deletion, or small replacement). It clearly distinguishes itself from the sibling tool prime_editing_twin_design by detailing the pegRNA design workflow and PE3 nicking-sgRNA suggestions.
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 clearly scopes when to use the tool: for prime editing of small edits with an NGG PAM, and it states what is and is not evaluated (e.g., 'Off-target activity is not evaluated'). It does not explicitly name alternatives or when-not-to-use, but the scope and constraints are clear enough to guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prime_editing_efficiencyPrime-editing efficiency (PRIDICT2.0)ARead-onlyIdempotentInspect
Predict per-pegRNA prime-editing efficiency for one edit with PRIDICT2.0, and return the top-scoring pegRNA designs ranked by it. Takes the target as context, the edit in brackets, then context — ACGT...(A/G)...ACGT, with roughly 100+ bp each side — and enumerates PBS/RTT length combinations, scoring every one in HEK293 and K562. Each candidate comes back with both scores, its percentile against the training library, its rank, the spacer, PBS and RTT lengths, the full pegRNA, and Golden Gate cloning oligos. Use it to CHOOSE between designs; the number is not a promised editing percentage. PREDICTED, NOT MEASURED (Spearman ρ = 0.85 on held-out data from the libraries it was trained on). Spearman rho of about 0.85 for intended edits on held-out library data — the best-validated figure of any model in this registry, and roughly double OSTIR's 0.39 on independent data. That figure is still within the library and cell lines it was trained on. Valid for: human sequence, and efficiency ranking within one locus. It is parameterised on HEK293 and K562; your cell type, delivery method, and chromatin context will all move the absolute efficiency, chromatin alone by severalfold. Nothing here is predicted for a non-human host or for editors outside the PE2/PE3 architecture the training libraries used.
| Name | Required | Description | Default |
|---|---|---|---|
| topN | No | How many top-ranked pegRNAs to return, out of the hundreds enumerated. Max 50. | |
| cellType | No | Which trained context to RANK by. Both scores are always returned; this decides the ordering. There is no generic-mammalian option because the model has no such training data. | HEK |
| sequence | Yes | Target with the edit in brackets: context, then (original/edited), then context. Roughly 100+ bp each side — the model reads that context. Keep unchanged flanking bases OUTSIDE the brackets: T(a/g)C, not (TAC/TGC). Insertions and deletions leave one side empty, e.g. (/AGG) or (AGG/). | |
| use5Folds | No | Average all five trained folds instead of the first. Modestly steadier scores for five times the compute, and it is charged five times as much. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already mark the tool as readOnlyHint=true and idempotentHint=true, but the description adds extensive behavioral context: it enumerates PBS/RTT combinations, returns multiple scores and design details, explains the Spearman correlation and its limitations, validates against human PE2/PE3 libraries, and clarifies that the number is a ranking not an absolute percentage. This goes well beyond what annotations provide.
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 front-loaded with the core purpose in the first sentence, then progressively adds input format, output details, usage guidance, validation statistics, and limitations. Every sentence earns its place—there is no redundancy or filler. Despite its length, it is efficiently organized and essential for correct tool usage.
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 complex tool with 4 parameters and no output schema, the description comprehensively covers input format (bracketed edit with flanking context), output fields (scores, percentiles, ranks, spacer, PBS/RTT, pegRNA, oligos), ranking behavior, model limitations (cell types, host, editor architecture), and a validation metric. An AI agent has all necessary context to invoke and interpret results.
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?
All four parameters have schema descriptions (100% coverage), and the narrative description adds substantial extra meaning. For 'sequence', it details the bracket format with examples for insertions and deletions. For 'cellType', it explains the absence of a generic option. For 'topN', it mentions enumeration size. For 'use5Folds', it describes the trade-off in compute and stability. This goes well beyond the schema's descriptions.
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 clearly states the tool predicts per-pegRNA prime-editing efficiency and returns top-scoring designs. It uses a specific verb ('Predict'), identifies the resource ('PRIDICT2.0'), and describes the input format. While it implicitly differentiates from sibling tools like prime_editing_design by focusing on efficiency scoring rather than design, it does not explicitly name or contrast them, preventing a top score.
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 clear context for when to use the tool ('to CHOOSE between designs') and when not to (non-human hosts, editors outside PE2/PE3 architecture, other cell types). It warns that the output is a ranking, not a promised percentage, and notes limitations on absolute efficiency. However, it does not directly compare to sibling tools like prime_editing_design or prime_editing_twin_design, which would make the guidance more explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prime_editing_twin_designtwinPE Studio (dual pegRNA)ARead-onlyIdempotentInspect
Design a twinPE pegRNA pair (Anzalone et al. 2022) for a replacement too large for a single pegRNA's RTT: a left pegRNA nicks the + strand at/before the replacement window and a right pegRNA nicks the - strand at/after it, each synthesizing a new 3' flap; both flaps are truncated at a shared overlap in the middle of the new sequence so they anneal and resolve the edit without an HDR donor. Coordinates: both pegRNAs' protospacerStart/protospacerEnd/nickPosition are 1-based inclusive in the submitted PRE-EDIT target's frame (the PAM search runs on the unedited sequence, on both sides), while replaceSpan is the span of the new content in the returned editedSequence. Off-target activity is not evaluated (no in-browser reference genome).
| Name | Required | Description | Default |
|---|---|---|---|
| target | Yes | Forward-strand target DNA (raw or FASTA), with flanking sequence on both sides of the replacement window. | |
| pbsLength | No | Optional preferred PBS length to highlight; a full 8-17 nt sweep is always returned. | |
| replaceEnd | Yes | 1-based inclusive end of the region being replaced/deleted. For a pure insertion, set replaceEnd = replaceStart - 1. | |
| newSequence | Yes | New sequence (forward strand) to install in place of [replaceStart, replaceEnd]. Needs >= 2 bp. | |
| replaceStart | Yes | 1-based inclusive start of the region being replaced/deleted. | |
| overlapLength | No | Length (bp) of the shared overlap built into both pegRNAs' 3' flaps where they meet and anneal. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark readOnlyHint=true and idempotentHint=true, and the description adds rich behavioral detail consistent with those hints: detailed coordinate conventions ('1-based inclusive'), the fact that the PAM search runs on the unedited sequence, the dual-flap annealing mechanism, and the explicit limitation 'Off-target activity is not evaluated.' This goes well beyond the structured annotations and helps the agent set expectations for outputs and algorithm behavior.
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 dense but each sentence carries load-bearing information: biological mechanism, coordinate rules, and limitations. It is front-loaded with the primary purpose, then explains the mechanism and constraints. Some sentences are long and technical, which is acceptable given the complexity of a dual pegRNA design tool, but the density reduces readability slightly.
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 complex tool with six parameters and no output schema, the description covers the necessary context: when to use it, what the algorithm does mechanically, how coordinates are defined, what returned fields mean, and what limitations exist (no off-target scoring). It also accounts for edge cases like pure insertions via replaceEnd = replaceStart - 1, which the schema mentions but the description reinforces the intended context.
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?
The input schema already documents all six parameters with 100% coverage, so the baseline is 3. The description adds meaningful coordinate semantics (protospacerStart/protospacerEnd/nickPosition are 1-based inclusive in the PRE-EDIT target frame) and clarifies that replaceSpan refers to the 'span of the new content in the returned editedSequence,' which assists in interpreting replaceStart/replaceEnd and newSequence. This supplements—rather than merely repeats—the schema's per-parameter descriptions.
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 opens with 'Design a twinPE pegRNA pair' — a specific verb plus resource — and immediately distinguishes it from single pegRNA design by noting it's for a replacement 'too large for a single pegRNA's RTT.' It also contrasts the mechanism with 'without an HDR donor,' which differentiates it from similar CRISPR design siblings like crispr_hdr_donor or prime_editing_design.
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?
Clear use condition is stated: use when a replacement is too large for a single pegRNA's RTT. The description does not explicitly name sibling alternatives or state 'do not use if X', but the context is sufficient to infer this tool is the twinPE-specific counterpart to prime_editing_design. The absence of off-target evaluation also provides a boundary on expected behavior.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
primer_designPrimer designerARead-onlyIdempotentInspect
De-novo PCR primer design (Primer3-style penalty picker): enumerate and score candidate primer pairs against length/Tm/GC/3'-clamp/structure constraints.
| Name | Required | Description | Default |
|---|---|---|---|
| mgMM | No | Divalent cation [Mg2+] (mM). | |
| naMM | No | Monovalent cation [Na+]/[K+] (mM). | |
| gcMax | No | ||
| gcMin | No | ||
| tmMax | No | ||
| tmMin | No | ||
| tmOpt | No | ||
| dntpMM | No | Total [dNTP] (mM), chelates Mg2+. | |
| lenMax | No | ||
| lenMin | No | ||
| lenOpt | No | ||
| oligoNM | No | Total strand concentration (nM). | |
| template | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| maxReturn | No | Number of best pairs to return. | |
| targetEnd | No | 1-based inclusive end of the target region (optional). | |
| tmMaxDiff | No | Max Tm difference within a pair (°C). | |
| ampliconMax | No | ||
| ampliconMin | No | ||
| targetStart | No | 1-based inclusive start of a region the product must span (optional). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, so the description does not need to repeat safety traits. It adds behavioral context by explaining that the tool 'enumerate and score candidate primer pairs against length/Tm/GC/3'-clamp/structure constraints', revealing its algorithmic nature and output type. This goes beyond the annotations without contradicting them.
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 a single, information-dense sentence that front-loads the core purpose and method. It includes a parenthetical clarification ('Primer3-style penalty picker') and lists key constraints, all without unnecessary words.
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?
Given the tool has 19 parameters and no output schema, the description gives a useful high-level overview but omits important details like the return structure (e.g., a list of scored primer pairs) and the role of optional parameters such as targetStart/targetEnd. It is adequate for understanding the core function but falls short of being complete for such a complex tool.
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 only 47% (9 of 19 parameters have descriptions). The description mentions constraint categories like 'length/Tm/GC/3'-clamp/structure' but does not explain specific parameters such as gcMax, tmOpt, ampliconMin, or targetStart. With this low schema coverage, the description should compensate, but it remains at a high level and adds little value for understanding individual parameters.
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 clearly states the tool's function: 'De-novo PCR primer design' and specifies the method as a 'Primer3-style penalty picker' that enumerates and scores candidate primer pairs against constraints. This distinctly separates it from sibling tools like melting_temperature (which only calculates Tm) or kasp_primer_design (which is specifically for KASP genotyping).
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 phrase 'De-novo PCR primer design' implies the tool is for designing new primers, as opposed to checking existing ones or calculating Tm only. However, it does not explicitly state when to use this tool over alternatives like primer_specificity or aso_design, nor does it provide exclusions or conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
primer_specificityPrimer specificity screenARead-onlyIdempotentInspect
Self-hosted e-PCR-style screen for off-target amplicons predicted by a primer pair against a small set of curated reference genomes (currently: E. coli K-12 MG1655, B. subtilis 168, human mitochondrion rCRS, Mycoplasma hyorhinis SK76 — see genomesChecked in the response for the exact list, and note that the nuclear human and mouse genomes are NOT covered). Amplicons are 1-based inclusive on the plus strand; a product across a circular genome's origin reports an end lower than its start and sets wraps: true. This checks background/host-genome specificity, NOT whether the primers hit your intended target — pair it with in_silico_pcr against your own template for that. Batchable over candidate REVERSE primers against one fixed forward primer (screen many candidates against a shared partner) — not independent primer-pair batching, which this tool doesn't support.
| Name | Required | Description | Default |
|---|---|---|---|
| forwardPrimer | Yes | Forward primer, 5'→3'. | |
| maxMismatches | No | Mismatches tolerated per primer against a reference genome. Capped at 4 — past that a primer would not extend anyway. No primer length is refused for raising this: the pigeonhole seed just gets shorter and less selective, so more candidate sites are verified and the call takes longer (an 18-mer over the bundled genomes runs in ~0.1 s at 0 and ~1.5 s at 4). A short primer at a high setting can still exceed the binding-site pairing limit and come back "unsupported" — a 13-mer at 4 binds too many places to pair up, where an 18-mer screens fine — and either primer under 13 nt is not screened at all (ambiguousSeed: true, no amplicons). | |
| reversePrimer | Yes | Reverse primer, 5'→3'. | |
| maxProductLength | No | Ignore candidate off-target products longer than this (bp) — a search-window cap, not a biological claim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes far beyond the readOnly/idempotent annotations by disclosing coordinate conventions ('1-based inclusive on the plus strand'), circular-genome wrap behavior ('sets wraps: true'), and an important limitation ('nuclear human and mouse genomes are NOT covered'). It also clarifies that the tool does not verify intended-target amplification, a critical behavioral distinction. No contradictions with annotations exist.
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 one dense paragraph covering purpose, limitations, coordinate system, batch mode, and alternatives. Every sentence contributes useful information, but the density of clauses makes it harder to parse quickly. It could be restructured with bullets, but overall it is appropriately sized for the tool's complexity.
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?
Given the tool has no output schema, the description compensates by mentioning response fields (genomesChecked, wraps) and providing critical context about genome coverage and coordinate semantics. Combined with the thorough schema descriptions, the agent has all necessary information to select and invoke the tool correctly. The distinction from in_silico_pcr and batch-mode caveats make it complete.
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 coverage is 100% with detailed per-parameter descriptions, so the baseline is 3. The tool description adds contextual meaning about parameter roles: 'Batchable over candidate REVERSE primers against one fixed forward primer' implies forwardPrimer is fixed and reversePrimer is the screening variable. This is extra semantic value beyond the schema's simple '5'→3'' descriptions, justifying a 4.
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 clearly states the tool's purpose: 'Self-hosted e-PCR-style screen for off-target amplicons predicted by a primer pair against a small set of curated reference genomes.' It names the specific genome set and explicitly contrasts with in_silico_pcr ('pair it with in_silico_pcr against your own template for that'), distinguishing from sibling tools. The verb 'screen' plus the specific resource (primer pair vs reference genomes) makes the purpose unambiguous.
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?
Usage guidance is explicit: 'This checks background/host-genome specificity, NOT whether the primers hit your intended target — pair it with in_silico_pcr against your own template for that.' It also specifies batch behavior: 'Batchable over candidate REVERSE primers against one fixed forward primer... not independent primer-pair batching.' These statements clearly explain when to use this tool and when to use an alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
protease_digestionProtease DigestionARead-onlyIdempotentInspect
In-silico protease/chemical digestion: cleave a protein and report each peptide's position, length and neutral mass.
| Name | Required | Description | Default |
|---|---|---|---|
| maxMass | No | Optional upper bound on neutral monoisotopic mass (Da). | |
| minMass | No | Optional lower bound on neutral monoisotopic mass (Da). | |
| protease | No | Protease or chemical cleavage agent. | trypsin |
| sequence | Yes | Protein sequence (one-letter amino-acid codes; non-AA characters ignored). | |
| maxPeptides | No | Cap on the number of returned peptides. | |
| missedCleavages | No | Allowed missed internal cleavages (0–2). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, indicating a safe, side-effect-free operation. The description adds minimal behavioral context beyond stating it's an in-silico simulation. It does not mention constraints like the maxPeptides cap or the handling of non-AA characters, which are in the schema but not in the description.
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 a single, front-loaded sentence that conveys the essential information without any verbose or redundant phrasing. Every word contributes to understanding the tool's core function and output.
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?
Given the lack of an output schema, the description only partially describes the return values (position, length, neutral mass). It does not specify whether the output is a list, the ordering, or how missed cleavages or other parameters affect results. A more complete description would clarify the output structure.
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?
The input schema has 100% coverage with parameter descriptions, so the description does not need to repeat them. However, the description adds no extra meaning beyond the schema, such as usage tips or parameter relationships. It meets the baseline for a well-documented 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 clearly states the tool's action ('cleave a protein') and the output ('report each peptide's position, length and neutral mass'). It uses specific verb+resource and distinguishes from sibling tools like 'protein_properties' or 'characterize_sequence' which have broader or different purposes.
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 implies usage for in-silico digestion but provides no explicit guidance on when to use this tool vs. alternatives, nor does it mention prerequisites or exclusions. The context is clear but lacks direct when-to-use and when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
protein_annotate_pollPoll a protein annotation jobARead-onlyIdempotentInspect
Check an InterProScan job submitted via protein_annotate_submit. Returns {status, ready:false} while still running; once FINISHED, also returns the parsed domain architecture, per-match details and deduplicated GO terms.
| Name | Required | Description | Default |
|---|---|---|---|
| jobId | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint and idempotentHint. The description adds valuable behavioral detail about the polling state machine (returns different data when running vs finished) and the specific data returned upon completion.
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, efficiently covering purpose, behavior, and return value. No unnecessary words.
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?
Given the simplicity (1 param, no output schema), the description fully explains the tool's behavior and return values. No gaps.
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 coverage is 0% (no description for jobId). The description implies that jobId comes from a previous submit call, but doesn't provide format or constraints. However, with only one parameter, its purpose is largely self-explanatory.
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 clearly states the tool polls an InterProScan job and specifies the return structure for both running and finished states. It distinguishes itself from the submit sibling (protein_annotate_submit).
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 mentions it checks a job submitted via protein_annotate_submit, providing clear usage context. No explicit when-not-to-use or alternatives, but the polling nature makes it straightforward.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
protein_annotate_submitSubmit a protein for domain/GO annotationARead-onlyIdempotentInspect
Submit a protein sequence to EBI InterProScan for domain architecture, family and GO-term annotation. Returns a jobId immediately — the job itself takes minutes; poll it with protein_annotate_poll.
| Name | Required | Description | Default |
|---|---|---|---|
| appl | No | Restrict to one member database (e.g. "PfamA"); omit to run EBI's defaults across all of them. | |
| goterms | No | Include GO-term cross-references. | |
| sequence | Yes | Protein sequence, one-letter code (FASTA header, if any, is stripped). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the job is asynchronous and takes minutes, which goes beyond annotations (readOnlyHint, idempotentHint). No contradiction with annotations. The description adds behavioral context about immediate return of jobId and need for polling.
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, both front-loaded with essential information. Every word adds value, with no redundancy or filler. Efficient and clear.
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?
Given the three parameters are well-described in the schema, the description sufficiently covers the workflow. It mentions the asynchronous nature and need to poll, but could optionally specify the format of jobId. Overall adequate for a submission tool with no 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 coverage is 100% with clear descriptions for each parameter. The description does not add additional parameter-level meaning beyond the schema. It restates the overall function but not per-parameter details. Baseline score of 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 clearly states the verb (submit), resource (protein sequence to EBI InterProScan), and output (jobId). It distinguishes itself from the sibling tool 'protein_annotate_poll' by indicating that this is the submission step and polling is done separately.
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 the workflow: submit and then poll with protein_annotate_poll. It does not list exclusions or alternatives, but the context makes it clear that this is the submission step. The requirement for a protein sequence is implied but not stated as a prerequisite.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
protein_hydrophobicityHydrophobicity ProfileARead-onlyIdempotentInspect
Sliding-window hydropathy/hydrophobicity profile (ProtScale-style) over a published amino-acid scale.
| Name | Required | Description | Default |
|---|---|---|---|
| scale | No | Amino-acid scale. Kyte-Doolittle and Eisenberg are hydrophobicity; Hopp-Woods is hydrophilicity. | Kyte-Doolittle |
| window | No | Sliding-window size (clamped to an odd number ≥ 1). | |
| sequence | Yes | Protein sequence (one-letter amino-acid codes; non-AA characters ignored). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only and idempotent hints. The description adds meaningful behavioral details: sliding-window approach, use of published scales, and handling of non-AA characters. No contradiction with annotations.
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?
Single, efficient sentence that immediately conveys the core functionality. No extraneous words, front-loaded with key 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?
Given the schema and annotations cover the needed details, the description is largely complete. However, the output format ('profile') is vague; mentioning that it returns a list of scores per window position would improve completeness. Still adequate for a low-complexity tool.
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 coverage is 100%, so the schema fully documents parameters. The description adds context like 'ProtScale-style' but does not provide additional meaning beyond what is in schema descriptions. Baseline score 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 clearly specifies the tool computes a sliding-window hydropathy/hydrophobicity profile, referencing ProtScale and published amino-acid scales. It distinctively names the resource (protein sequence) and the operation (profile computation), differentiating it from broader sibling tools like 'protein_properties'.
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?
No explicit guidance on when to use this tool versus alternatives such as 'protein_properties' or 'codon_adaptation_index'. The context is implied by the tool name, but the description does not provide conditions or exclusions to aid selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
protein_propertiesProtein PropertiesARead-onlyIdempotentInspect
Protein properties: molecular weight, isoelectric point, GRAVY, extinction coefficient and composition.
| Name | Required | Description | Default |
|---|---|---|---|
| sequence | Yes | Protein sequence (one-letter amino-acid codes; non-AA characters ignored). | |
| chargeStep | No | pH step for the net-charge titration curve (0–14). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, idempotentHint) already assure safety and idempotency. The description adds the set of computed properties but no additional behavioral context (e.g., no mention of return format or limitations beyond the schema).
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?
Single sentence that efficiently lists the key outputs, no superfluous content. Front-loaded with the purpose.
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?
Given no output schema, the description adequately specifies the output (computed properties). For a tool with two parameters and a narrow scope, this is sufficient. However, the lack of return format details is a minor gap.
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 coverage is 100% with descriptions for both parameters. The tool description does not add new information about parameters beyond the schema, meeting the baseline but not exceeding it.
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 explicitly lists the computed properties (molecular weight, isoelectric point, GRAVY, extinction coefficient, composition), clearly stating what the tool does. Distinguishes from siblings like protein_hydrophobicity.
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?
No explicit guidance on when to use this tool versus alternatives (e.g., protein_hydrophobicity). Implied usage from the listed properties, but no when-not-to-use or sibling comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
random_sequenceRandom SequenceBRead-onlyIdempotentInspect
Generate a random DNA, RNA or protein sequence, optionally with a target GC content.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | dna | |
| length | Yes | Number of residues to generate. | |
| gcContent | No | Target GC percentage 0..100 (dna/rna only); omit for uniform. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description claims the tool is 'random' and 'idempotentHint' is true in annotations. This is a direct contradiction: a random sequence tool cannot be idempotent. The description does not clarify that each call returns a different sequence, nor does it discuss the randomness source or reproducibility.
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 a single, clear sentence with 16 words. Every word is necessary and no redundancy. It is front-loaded with the core purpose.
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 description lacks details about output format, length range, or behavior of the GC content parameter. Given no output schema, the agent is left to infer return values. The annotation contradiction further reduces completeness.
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?
The description adds meaning beyond the schema by mentioning 'optionally with a target GC content', clarifying that gcContent is optional and only for dna/rna. However, schema coverage is 67% and kind's enum values are not described in the description, leaving some ambiguity.
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 clearly states the tool generates a random DNA, RNA, or protein sequence with an optional target GC content. It specifies the verb 'Generate' and the resource 'random sequence', distinguishing it from siblings like gc_content or reverse_complement.
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 no guidance on when to use this tool versus alternatives. For example, it doesn't mention that it's useful for testing or generating synthetic sequences, nor does it exclude scenarios where deterministic sequences are needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rbs_designDesign a ribosome binding site (OSTIR)ARead-onlyIdempotentInspect
Design a 5' UTR / ribosome binding site for a given CDS. Generates a spread of Shine-Dalgarno cores and SD-to-start spacings, scores every one with OSTIR in the context of your own CDS (which matters — the rate depends on how the RBS interacts with that CDS's 5' folding), and returns them ranked. Supply targetExpression to rank by closeness to a target rate instead of by maximum strength, and supply your existing 5' UTR to get a measured baseline and fold-change for each candidate. Runs ViennaRNA on a shared service and is therefore rate limited (see 429/503). PREDICTED, NOT MEASURED (Spearman ρ = 0.39 on two 5' UTR datasets it was not fitted to). Spearman ρ = 0.39 against measured expression on two 5' UTR datasets it was not fitted to (Gilliot & Gorochowski, Nucleic Acids Res 2024;52(13):e58). The widely quoted 53% within 2-fold / 91% within 10-fold are calibration residuals on the fitting set, not held-out validation. Valid for: translation INITIATION only, in E. coli-like Gram-negative hosts (the model is parameterised on the E. coli anti-Shine-Dalgarno sequence). Rankings within one construct context; the absolute value has no units and no meaning.
| Name | Required | Description | Default |
|---|---|---|---|
| cds | Yes | Coding sequence, raw or FASTA, starting at its start codon. Only the 5' end affects the prediction, so the first ~90 nt is enough. A, C, G, T/U only. Max 3,000 nt. | |
| limit | No | How many ranked candidates to return. 1-60. | |
| leader | No | Optional 5' context upstream of the designed RBS — the transcribed leader from your promoter. Affects the standby-site term. Defaults to a 20 nt unstructured poly-A leader. | |
| currentUtr | No | Optional: your existing 5' UTR (everything upstream of the start codon). Scored as a baseline so each candidate gets a fold-change against it. | |
| targetExpression | No | Optional target rate on OSTIR's arbitrary scale. Candidates are then ranked by closeness to it (log-ratio) rather than by maximum strength. Only meaningful against a number produced by this same tool. | |
| antiShineDalgarno | No | Optional anti-Shine-Dalgarno sequence (the 16S rRNA 3' end) to model a non-E. coli host. Omit to use OSTIR's own E. coli default. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint and idempotentHint), the description discloses critical behavioral traits: the tool is PREDICTED not measured, explains the validation caveats (53%/91% are calibration residuals), and notes rate limiting on the shared service. This adds substantial context that annotations alone cannot provide.
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 detailed yet front-loaded with the core purpose. Some repetition of the validation data appears twice, which could be streamlined, but overall it is efficient and informative.
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?
Given the tool has 6 parameters (only 1 required), no output schema, and moderate complexity, the description is complete. It explains the effect of each optional parameter (targetExpression, currentUtr, antiShineDalgarno), the return behavior (ranked candidates, baseline fold-change), and limitations (E. coli-like hosts, no absolute value meaning).
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 coverage is 100%, so baseline 3 is appropriate. The description does not add significant semantic nuance beyond the schema; it mentions the leader and currentUtr parameters in context but doesn't elaborate on types or constraints.
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 clearly states the tool designs a 5' UTR / ribosome binding site for a given CDS, using OSTIR scoring. It distinguishes itself from siblings like rbs_predict (which predicts for a given RBS) and other design tools by naming the specific method and output structure.
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 guidance on when to use this tool: for translation initiation design in E. coli-like hosts, with notes on the predictive nature (Spearman ρ=0.39, not fitted to held-out data) and that it is for ranking within one construct, not absolute values. It also warns about rate limits (429/503) from shared ViennaRNA service.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rbs_predictPredict translation initiation rate (OSTIR)ARead-onlyIdempotentInspect
Predict the translation initiation rate at each start codon in a bacterial mRNA using OSTIR, the open-source continuation of the Salis lab RBS Calculator, with ViennaRNA free energies. Returns the predicted rate plus the full thermodynamic breakdown (16S rRNA:mRNA hybridisation, mRNA unfolding, spacing, standby site, start-codon binding) for every start codon found. Rates are on an arbitrary scale — compare them as ratios, not as absolute expression levels. Runs ViennaRNA on a shared service and is therefore rate limited (see 429/503). PREDICTED, NOT MEASURED (Spearman ρ = 0.39 on two 5' UTR datasets it was not fitted to). Spearman ρ = 0.39 against measured expression on two 5' UTR datasets it was not fitted to (Gilliot & Gorochowski, Nucleic Acids Res 2024;52(13):e58). The widely quoted 53% within 2-fold / 91% within 10-fold are calibration residuals on the fitting set, not held-out validation. Valid for: translation INITIATION only, in E. coli-like Gram-negative hosts (the model is parameterised on the E. coli anti-Shine-Dalgarno sequence). Rankings within one construct context; the absolute value has no units and no meaning.
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | Optional 1-based position; only consider start codons beginning at or before it. | |
| start | No | Optional 1-based position; only consider start codons beginning at or after it. | |
| sequence | Yes | mRNA sequence, raw or FASTA — the 5' UTR plus at least the start of the CDS. DNA (T) and RNA (U) are both accepted and scored identically. A, C, G, T/U only. Max 3,000 nt. | |
| antiShineDalgarno | No | Optional anti-Shine-Dalgarno sequence (the 16S rRNA 3' end) to model a non-E. coli host. Omit to use OSTIR's own E. coli default. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes far beyond annotations (readOnlyHint, idempotentHint) by disclosing rate limiting (429/503 errors), shared service usage, return content (thermodynamic breakdown), the predictive accuracy (Spearman ρ=0.39), and the pitfalls of commonly cited statistics (calibration residuals). No contradiction with annotations.
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 comprehensive but verbose (~150 words). It is front-loaded with the main action and each sentence adds value, but it repeats the Spearman correlation and could be trimmed without losing meaning. Adequate but not optimally concise.
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 prediction tool with 4 parameters and no output schema, the description thoroughly explains what the tool returns (full thermodynamic breakdown), its limitations (arbitrary scale, validation stats), rate limits, and acceptable inputs. No gaps in context given the complexity.
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?
All four parameters have schema descriptions (100% coverage). The tool description adds meaning beyond schema by specifying sequence requirements (5' UTR + CDS, DNA/RNA accepted, max 3000 nt) and explaining how antiShineDalgarno models non-E. coli hosts. This extra context raises it above the baseline of 3.
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 clearly states it predicts translation initiation rate using OSTIR for bacterial mRNA, specifying the start codons, return value (rate and thermodynamic breakdown), and distinguishes it from sibling tools like rbs_design by emphasizing prediction over design.
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?
Provides clear context on when to use (translation initiation only, E. coli-like hosts, rankings within a construct) and limitations (arbitrary scale, predicted vs measured, validation caveats). However, it lacks explicit differentiation from alternatives like rbs_design or gene_expression, and does not state when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
restriction_sitesRestriction sitesBRead-onlyIdempotentInspect
Find restriction enzyme recognition sites in a DNA sequence.
| Name | Required | Description | Default |
|---|---|---|---|
| enzymes | No | Enzyme names to scan; omit to scan all curated enzymes. | |
| circular | No | Treat the sequence as circular (plasmid) so sites spanning the origin are found. | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the description's 'Find' aligns. The description adds minimal context (DNA sequence, but no mention of output format or behavior for large sequences). It does not contradict annotations.
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 a single concise sentence. It is efficient but could be slightly improved with a brief note on output expectations. No wasted words.
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?
Given low complexity and full schema coverage, the description is adequate for input but omits any hint about the return value (list of sites/positions). This is a moderate gap for a tool that produces output.
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 coverage is 100% with clear descriptions for each parameter (enzymes, circular, sequence). The description adds no additional meaning beyond the schema, so the baseline score of 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 clearly states the verb 'Find' and the resource 'restriction enzyme recognition sites' in a DNA sequence. It distinguishes itself from sibling tools like 'double_digest' or 'virtual_gel' which involve further processing of sites.
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 no guidance on when to use this tool versus alternatives such as 'double_digest' or 'virtual_gel'. It lacks any 'when-to-use', 'when-not-to-use', or explicit context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reverse_complementReverse ComplementARead-onlyIdempotentInspect
Reverse, complement and reverse complement of a DNA or RNA sequence.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | dna | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, indicating safe, idempotent behavior. The description adds value by detailing the specific operations (reverse, complement, reverse complement) and the accepted sequence types (DNA/RNA), providing context beyond annotations.
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 a single, well-front-loaded sentence with no filler. Every word earns its place, conveying the core functionality efficiently.
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 simple, but the description omits output details (e.g., format, whether all three operations are returned or one). No output schema exists, so the description should hint at the return structure. It is adequate for a basic transformation but leaves room for confusion about what the agent receives.
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 coverage is 50%: the 'sequence' parameter has a functional description, but the 'type' parameter (enum) lacks description. The tool description mentions operations but does not clarify how to specify which operation output is desired. This ambiguity leaves the parameter semantics moderately clear but incomplete.
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 clearly states the tool performs reverse, complement, and reverse complement operations on DNA or RNA sequences. It uses specific verbs and resource (nucleotide sequence) and distinguishes itself from sibling tools that focus on other sequence analyses.
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?
No explicit guidance on when to use this tool vs. alternatives. The description implies its use for basic sequence transformations, but fails to mention exclusions or prerequisites. Among many sibling tools, this one is unique in its operation, but the lack of usage context slightly hinders selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reverse_translateReverse TranslateARead-onlyIdempotentInspect
Back-translate a protein to DNA (most-frequent codon per organism, or degenerate IUPAC consensus).
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | frequent | |
| protein | Yes | Protein sequence (one-letter codes; * for stop). | |
| organism | No | Codon-usage host (ignored in degenerate mode). | ecoli |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, idempotentHint) already indicate safety. Description adds that the tool uses organism-specific codon usage and that degenerate mode ignores organism, providing useful behavioral context beyond annotations.
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?
Single sentence efficiently conveys core purpose and mode distinction. Every word is meaningful, no filler.
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?
Given the tool has 3 parameters and no output schema, the description adequately covers when to use each mode and the role of organism. However, it does not specify the output format (DNA sequence) or any constraints on protein sequence length.
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 already describes 2 of 3 parameters (protein, organism). The description adds overall context by explaining the two modes and how they work, but does not add specific meaning for the mode parameter beyond what the enum implies.
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?
Description clearly states verb (back-translate), resource (protein to DNA), and distinguishes two modes: most-frequent codon per organism and degenerate IUPAC consensus. Sibling tools like 'translate' perform forward translation, so this tool is well-differentiated.
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?
No explicit guidance on when to use reverse_translate vs alternatives like codon_optimize or translate. The description implies two modes but does not explain when to choose one over the other or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rna_foldRNA Secondary Structure (MFE)ARead-onlyIdempotentInspect
Predict an RNA secondary structure by minimum free energy (MFE) using a Zuker dynamic program with Turner 1999 nearest-neighbor stacking energies (no pseudoknots). Returns the dot-bracket structure, the estimated MFE (kcal/mol), and the list of base pairs. A from-scratch, in-browser implementation (there is no usable browser ViennaRNA); the simplified loop energy model makes the MFE a good comparative estimate, not a lab-grade absolute. PREDICTED, NOT MEASURED. No held-out skill statistic is claimed for this implementation. The loop model omits terminal mismatches, dangling ends, coaxial stacking and special hairpins that ViennaRNA and RNAstructure include, so the MFE is a comparative estimate between candidates rather than a lab-grade absolute. Valid for: a single strand up to 600 nt at a fixed 37 °C. No pseudoknots, no two-strand hybridisation, and no temperature dependence — a structure predicted here is not a structure at your annealing temperature.
| Name | Required | Description | Default |
|---|---|---|---|
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and idempotentHint, but the description adds significant behavioral context: it is an in-browser implementation with a simplified loop model, the MFE is a comparative estimate not lab-grade, and it explicitly states 'PREDICTED, NOT MEASURED'. This goes well 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core function and outputs, but it is verbose and contains some redundancy (e.g., the MFE comparative estimate is mentioned twice). While informative, it could be more concise without losing essential caveats.
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?
Given the tool has only one parameter and no output schema, the description fully explains the input requirements, output contents, and critical limitations. It covers valid ranges, conditions, and accuracy caveats, making it complete for an agent to use correctly.
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?
The schema already provides 100% coverage for the single parameter 'sequence' (description: 'Nucleotide sequence (raw or FASTA; IUPAC accepted).'). The tool description adds no additional parameter-specific details beyond restating the general purpose, so the baseline score of 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 clearly states the tool predicts RNA secondary structure by minimum free energy using the Zuker algorithm with Turner 1999 energies. It specifies the output types (dot-bracket, MFE, base pairs) and distinguishes it from more complex tools like ViennaRNA/RNAstructure, making the purpose unambiguous.
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 lists valid inputs (single strand up to 600 nt, 37°C) and limitations (no pseudoknots, no two-strand hybridization, no temperature dependence), which helps the agent decide when to use this tool. However, it does not mention alternative tools from the sibling list (e.g., oligo_cofold for two strands) for comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sanger_vs_referenceSanger vs ReferenceARead-onlyIdempotentInspect
Align a Sanger ABIF read to a reference and report identity plus every mismatch, insertion and deletion.
| Name | Required | Description | Default |
|---|---|---|---|
| read | No | Sanger read as FASTA or raw text (alternative to uploading an ABIF trace). Also the per-record field for plate-batch runs via /api/v1/batch. | |
| fileName | No | Optional original file name (echoed back). | |
| reference | Yes | Expected reference sequence (FASTA or raw). | |
| fileBase64 | No | The binary ABIF (.ab1 / .abi) trace file, base64-encoded. | |
| minCoverage | No | Fraction of the reference the read must span before a PASS is meaningful; below this the verdict is 'ambiguous_low_coverage' regardless of identity. Lower it when the reference is intentionally just the region/junction being checked. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the key behavioral trait of reporting mismatches, insertions, and deletions beyond what annotations provide (readOnlyHint, idempotentHint). However, it does not disclose the meaning of the ambiguous_low_coverage verdict or batch behavior. Annotations already indicate safety (read-only, idempotent), so the description provides moderate additional value.
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 a single sentence, front-loading the key functionality. Every word is impactful with no redundancy. It is well-structured for quick comprehension.
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?
While the description explains the main output, it lacks details on batch processing (mentioned in the read parameter description), the meaning of the PASS/ambiguous_low_coverage verdicts, and the interplay between read and fileBase64 parameters. Given the tool's complexity (5 parameters, batch mode), the description could be more comprehensive.
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?
The input schema already has 100% coverage with descriptions for all 5 parameters. The tool description adds no parameter-specific details beyond the schema. Therefore, it does not enhance parameter understanding beyond the baseline expected from 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 clearly states the action ('Align'), the input type ('Sanger ABIF read'), the reference, and the output ('report identity plus every mismatch, insertion and deletion'). This distinguishes it from sibling tools like parse_sanger_trace which only extracts data without alignment, and pairwise_alignment which is for general sequences.
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 does not provide explicit guidance on when to use this tool versus alternatives such as pairwise_alignment or batch. It implicitly targets Sanger reads, but no explicit when-not or alternative recommendations. Thus, it lacks proactive usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_permalinkSave a permanent shareable linkARead-onlyIdempotentInspect
Run a registered tool and save its (arguments, result) pair under a short permanent code that anyone with the link can view read-only (/permalink/{code}). Use this to cite or share a specific result (e.g. a verify_construct or verify_assembly check) rather than re-pasting it.
| Name | Required | Description | Default |
|---|---|---|---|
| args | Yes | Arguments for that tool, exactly as you would pass to it directly. | |
| tool | Yes | Name of the registered tool to run and save (e.g. "verify_construct"). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and idempotentHint=true, suggesting safe, non-modifying behavior. Description adds context that the result is saved under a short permanent code viewable by anyone with the link (read-only). This goes beyond annotations by explaining the permalink mechanism and intended usage for sharing.
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 concise sentences. First sentence explains what the tool does and the outcome (permalink code). Second sentence provides a usage case. No redundant information; front-loaded with the core functionality.
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?
While the description covers purpose and usage, it does not describe the return value or output format. Since there is no output schema, the description should mention what the tool returns (e.g., a permalink URL or code). This gap could confuse the agent about what to expect after invocation.
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 coverage is 100% with descriptions for both parameters (tool name and args). Description clarifies that args should be passed exactly as to the tool directly, which adds guidance beyond the schema. Example of using verify_construct as a tool name is helpful. No further elaboration needed for these standard parameters.
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?
Description clearly states it runs a registered tool and saves the result as a permanent shareable link. Uses specific verbs ('run', 'save') and resource ('permalink'). Distinguishes from sibling tools by its unique function of creating a link for sharing results, unlike other tools that perform analyses or transformations.
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 advises using this tool for citing or sharing specific results (e.g., verify_construct) rather than re-pasting them. Provides a clear use case but does not exclude scenarios or mention when not to use it. Could benefit from mentioning that it's only for read-only sharing of results from registered tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seqfile_statsFASTA/FASTQ StatsARead-onlyIdempotentInspect
Statistics for a FASTA or FASTQ file: count, length distribution, N50, GC content and (FASTQ) mean quality.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes | FASTA or FASTQ text (raw sequence is treated as single-record FASTA). | |
| qualityOffset | No | FASTQ Phred ASCII offset (33 = Sanger/Illumina 1.8+, 64 = Illumina 1.3–1.7). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, indicating safe, non-destructive behavior. The description adds context about the outputs but does not contradict annotations. With annotations covering safety, a 3 is appropriate.
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?
Single sentence with a clear list of outputs. No extraneous words, highly efficient.
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?
Tool has few parameters and no output schema; description lists all computed statistics. However, it does not specify the return format (e.g., dictionary) or constraints like input size limits, leaving minor ambiguity.
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 parameter descriptions (input handling, qualityOffset enum) are already comprehensive. The tool description adds no additional parameter-specific meaning beyond what the schema provides.
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?
Description explicitly lists computed statistics (count, length distribution, N50, GC content, mean quality) for FASTA/FASTQ files, clearly distinguishing from siblings like gc_content (which only computes GC content) and fastq_qc_report (which is broader).
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?
No guidance on when to use this tool vs alternatives such as fastq_qc_report or gc_content. The description mentions FASTA/FASTQ but does not specify prerequisites, limitations, or cases where another tool would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sequence_fetchFetch sequence by accessionARead-onlyIdempotentInspect
Fetch a public DNA/protein record by accession from NCBI Nucleotide, NCBI Protein, UniProt, or Ensembl (e.g. NM_000546, NP_000537, P04637, ENSG00000141510). Only the accession is sent upstream. Use sequence_search first if you only know a gene/organism name, not an accession. For an Ensembl transcript ID this returns spliced cDNA; for a gene ID it returns the full genomic locus (introns included) — Ensembl's own default for each ID type.
| Name | Required | Description | Default |
|---|---|---|---|
| db | No | Database to query; auto-detects from the accession format. | auto |
| format | No | Output format (GenBank is only available for NCBI accessions — UniProt and Ensembl are FASTA-only). | fasta |
| accession | Yes | GenBank/RefSeq accession (e.g. NM_000546), UniProtKB accession (e.g. P04637), or Ensembl stable ID (e.g. ENSG00000141510, ENST00000335137). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and idempotent behavior. The description adds valuable behavioral context, such as 'Only the accession is sent upstream' (privacy) and the detailed behavior for Ensembl IDs (spliced cDNA vs. genomic locus). No contradiction with annotations.
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 three sentences, each earning its place: main purpose with examples, privacy note, and usage guidance with Ensembl nuance. Front-loaded and efficiently written without redundancy.
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 tool with 3 parameters and no output schema, the description covers core behavior, databases, usage scenario, and a special case for Ensembl. It is sufficiently complete given the annotations and schema richness.
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 baseline is 3. The description adds extra meaning beyond the schema by explaining that 'auto' db detects from format and that GenBank format is only available for NCBI. This enhances parameter understanding.
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 clearly states the tool's verb ('Fetch'), resource ('DNA/protein record'), and scope ('by accession from NCBI Nucleotide, NCBI Protein, UniProt, or Ensembl'), with concrete examples. It also distinguishes itself from the sibling 'sequence_search' by specifying the precondition of having an accession.
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 advises to use 'sequence_search' if only a gene/organism name is known instead of an accession, providing clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sequence_format_convertSequence Format ConverterARead-onlyIdempotentInspect
Convert between FASTA and GenBank (whole sequence, CDS or protein), or export to TSV.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Output format. fasta-cds / fasta-protein extract CDS features (GenBank input only). | fasta |
| from | No | Input format; 'auto' sniffs it from the first meaningful line. | auto |
| input | Yes | A FASTA or GenBank record to convert. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, indicating safe, idempotent behavior. The description adds no contradictions and accurately reflects the conversion nature. However, it does not disclose additional context like input size limits or error handling.
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 a single concise sentence with 15 words, front-loading the key action and format options. 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 simple conversion tool with full schema coverage and safety annotations, the description provides adequate information. It covers the main purpose and format variants, though lacks details on edge cases or error conditions.
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?
With 100% schema coverage, the schema describes parameters. The description adds value by clarifying the 'to' enum options (fasta-cds, fasta-protein) correspond to CDS and protein extraction, which goes beyond the schema descriptions.
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 clearly states the tool converts between FASTA and GenBank formats (whole sequence, CDS, or protein) and exports to TSV, which is specific and distinguishes it from sibling tools like format_sequence that may handle display formatting.
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 does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention exclusions or prerequisites. The usage is implied by the name and description but not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sequence_reportSequence reportARead-onlyIdempotentInspect
One-click DNA analysis: composition, ORFs, restriction-enzyme scan (single cutters) and end-primer Tm composed into a single report with a copyable text block.
| Name | Required | Description | Default |
|---|---|---|---|
| maxOrfs | No | Maximum number of ORFs to return, longest first. | |
| minOrfAa | No | Minimum ORF length in amino acids. | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| endPrimerLength | No | Length of the naive end primers taken from each end. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, covering safety. The description adds that the output is a 'copyable text block', but no additional behavioral traits beyond what annotations provide.
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 a single sentence that effectively front-loads the core value proposition. It is concise but slightly long; each clause serves a purpose without unnecessary words.
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 description lists all major components of the report and mentions the output format (copyable text block). Given the lack of an output schema, this is adequate. However, limitations like sequence length are not covered, but the tool is fairly complete for its scope.
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 coverage is 100%, so the input schema already documents all parameters. The description does not add significant new meaning beyond contextualizing the components of the report, but that does not improve parameter understanding.
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 clearly states the tool performs a 'one-click DNA analysis' generating a combined report with composition, ORFs, restriction-enzyme scan, and end-primer Tm. This specific verb+resource distinguishes it from sibling tools that perform only individual analyses.
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 implies usage for a quick combined analysis, but does not explicitly state when to use this tool versus alternatives like individual analysis tools. No when-not or alternative naming is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sequence_searchSearch sequence databases by nameARead-onlyIdempotentInspect
Resolve a gene/organism name — or a raw NCBI search term — to candidate accessions, instead of guessing one. Returns up to maxResults hits (accession, title, organism); pass the accession you want to sequence_fetch.
| Name | Required | Description | Default |
|---|---|---|---|
| db | No | nucleotide | |
| gene | No | Gene symbol/name, e.g. "BRCA1". Combined with organism (if given) into a search term. | |
| term | No | Raw NCBI search term (advanced) — overrides gene/organism when given, e.g. "BRCA1[gene] AND Homo sapiens[orgn]". | |
| organism | No | Organism name, e.g. "Homo sapiens". Optional; narrows the gene search. | |
| maxResults | No | Up to 20. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint and idempotentHint, and the description adds behavioral context: returns up to maxResults hits with specific fields (accession, title, organism) and that the term parameter overrides gene/organism. No contradictions.
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 purpose and followed by actionable return details and workflow. Every sentence earns its place with no redundancy.
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 description covers the return format and parameter interaction adequately. Without an output schema, it provides enough information for an agent to understand what to expect. It could mention the specific databases but is sufficient.
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 80%, and the description adds the key semantic that 'term' overrides 'gene' and 'organism', which is not fully captured in the schema. This adds useful meaning beyond the schema's parameter descriptions.
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 clearly states the tool's purpose: resolving a gene/organism name or raw NCBI search term to candidate accessions, and distinguishes it from sequence_fetch by instructing to pass the resulting accession to that sibling tool.
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 usage guidance: use this tool instead of guessing an accession, and then pass the accession to sequence_fetch. It contrasts with the sibling tool sequence_fetch, but does not explicitly exclude other siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sequencing_readback_verifySequencing read-back verificationARead-onlyIdempotentInspect
Align raw Sanger or NGS reads (FASTA or FASTQ) back onto a claimed reference sequence using minimap2, and report per-read mapping identity plus exact variant positions (substitutions/insertions/deletions), with a consensus view across reads and a corrected consensus sequence (the reference with every consensus-supported edit applied). Each alignment also reports how much of the READ was used (queryCoveragePct/clippedBases), since identity is measured over the aligned portion only and a partially-used read would otherwise score perfectly. Set circular: true for a plasmid so reads crossing the reference's arbitrary linear start are aligned through the join rather than cut short at it. Complements verify_construct/verify_assembly: those re-derive what a design SHOULD produce from its own stated inputs; this checks what a real sequencer actually read back.
| Name | Required | Description | Default |
|---|---|---|---|
| reads | Yes | Raw reads in FASTA or FASTQ format (auto-detected). Up to 2000 reads / 5,000,000 total bp per call. | |
| circular | No | Treat the reference as a circular molecule (plasmid). Reads that straddle its arbitrary linear start are then aligned right through the join instead of being cut short there, so variants in the part that would otherwise be clipped away are actually called. Turn this on for whole-plasmid data — the reads begin wherever the molecule was cut, so most of them cross the join. Reads longer than the reference still get clipped. | |
| reference | Yes | The claimed/expected reference sequence. | |
| minSupportingReads | No | Minimum number of reads agreeing on a variant position for it to count as a consensus (candidate real) variant rather than single-read noise. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint and idempotentHint annotations, the description discloses key behavioral details: identity is measured over the aligned portion only, with queryCoveragePct/clippedBases reported to avoid partially-used reads scoring perfectly; it explains how circular alignment handles reads crossing the reference start; and it describes the corrected consensus sequence output. This is rich, non-obvious context that helps the agent anticipate behavior.
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 well-structured and front-loaded: the first sentence states the core function and outputs, followed by a caveat about identity metrics, a practical note on circular genomes, and a clear comparison to sibling tools. Every sentence provides essential information without fluff or repetition.
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?
Given that there is no output schema, the description thoroughly explains what the tool returns (per-read mapping identity, exact variant positions, consensus view, corrected consensus sequence). It also covers important caveats (queryCoveragePct/clippedBases) and when to use circular mode. Combined with detailed schema descriptions and annotations, this makes the tool's behavior and context highly complete.
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 main description adds a brief rationale for the `circular` parameter, but the schema already provides a more detailed explanation of the same concept. It does not significantly add meaning for `reference`, `reads`, or `minSupportingReads` beyond what the schema offers, so it stays at the baseline.
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+resource: 'Align raw Sanger or NGS reads (FASTA or FASTQ) back onto a claimed reference sequence using minimap2, and report per-read mapping identity plus exact variant positions.' It clearly distinguishes itself from siblings by noting it complements verify_construct/verify_assembly, which re-derive expected results from design inputs rather than checking actual sequencer reads.
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 says when to use this tool versus alternatives: 'Complements verify_construct/verify_assembly: those re-derive what a design SHOULD produce from its own stated inputs; this checks what a real sequencer actually read back.' It also gives specific guidance for the `circular` parameter, saying to set it for plasmids so reads crossing the arbitrary linear start are aligned through the join.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
session_createCreate a design sessionAInspect
Start a scratch session that holds several named sequences/values (e.g. vector, insert, forward/reverse primer) for use across multiple tool calls via session_run, instead of re-pasting them into every call. Sessions expire after 24 hours.
| Name | Required | Description | Default |
|---|---|---|---|
| entries | No | Initial named entries, e.g. {"vector": "...", "insert": "..."}. Optional — you can also add entries later with session_set. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds critical behavioral context beyond annotations: sessions expire after 24 hours. Annotations only provide readOnlyHint=false, so no contradiction; this is transparent about a key limitation.
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 concise sentences, front-loaded with the core action, no redundant information. Every sentence 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?
For a simple tool with one optional parameter and no output schema, the description fully covers purpose, usage, and behavior (including expiration), making it complete for effective use.
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 coverage is 100% (one parameter described in schema), baseline 3. The description enhances meaning by providing an example usage (vector, insert) and noting that entries can be added later via session_set, adding practical value.
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 clearly states the tool starts a scratch session to hold named sequences/values for reuse across multiple calls via session_run, distinguishing it from related tools by emphasizing the session concept and its purpose.
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 explains when to use the tool (to avoid re-pasting values) and mentions a sibling (session_run), but does not explicitly state when not to use it or mention alternatives like session_set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
session_getRead a design sessionARead-onlyIdempotentInspect
Fetch named entries from a session. Prefer session_run for actually USING the values — it keeps raw sequences out of your context. Use this mainly to inspect or debug what a session currently holds.
| Name | Required | Description | Default |
|---|---|---|---|
| names | No | Only return these entries; omit to return all of them. | |
| sessionId | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and idempotent behavior. The description adds useful context that entries are fetched for inspection/debugging, enhancing transparency without contradicting annotations.
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, concise and front-loaded with the primary action, no redundant 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?
For a simple read-only tool with 2 parameters and no output schema, the description covers purpose, usage, and filtering behavior. Minor gap: no explanation of sessionId context, but siblings provide general session understanding.
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 covers 50% of parameters with descriptions (names). The description mentions 'named entries' but does not explain sessionId or add format details beyond the schema. Baseline score appropriate given partial 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?
The title 'Read a design session' and description 'Fetch named entries from a session' clearly state the verb and resource. The description further distinguishes from siblings like session_run by specifying 'inspect or debug' use case.
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?
Description explicitly advises preferring session_run for using values and restricts usage of this tool to inspection/debug, providing clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
session_runRun a tool using session entriesAInspect
Run any SeqBench tool, resolving selected arguments from a session's named entries instead of pasting them inline, and optionally store selected result fields back into the session by name. This is the main way to chain a multi-part design (vector + insert + primers) across calls without shuttling raw sequences through your own context.
| Name | Required | Description | Default |
|---|---|---|---|
| args | No | Additional literal arguments, merged with the ones resolved from the session. | |
| tool | Yes | Name of any non-meta SeqBench tool (not batch, workflow, or another session_* tool). | |
| sessionId | Yes | ||
| writeBack | No | Map of { resultFieldName: sessionEntryName } — stores selected fields of the result back into the session under these names. | |
| fromSession | No | Map of { toolArgName: sessionEntryName } — resolves each named tool argument from the session before running. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate mutation (readOnlyHint=false) and no idempotency. Description adds details on how arguments are resolved from session and optional write-back of results, which clarifies behavior beyond annotations. No contradiction.
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-sentence description that is concise and front-loaded: first sentence explains mechanism, second gives typical use case. No unnecessary words, efficient for agent understanding.
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?
Given complexity of a meta-tool with 5 parameters and no output schema, description provides a solid overview of purpose and mechanism. Could mention error handling or required permissions, but adequately covers the main workflow.
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 provides 80% parameter descriptions. Description adds context by explaining the chaining use case and how fromSession/writeBack work, giving meaning beyond raw schema. For sessionId, schema lacks description but description implies its role in session identification.
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?
Clearly states verb 'Run', resource 'SeqBench tool', and explains core feature of resolving arguments from session entries. Differentiates from other tools by describing it as the main chaining method and specifying it applies to non-meta tools.
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 states when to use: for chaining multi-part designs without shuttling raw sequences. Implies alternatives (inline pasting) but does not explicitly list when not to use or alternative tools. Good context but could be more precise.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
session_setWrite to a design sessionBInspect
Add or overwrite named entries in an existing session.
| Name | Required | Description | Default |
|---|---|---|---|
| entries | Yes | Named entries to add/overwrite, e.g. {"insert": "..."}. | |
| sessionId | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description confirms the mutating nature of the tool ('add or overwrite') consistent with readOnlyHint=false. It adds context that operations apply to an 'existing session', but does not disclose side effects beyond overwriting, nor permissions or error scenarios. Annotations already cover basic behavioral traits.
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 a single, efficient sentence with no extraneous information. Every word is necessary to convey the core action and context.
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?
Given the tool's complexity (mutation with nested object parameter, no output schema), the description is too brief. It omits important details like return value, error behavior when the session does not exist, and a fuller explanation of the entries structure. The high number of sibling tools also demands more context for differentiation.
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 coverage is 50% (only entries has a description). The description adds minimal value by mentioning 'named entries', but does not explain the sessionId parameter or clarify the entries format beyond the schema's example. It insufficiently compensates for the missing schema description.
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 uses a specific verb ('Add or overwrite') and resource ('named entries in an existing session'), making the tool's purpose clear. It distinguishes from sibling tools like session_create, session_get, and session_run by focusing on writing to an existing session.
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 no guidance on when to use this tool versus alternatives, such as session_create or session_run. It does not mention prerequisites (session must exist) or situations where this tool should not be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sirna_designsiRNA / shRNA DesignerARead-onlyIdempotentInspect
Design siRNA duplexes against an mRNA target using the established Reynolds (2004) 8-criteria score and the Ui-Tei (2004) rules, plus the siDirect seed-duplex Tm off-target flag (≥21.5 °C, computed on siDirect's own RNA/RNA scale: Freier 1986 nearest-neighbour parameters, helix initiation A = −10.8, CT = 100 µM, 100 mM Na⁺). Returns ranked candidates with sense/guide oligos (with UU 3' overhangs) and, per candidate, a ready shRNA cassette (sense–loop–antisense–Pol III terminator). Heuristic sequence rules only — no RNA-folding accessibility model and no transcriptome-wide off-target search. PREDICTED, NOT MEASURED. These are rule counts, not a regression, and no skill statistic is claimed for the ranking. Target-site accessibility is not modelled (no folding) and no transcriptome-wide off-target search is performed, so a top-ranked candidate is a starting point for a knockdown panel, not a predicted knockdown level. Valid for: mRNA targets. The seed Tm is computed on siDirect's own RNA/RNA scale (Freier 1986 parameters, helix initiation A = -10.8, CT = 100 µM, 100 mM Na+) and is not comparable with the DNA/DNA Tm reported elsewhere in the toolkit.
| Name | Required | Description | Default |
|---|---|---|---|
| target | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| shRnaLoop | No | Loop sequence used when assembling the shRNA cassette. | TTCAAGAGA |
| minReynolds | No | Minimum Reynolds score (0–8) to keep; falls back to best-ranked if none qualify. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, idempotentHint) indicate safe, deterministic operation. The description adds substantial behavioral context: disclaimers ('PREDICTED, NOT MEASURED'), absence of RNA-folding accessibility and off-target search, details on scoring and seed Tm computation on a custom scale, and the note that no skill statistic is claimed. These disclosures go well beyond annotations and are critical for correct agent decision-making.
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 moderately long but every sentence adds value: purpose, method, output, limitations, and seed Tm details are all covered. It is well-structured, front-loading the core action and then providing necessary caveats. Minor wordiness (e.g., repeated seed Tm note) prevents a perfect score, but it remains efficient for the complexity.
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?
Given the tool has 3 parameters, no output schema, and 100% schema coverage, the description covers all essential aspects: what it designs, how it scores, what it returns (candidates with oligos and shRNA cassette), validity range, and key limitations. It is self-contained enough for an agent to understand when and how to invoke the tool without additional context.
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 coverage is 100% with adequate descriptions for all three parameters (target, shRnaLoop, minReynolds). The description adds conceptual context (e.g., Reynolds scoring) but does not elaborate on parameter syntax or behavior beyond the schema. Baseline of 3 is appropriate; the description does not significantly enhance parameter understanding.
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 clearly states 'Design siRNA duplexes against an mRNA target' with specific scoring methods (Reynolds, Ui-Tei, siDirect). It distinguishes from sibling tools (e.g., aso_design, crispr_grna_design) by explicitly focusing on siRNA/shRNA design and detailing what it does not do (no folding, no off-target search).
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 specifies valid targets ('mRNA targets') and clarifies limitations (heuristic rules only, no folding, no off-target search), implying when not to rely on the tool. However, it does not explicitly name alternative tools for complementary analyses (e.g., folding models or transcriptome-wide checks) nor provide a when-not-to-use directive. Clear context but lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
site_directed_mutagenesisSite-directed mutagenesis designerARead-onlyIdempotentInspect
Design site-directed mutagenesis primers (QuikChange overlapping or Q5 back-to-back) for a nucleotide substitution or an amino-acid codon swap.
| Name | Required | Description | Default |
|---|---|---|---|
| mgMM | No | Divalent cation [Mg2+] (mM). | |
| naMM | No | Monovalent cation [Na+]/[K+] (mM). | |
| style | No | Mutagenic primer style. | quikchange |
| dntpMM | No | Total [dNTP] (mM), chelates Mg2+. | |
| newBase | No | Replacement base (editKind='nt'). | |
| oligoNM | No | Total strand concentration (nM). | |
| residue | No | 1-based residue number to change (editKind='aa'). | |
| editKind | No | Edit at the nucleotide or amino-acid level. | aa |
| organism | No | Codon-usage table for choosing the new codon (editKind='aa'). | ecoli |
| position | No | 1-based position to substitute (editKind='nt'). | |
| targetAa | No | Target amino acid, one-letter code incl '*' (editKind='aa'). | |
| template | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). | |
| frameStart | No | 1-based position of the first base of codon 1 (editKind='aa'). | |
| armTmTarget | No | Target Tm (°C) for each template-binding arm. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, indicating safe read-only behavior. The description adds design method details but does not disclose output format, prerequisites, or limitations beyond what annotations provide.
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 a single, front-loaded sentence that conveys the core purpose without waste. Every word serves a function.
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?
Given the 14 parameters and no output schema, the description adequately summarizes the tool's function. However, it could be more complete by mentioning the output format (e.g., primer sequences, Tm) to fully guide the agent.
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?
Parameter descriptions in the schema cover 100% of parameters, so the description adds little new semantic meaning. It mentions the two primer styles and edit types, which are already captured in enums, providing marginal extra value.
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 explicitly states the tool designs site-directed mutagenesis primers for QuikChange or Q5 back-to-back styles, for nucleotide substitution or amino-acid codon swap. This clearly differentiates it from sibling tools like primer_design, which handles general primer design.
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 does not provide explicit guidance on when to use this tool versus alternatives such as primer_design. While it implies usage for mutagenesis primer design, it lacks when-not-to-use or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
translateTranslateARead-onlyIdempotentInspect
Translate a nucleotide sequence to protein (single frame or all six frames; standard code).
| Name | Required | Description | Default |
|---|---|---|---|
| frame | No | ||
| toStop | No | Stop at the first stop codon. | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnly and idempotent hints; description adds behavioral context about translation frames and standard code, going beyond the structured data.
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?
Single sentence with no wasted words, effectively communicates core purpose.
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 3-parameter tool without output schema, the description covers input and purpose but omits output format (e.g., protein sequence string) and does not resolve the mismatch about all six frames.
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?
The description adds meaning beyond the schema (e.g., frames, standard code) but contradicts the schema by mentioning 'all six frames' when the schema only allows frame parameters 1, 2, or 3.
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 clearly states the action (translate), input (nucleotide sequence), output (protein), and options (single frame or all six frames). It distinguishes from sibling tools like reverse_translate.
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 mentions single vs. all six frames but does not provide explicit guidance on when to use this tool over alternatives like reverse_translate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
variant_annotateVariant AnnotatorARead-onlyIdempotentInspect
One-box variant lookup against MyVariant.info: accepts an rsID, chrom:pos:ref:alt, genomic HGVS ("chr17:g.7676154G>C"), or transcript HGVS c. ("NM_000546.6:c.215C>G" / "TP53:c.215C>G", bridged via the hgvs_convert tool). Returns a ClinVar significance summary, gnomAD exome/genome allele frequencies, and CADD/SIFT/PolyPhen2/REVEL pathogenicity predictor scores — each section explicitly null when that source has no data, never silently omitted. See the result's own "caveats" for real data-freshness limits (frozen gnomAD/CADD snapshots, periodic ClinVar snapshot).
| Name | Required | Description | Default |
|---|---|---|---|
| variant | Yes | An rsID ("rs1042522"), chrom:pos:ref:alt ("17:7676154:G:C", single-base substitutions only), genomic HGVS ("chr17:g.7676154G>C" or "17:g.7676154G>C"), or transcript HGVS c. ("NM_000546.6:c.215C>G" or "TP53:c.215C>G"). | |
| assembly | No | Genome build for rsID/chrom-pos-ref-alt/genomic-HGVS lookups (MyVariant.info's native default is hg19). Ignored for transcript "c." input, which is always bridged via GRCh38/hg38 (hgvs_convert's own coordinate space). | hg19 |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds that missing data is explicitly null (never silently omitted) and directs users to a 'caveats' section for data freshness. No contradiction with annotations.
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?
Single paragraph with logical flow: purpose, input formats, output content, and data handling. No redundant sentences, but could be slightly more streamlined by separating input and output into bullet points. Still very efficient.
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?
Given no output schema, the description covers key results (fields returned) and behavior (null handling, caveats). It is sufficient for a read-only lookup tool. Lacks specification of pagination or limits, but these are likely unnecessary.
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 coverage is 100% with descriptions for both parameters. The description enhances the 'variant' parameter by enumerating all accepted formats with examples and clarifies the assembly parameter's behavior depending on input type. This adds meaningful context beyond 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?
Clearly states it is a variant lookup tool returning annotations from MyVariant.info. Lists all accepted input formats (rsID, chrom:pos:ref:alt, genomic HGVS, transcript HGVS) and output content (ClinVar, gnomAD, pathogenicity scores). Distinguishes itself from sibling tools like hgvs_convert and variant_comparator through explicit input format handling and output scope.
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?
Provides clear context that this is a single-variant lookup tool and mentions the need to use hgvs_convert for transcript HGVS inputs. However, it does not explicitly state when to avoid this tool or mention alternatives for comparing variants, though sibling names imply differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
variant_comparatorVariant ComparatorBRead-onlyIdempotentInspect
Align a query to a reference and call variants (substitutions, insertions, deletions) in HGVS g. notation, with optional coding effects.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Query / variant sequence (raw or FASTA). | |
| coding | No | Treat as a coding sequence and report amino-acid effects. | |
| reference | Yes | Reference / wild-type sequence (raw or FASTA). | |
| frameStart | No | 1-based reading-frame start (used when coding is true). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, indicating the tool is safe and deterministic. The description adds that the tool produces variant calls in HGVS g. notation, which is consistent. However, it does not disclose details about alignment type (global/local), handling of reverse complement, or performance characteristics. The description does not contradict annotations, but it adds minimal behavioral context beyond what annotations provide.
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 a single sentence of 28 words that efficiently conveys the core functionality. It is front-loaded with the primary actions (align and call variants) and includes key output details (HGVS g. notation, optional coding effects). No extraneous information is present, and the structure is optimal for quick scanning.
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 description lacks important context such as the expected output format (list of variant objects vs. string), whether the alignment is global or local, and details about parameter interactions (e.g., frameStart only used when coding is true). No output schema is provided, so the description should compensate, but it does not fully address the return values or behavioral constraints. Given the tool's complexity (4 parameters, 2 required), the description is incomplete for effective agent use.
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 all parameters have descriptions in the input schema. The tool description adds only the context of 'HGVS g. notation' and 'coding effects,' which aligns with the 'coding' parameter. No additional parameter semantics are provided beyond the schema. According to the guidelines, baseline is 3 when coverage is high, and the description does not exceed that bar.
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 clearly states the tool's purpose: aligning a query to a reference and calling variants (substitutions, insertions, deletions) in HGVS g. notation, with optional coding effects. The verb 'align' and 'call variants' combined with the resource (query vs reference) and output format (HGVS g. notation) make the purpose unambiguous. This tool is distinct from sibling tools like 'pairwise_alignment' (which only aligns) and 'hgvs_convert' (which converts notation), as it generates variant calls.
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 does not provide explicit guidance on when to use this tool versus alternatives. Sibling tools such as 'pairwise_alignment' or 'variant_annotate' are not mentioned, and no conditions or exclusions are given. Users must infer from the purpose when to choose this tool, which is insufficient for effective agent decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_assemblyVerify a full assembly recipeARead-onlyIdempotentInspect
Deterministic self-check: given the same method/parts cloning_simulate would use (restriction-ligation, Gibson, or Golden Gate — optionally deriving a part by in-silico PCR first), re-derive the expected WHOLE product and diff it against a claimed final sequence. Returns pass/fail plus the exact position and nature of any discrepancy — not an opinion, the same deterministic simulation SeqBench already runs, run a second time as a check. See verify_construct for a narrower, insert-only check that doesn't require declaring the vector/enzymes/method.
| Name | Required | Description | Default |
|---|---|---|---|
| names | No | Optional labels for each fragment. | |
| coding | No | Report amino-acid effects of any mismatch, assuming claimedConstruct is (or contains) a coding sequence. | |
| enzyme | No | Type IIS enzyme for Golden Gate — one of BsaI, BbsI, Esp3I (BsmBI); "BsmBI" also resolves to Esp3I, and NEB's variant names (BsaI-HFv2, BbsI-HF, BsmBI-v2) fold to the parent enzyme. Any other name fails the verification outright rather than being substituted. | BsaI |
| insert | No | Insert sequence (restriction method). Omit if insertPcr is given. | |
| method | Yes | Assembly method used. | |
| vector | No | Vector sequence (restriction method). Omit if vectorPcr is given. | |
| enzyme3 | No | 3′ enzyme (restriction method). | BamHI |
| enzyme5 | No | 5′ enzyme (restriction method). | EcoRI |
| circular | No | Treat the product/claimed construct as circular (most plasmids are). | |
| fragments | No | Fragments (5′→3′), assembled head-to-tail (gibson/goldengate). BARE parts only — for gibson do NOT include the homology arms, which are added by the assembly primers and merged (so the product is fragment1+…+fragmentN). Use "" as a placeholder for any fragment supplied instead via the matching fragmentPcrs[i]. | |
| insertPcr | No | Derive the insert by PCR instead: {template, forwardPrimer, reversePrimer, maxMismatches? (0-10), circular?}. | |
| vectorPcr | No | Derive the vector by PCR instead: {template, forwardPrimer, reversePrimer, maxMismatches? (0-10), circular?}. | |
| frameStart | No | 1-based reading-frame start on claimedConstruct, used when coding is true. | |
| overlapLen | No | Gibson homology-arm length (bp) that the assembly PRIMERS add at each junction. Since the fragments themselves must not carry their arms, this describes the junction/primer design only — it does not change the predicted product length or the verdict. | |
| armTmTarget | No | Target annealing Tm (°C) for primer arms. | |
| fragmentPcrs | No | Parallel to fragments, same length: null (or omit) to use fragments[i] directly, or a PCR spec {template, forwardPrimer, reversePrimer, maxMismatches? (0-10), circular?} to derive that fragment instead. | |
| claimedConstruct | Yes | The sequence you claim you ended up with. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, so the description adds context beyond them by emphasizing determinism ('Deterministic self-check', 'run a second time as a check') and the nature of the result ('not an opinion'). It also clarifies that it is the same simulation SeqBench runs, which is useful behavioral context, though it does not detail side effects or return format beyond pass/fail.
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 three sentences long and front-loaded with 'Deterministic self-check', immediately conveying the tool's essence. Each sentence adds value: what it does, what it returns, and how to choose an alternative. No redundant or filler content.
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 the tool's complexity (17 params, nested objects, no output schema), the description covers the essential context: the verification approach, methods covered (restriction, Gibson, Golden Gate), optional PCR derivation, and the relationship to cloning_simulate and verify_construct. It also discloses the return type (pass/fail plus discrepancy details), which is important given the absence of 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?
Input schema has 100% description coverage for all 17 parameters, so the baseline is 3. The description does not add significant parameter-level semantics beyond what the schema already provides; it mentions method/parts at a high level but does not explain any specific parameter syntax or edge cases not 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 clearly states the tool's function: a deterministic self-check that re-derives the expected whole assembly product and diffs it against a claimed final sequence, returning pass/fail with discrepancy details. It also distinguishes itself from the sibling verify_construct by emphasizing the full-assembly scope versus a narrower insert-only check.
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 points users to the alternative tool ('See verify_construct for a narrower, insert-only check...'), and it states the tool's role as re-running the deterministic simulation that cloning_simulate would use. This provides clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_constructVerify a claimed constructARead-onlyIdempotentInspect
Re-derive a construct's insert from the PCR (template + primers) claimed to have produced it, then check — independently of that claim — whether the expected insert actually appears (either orientation) in the claimed final construct, at what identity, and with exact mismatch positions if not. Optionally also checks for a premature stop in a declared reading frame. This re-derives from the claim's own stated inputs; it does not review the claim's prose.
| Name | Required | Description | Default |
|---|---|---|---|
| insertTemplate | Yes | PCR template the insert was amplified from. | |
| claimedConstruct | Yes | The final sequence claimed to have been built. | |
| templateCircular | No | Treat insertTemplate as circular (e.g. amplifying from a plasmid). | |
| expectedFrameStart | No | 1-based position in claimedConstruct where the intended reading frame begins. If given, flags a premature stop before the end of the aligned insert region. | |
| insertForwardPrimer | Yes | Forward primer used to amplify the insert, 5'→3'. | |
| insertReversePrimer | Yes | Reverse primer used to amplify the insert, 5'→3'. | |
| maxPrimerMismatches | No | Mismatches tolerated per primer during PCR prediction (0–10). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, so the description need not restate them. It adds value by disclosing the verification process: re-deriving from PCR inputs, checking both orientations, reporting identity and mismatch positions, and optionally detecting premature stops. The limitation about not reviewing prose is also transparent, and nothing contradicts 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each earning its place: the first covers the core re-derivation and check, the second notes the optional stop-codon check, and the third clarifies the scope and limitation. No wasted words; it is dense but highly structured.
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?
Given the tool's moderate complexity (7 params, no output schema), the description is largely complete. It explains the main workflow and output aspects (identity, mismatch positions), but it doesn't explicitly describe the full output structure or failure modes (e.g., what happens if no insert is found). This is a minor gap, so it doesn't warrant a 5.
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 even without parameter details in the description. The description does add slight context by referencing 'template + primers' and 'declared reading frame,' aligning with insertTemplate, insertForwardPrimer, insertReversePrimer, and expectedFrameStart, but it doesn't provide syntax or format details beyond what the schema already covers.
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 uses a specific verb ('Re-derive... then check') and clearly defines the resource ('a construct's insert') and the verification goal. It distinguishes itself from siblings by emphasizing that it works independently of the claim, using the PCR template and primers, and explicitly states it does not review the claim's prose.
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 clear context: use this when you have a claimed construct, the PCR template, and primers, and want to verify the insert's presence. It even clarifies what it does not do ('does not review the claim's prose'), but it doesn't explicitly name alternative tools or exclusion criteria, so it stops short of full when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
virtual_gelVirtual gelARead-onlyIdempotentInspect
Predict restriction-digest fragment sizes and their gel migration positions against a chosen DNA ladder.
| Name | Required | Description | Default |
|---|---|---|---|
| ladder | No | DNA ladder to plot alongside the sample lane. | 1 kb |
| enzymes | No | Enzyme names to digest with, from the curated common-enzyme set (see restriction_sites for the full list). An unrecognised name is rejected rather than skipped, so an empty band pattern always means "no sites". | |
| circular | No | Treat the sequence as circular (plasmid). | |
| sequence | Yes | Nucleotide sequence (raw or FASTA; IUPAC accepted). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint and idempotentHint, so the description doesn't need to repeat safety info. The description adds the key behavioral aspect (predicts fragment sizes and positions) but does not disclose output format or edge-case behavior. However, no contradictions with annotations.
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 a single, focused sentence that gets straight to the point without extraneous details.
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 has no output schema, but the description conveys the core purpose and the parameter schema covers inputs thoroughly. It lacks explicit return-value details, but the purpose statement sufficiently covers what the tool produces for an agent to understand high-level behavior.
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%, with detailed descriptions for all four parameters including enum values and error semantics for enzymes. The description itself adds no parameter-level detail, so the baseline of 3 applies.
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 clearly states the tool's function with a specific verb ('Predict') and resource ('restriction-digest fragment sizes and their gel migration positions'), and distinguishes it from sibling tools like 'double_digest' and 'restriction_sites' by its focus on gel migration against a chosen ladder.
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 implies the use case (simulating a gel with a chosen ladder) but does not explicitly state when to prefer this over alternatives like 'restriction_sites' or 'double_digest'. There are no exclusions or alternative references, but the context is clear enough for an agent to infer when to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
volcano_plot_dataVolcano plot dataARead-onlyIdempotentInspect
Validate a differential-expression table (gene, log2 fold-change, p-value/FDR) and compute -log10(p) plus up/down/non-significant counts at conventional default thresholds (|log2FC|>=1, p<=0.05), for the Volcano Plot visualization. Invalid rows (non-finite log2FC, or p-value outside (0,1]) are dropped and reported rather than failing the whole batch.
| Name | Required | Description | Default |
|---|---|---|---|
| rows | Yes | Differential expression rows, one per gene. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond the annotations by explicitly stating that invalid rows are dropped and reported rather than causing failure. This complements the readOnlyHint and idempotentHint annotations, which already indicate safe, non-destructive operation.
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 exceptionally concise—two sentences that front-load the main action and include necessary details about validation behavior. Every sentence 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?
The tool has only one parameter and no output schema. The description covers input validation, thresholds, and error handling. It does not describe the output format, but given the simplicity of the tool and the presence of annotations, the description is nearly complete.
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 coverage is 100%, so the description is not required to explain parameters. However, it provides additional value by specifying the default thresholds (|log2FC|>=1, p<=0.05) used in the computation, which are not 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 uses specific verbs ('Validate', 'compute') and clearly states the resource ('differential-expression table') and outputs ('-log10(p)', counts). It distinctly positions the tool for volcano plot data preparation, differentiating it from siblings.
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 explains when to use the tool (to prepare data for volcano plot visualization) and what it does, but does not explicitly state when not to use or mention alternatives. However, the sibling list contains no similar volcano-related tools, so the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_searchSearch the webARead-onlyIdempotentInspect
Search the live web (via Tavily) for information not covered by SeqBench's own tools — recent literature, protocols, vendor/reagent info, general facts. Returns a short synthesized answer (if available) plus ranked source snippets with URLs. This does not run any bioinformatics calculation itself; use the dedicated tools for that.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The search query. | |
| max_results | No | Maximum number of results to return (default 5, max 10). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. Description adds that it returns a synthesized answer and source snippets with URLs. No contradictions. Additional behavioral details are helpful but not extensive.
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 that are front-loaded with the core purpose and immediately provide usage guidance. No wasted words.
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?
Given the tool's simplicity and the rich annotations, the description is fully complete. It explains the output format despite no output schema, and the context signals show only 2 simple params. All siblings are distinct bioinformatics tools, so no confusion.
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 coverage is 100%, so both parameters (query, max_results) are fully described in the schema. The description does not add extra meaning beyond what the schema provides, justifying the baseline score of 3.
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?
Description states 'Search the live web (via Tavily)' with specific use cases (recent literature, protocols, vendor/reagent info, general facts), clearly distinguishing from the many sibling bioinformatics tools.
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 instructs when to use this tool and when not: 'This does not run any bioinformatics calculation itself; use the dedicated tools for that.' Also enumerates appropriate contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
workflowBatch workflow (multi-tool pipeline)BRead-onlyIdempotentInspect
Run a multi-tool pipeline over many records. steps is an ordered list of { tool, args?, from? }; each step's chained sequence feeds the next by default. input is multi-FASTA or one sequence per line.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes | Multi-FASTA or one sequence per line. | |
| steps | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and idempotentHint=true, but the description says 'Run a multi-tool pipeline' which hints at execution, creating ambiguity about side effects. The description adds no additional behavioral context (e.g., what gets destroyed, auth needs, rate limits). It does not clarify the read-only nature, and the term 'Run' may mislead.
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 wasted words. The first sentence front-loads the purpose, the second provides key parameter details. Efficient and clear.
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?
Given the tool's complexity (multi-step pipeline), the description covers core behavior and basic parameter structure but omits error handling, failure behavior, output format, and edge cases. No output schema exists, so this gap is notable. Adequate but incomplete for a complex tool.
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?
The description adds meaning beyond the schema: it explains that `steps` is an ordered list with structure { tool, args?, from? } and that chained sequences feed the next by default. This clarifies chaining behavior not present in the schema. Schema coverage is low (only `from` described), so description compensates partially.
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 clearly states it 'Run[s] a multi-tool pipeline over many records', identifying the verb and resource. The title reinforces 'Batch workflow (multi-tool pipeline)'. However, it does not explicitly differentiate from sibling tools like individual analysis tools, though unique in being a pipeline runner.
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 explains that steps is an ordered list and that each step feeds the next, implying chaining behavior. It also specifies input format. No explicit when-to-use or when-not-to-use guidance or alternatives are mentioned, relying on the user to infer from sibling context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
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
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 Servers
- AlicenseAqualityDmaintenanceEnables AI-assisted molecular biology experiment design with tools for qPCR primer design, cloning strategy optimization, TaqMan probe design, and multiplex compatibility analysis.61MIT

Patsnap-mcpofficial
Alicense-qualityAmaintenanceSearch 1B+ biological sequences, antibodies, and multi-omics data via specialized bio-intelligence tools.113Apache 2.0- AlicenseAqualityAmaintenanceProvides local DNA/RNA sequence analysis tools (composition, reverse complement, translation, ORF enumeration, motif scanning) via MCP for agent workflows.5MIT
- AlicenseAqualityBmaintenanceMCP server offering verified bioinformatics tools for sequence utilities and statistics, backed by BioPython/scipy. Enables AI agents to perform accurate GC content, translation, ORF finding, motif scanning, and statistical tests through natural language.11MIT