On Monday 28th March 2011 the WSTCoffee service was decommissioned and replaced by the following services:

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


T-Coffee is a multiple sequence alignment program. Multiple sequence alignment programs are meant to align a set of sequences previously gathered using other programs such as BLAST or FASTA. The main characteristic of T-Coffee is that it will allow you to combine results obtained with several alignment methods. For instance if you have an alignment coming from ClustalW, an other alignment coming from Dialign, and a structural alignment of some of your sequences, T-Coffee will combine all that information and produce a new multiple sequence having the best agreement with all these methods. By default, T-Coffee will compare all your sequences two by two, producing a global alignment and a series of local alignments (using lalign). The program will then combine all these alignments into a multiple alignment.

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: wstcoffee.exe; Source: wstcoffee.cs A .NET runtime environment. If building from source development tools are also required. See the .NET tutorial for details.
Java Executable jar: WSTCoffee.jar; Source: Axis 1.4; All dependencies, including Axis 1.4 and Commons-CLI, are available in
Perl SOAP::Lite
Taverna 1.x EBI_TCoffee Taverna

For further details see WSTCoffee Clients.


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


Service API

runTCoffee(params, content)

Submits a T-Coffee 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. Value: 'sequence' required
content string Set of formatted sequences (fasta recommended) required

For example to specify an input sequence in Java:

Data inSeq = new Data();
inSeq.setType = "sequence";
inSeq.setContent = ">TestSeq1\nASAMPLESEQ\n" + ">TestSeq2\nANTHERSAMPLESEQ\n" + ">TestSeq3\nYETANTHERSAMPLESEQ\n";


A structure containing the parameters required to run the job.

Attribute Type Description Default
async boolean Asynchronous submission (recommended) false
email string Valid email address. See Why do you need my e-mail address? required
matrix string Scoring matrix to use. Values: 'blosum' or 'pam'
outorder string Sequence order in output alignment. Values: 'aligned' or 'input' 'aligned'


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/msa/wstcoffee.txt · Last modified: 2013/04/23 16:30 by hpm