Skip to main content
Glama

jean — Molecular Biology & Genomics

ebi_align

Read-only

Run a sequence through EMBL-EBI's Job Dispatcher: Clustal Omega, MUSCLE, MAFFT, Kalign, T-Coffee, EMBOSS needle/water/matcher/stretcher, LALIGN, phmmer, hmmscan, PSI-BLAST or Phobius. These are the reference implementations a methods section names, so a local alignment can be checked against the tool the field actually cites. The sequences LEAVE THE MACHINE.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
emailNoEBI requires a contact address on every submission (their abuse contact, not a login). Left empty, the one saved in any EMBL-EBI panel is used.
stypeNoquery alphabet, where the service takes one. Values: dna (nucleotide), protein (protein).dna
_filesNoThe project: record references shaped like _subject. Their records become library documents a tool names in sequences/parts/document; a trace or alignment is found by file name.
serviceNowhich EBI service to run. Values: clustalo (Clustal Omega — HMM-profile progressive MSA), muscle (MUSCLE — Iterative refinement MSA), mafft (MAFFT — FFT-based progressive/iterative MSA), kalign (Kalign — Wu-Manber approximate-string-matching MSA), tcoffee (T-Coffee — Consistency-based MSA), emboss_needle (EMBOSS needle — Needleman–Wunsch GLOBAL pairwise alignment: end-to-end, the whole of both sequences.), emboss_water (EMBOSS water — Smith–Waterman LOCAL pairwise alignment: the best-matching subregion, ignoring the rest.), emboss_matcher (EMBOSS matcher — Waterman–Eggert local pairwise alignment, like water, but it can report several alternative non-overlapping local alignments instead of only the single best one.), emboss_stretcher (EMBOSS stretcher — Myers–Miller GLOBAL pairwise alignment in linear space: the same answer needle gives, on sequence pairs too long for needle to hold in memory.), lalign (LALIGN — Huang & Miller), hmmer3_phmmer (HMMER phmmer — Profile HMM search of one protein against a protein database), hmmer3_hmmscan (HMMER hmmscan — Search ONE protein against a profile-HMM library), psiblast (PSI-BLAST — Position-Specific Iterated BLAST: it builds a profile from the hits of one round and searches again with it, which finds remote homologues plain blastp misses.), phobius (Phobius — Combined signal-peptide and transmembrane-topology prediction: the two are modeled together, so a signal peptide is not miscalled as a TM helix.), radar (RADAR — Rapid Automatic Detection and Alignment of Repeats: finds a protein’s INTERNAL repeats and aligns the copies against each other, without a library to match them to.), pratt (Pratt — Pattern discovery).clustalo
_subjectNoThe record to act on: exactly one of sequence, accession (+source), sample (an id from list_samples) or file ({name, text} or {name, base64}); record_index picks one record of several.
sequencesNothe sequences to align. Wire records or sequence outputs, or paste FASTA. Multiple-alignment services take all of them; a pairwise service takes exactly two.
parametersNoevery other parameter the chosen service advertises, one `id=value` per line, using its own ids (matrix, gapopen, gapext, format, iterations…). Left empty each keeps the service's default. An id the service does not advertise is refused by name rather than dropped, and so is a value outside the list it publishes for this alphabet.
include_subjectNoinclude the record this step is running on as the first sequence.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
rawYesthe native text the service returned, for download
hitsYesthe PSI-BLAST hit table, in the same shape blast_search hands downstream
rowsYesthe aligned rows as plain strings, ready to wire into build_tree or a scorer
jobIdYesthe dispatcher job id: what a methods section cites and what re-fetches this exact result
localYesLALIGN’s non-overlapping local alignments, each with its own score, E-value and spans
newickYesthe service's own guide tree, ready for the Phylogenetics tool
repeatsYesRADAR’s internal repeat families, each copy with its residue span and its two scores
identityYesthe percent-identity matrix the service computed
pairwiseYesthe pairwise report (needle/water/matcher/stretcher)
patternsYesPratt’s discovered patterns in PROSITE notation, each with where it matched in every sequence
topologyYesthe Phobius signal-peptide and transmembrane features, with their spans
alignmentYesthe aligned sequences (multiple-alignment services)
profileHitsYesthe HMMER hits (phmmer, hmmscan) with their domains and inclusion thresholds

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

With readOnlyHint/openWorldHint already declared, the description still adds a materially important disclosure that annotations only imply: 'The sequences LEAVE THE MACHINE' — a data-egress/privacy warning that should gate use on confidential sequences. It does not, however, cover expected latency or whether EBI jobs are submitted asynchronously and polled, which matters for a remote dispatcher.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded verb and the critical egress warning is emphasized in its own short sentence. The long service enumeration partly duplicates the schema enum, but it is scannable and serves the purpose of showing scope at a glance.

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

Completeness5/5

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

An output schema exists, schema coverage is complete, and annotations cover the safety profile, so the description only needs purpose, usage and the egress caveat — all present. Nothing an agent needs to select or call this correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the service enum already carries full per-tool definitions (global vs local, profile search, etc.), so the schema does the heavy lifting. The description's contribution is framing, not parameter semantics; baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb (run a sequence) plus an explicit, named resource set (EMBL-EBI Job Dispatcher: Clustal Omega, MUSCLE, MAFFT, EMBOSS needle/water, PSI-BLAST, Phobius, etc.). It also differentiates from siblings like align_sequences by stating the value proposition: these are the reference implementations a methods section cites, so a local result can be checked against them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a clear when-to-use case ('so a local alignment can be checked against the tool the field actually cites'), which tells the agent this is for reproducing/citing published methods rather than routine local alignment. It does not name a specific alternative sibling or state when not to use it, so it stops short of explicit routing.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources