On Wednesday 30th December 2009 the WSMPsrch service was decommissioned and replaced by:

The service documentation and clients below are historical and provided solely for reference purposes.


MPsrch is a biological sequence sequence comparison tool that implements the true Smith and Waterman algorithm. It allows an rigorous search in a reasonable computational time. MPsrch uses an exhaustive algorithm, which is recognised as the most sensitive sequence comparison method available, whereas BLAST and FASTA use a heuristic method. As a consequence, MPsrch is capable of identifying hits in cases where BLAST and FASTA fail and also reports fewer false-positive hits.

For more information about this tool see:

Web services registry entries:


Sample clients are provided for a number of programming languages. For details of how to use these clients, download the client and run the program without any arguments.

Language Download Requirements
C# .NET Executable: wsmpsrch.exe; Source: wsmpsrch.cs A .NET runtime environment. If building from source development tools are also required. See the .NET tutorial for details.
Java Executable jar: WSMPsrch.jar; Source: Axis 1.4; All dependencies, including Axis 1.4 and Commons-CLI, are available in
Perl SOAP::Lite
Taverna 1.x EBI_MPsrch Taverna

For further details see WSMPsrch Clients.


In addition to these sample clients users have submitted workflows using these services to the myExperiment workflow repository. See workflows using the WSMPsrch Web Service for a list.


Service API

runMPsrch(params, content)

Submits a MPsrch job to the service.


  • params an instance of the inputParams data structure.
  • content a list of data data structures describing the query sequence data.

Returns: a string containing the job ID (jobid).


Get the status of a job.


  • jobid the job identifier of the job to check status of.

Returns: a string indicating the status of the job. Current values are:

  • DONE: job has finished, and the results can then be retrieved.
  • ERROR: the job failed or no results where found
  • NOT_FOUND: the job id is no longer available (job results are deleted after 24 h)
  • PENDING: the job is in a queue waiting processing
  • RUNNING: the job is currently being processed


Get details of the result types available.


  • jobid the job identifier of the job to get result types for.

Returns: an array of WSFile structures describing the available result types for the job.

poll(jobid, type)

Wait until the job has finished and get the specified type of result data.


  • jobid the job identifier of the job to get result from.
  • type a string specifying the type of result to retrieve. See getResults(jobid) and WSFile for details of how to obtain valid values.

Returns: a base64 encoded string containing the result data. Depending on the SOAP library and programming language used the result may be returned in decoded form.


Structure containing the input data for the job

Attribute Type Description Default
type string Type of content being used. Valid values are: 'sequence' and 'dbfetch' required
content string A sequence entry identifier in db:id format or a formatted sequence (fasta recommended) required

For example to specify an input sequence in Java:

Data inSeq = new Data();
inSeq.setType = "sequence";
inSeq.setContent = ">TestSequence\nASAMPLESEQ\n";


A structure containing the parameters required to run the job.

Attribute Type Description Default
program string Search program to use. Values: 'MPsrch_pp' (normal) or 'MPsrch_ppa' (affine) required
database string Database to search. See databases required
matrix string Scoring matrix to use. See matrix none (see pam)
pam int PAM scoring matrix to use
summary int Maximum number of scores to output
alignments int Maximum number of alignments to output
gap int Gap penalty (MPsrch_pp only)
gapopen int Gap open penalty (MPsrch_ppa only)
gapextend int Gap extension penalty (MPsrch_ppa only)
sort string Sort order for hits. Values: 'SC' (score) or 'RF' (rank)
annotation string Include annotation. Values: 'yes' or 'no'
async boolean Asynchronous submission (recommended) false
email string Valid email address. See Why do you need my e-mail address? required


Structure describing a result type. Returned by the getResults(jobid) method.

Attribute Type Description
type string Symbolic name of the result type. Used with the poll(jobid, type) method.
ext string Recommended file extension for this result type.


If you have any questions or comments, or you plan to use this service as part of a course or for a high number of submissions, please contact us EMBL-EBI Support.

services/archive/sss/wsmpsrch.txt · Last modified: 2013/04/23 16:43 by hpm