Accessing the SEED Servers: Getting Started

The SEED servers system is distributed as a small set of Perl packages that the user downloads and installs locally.  The distribution can be easily installed on a Mac or Unix-based system, and, soon to be released, on a Windows machine.  In addition to the packages that are used in constructing Perl programs, we offer a library of utility programs that offer predefined commands that can be used to extract data from the SEED.

Here are some instructions on how to get started using the servers:

1. Install the distribution. 

Follow this link for instructions.


2. Try some samples.

Getting started with Command Line "svr" scripts

If you followed the  directions carefully, the location of the svr scripts will now be in your path, allowing you to run these from anywhere on your computer. 

Reminder: If you are using a Windows machine, use the myRAST Shell, if you are using a mac or linux machine, set this variable in your bash shell

export PATH=$PATH://Applications/


A list of all available svr scripts and documentation is available here.


List all Genomes


A simple request would be to ask for a list of all genomes in the system. The command svr_all_genomes will produce a 2-column table. The first column would contain the names of all genomes, and the second the IDs of those genomes.


Here is a sample of the output from this command:


> svr_all_genomes
Berardius bairdii      48742.1
Simian immunodeficiency virus      11723.1
Erythrobacter litoralis HTCC2594      314225.3
Bacteriophage N15      40631.1
Bacillus cereus plasmid pPER272      1396.18
Cyanophage P-SSP7      268748.3
Enterococcus faecium plasmid pEF1      1352.12
Lactococcus lactis subsp. lactis Il1403      272623.1

List the features for a genome


Use the command svr_all_features to list the features for a given genome. The genome id is a command line argument. Here is an example of using this command:


> svr_all_features 3702.1 peg

Pipe commands together

The command line svr scripts use stdin and stdout to process data and are designed to be piped together when appropriate. For instance, the function svr_function_of takes as input a list of feature ids and produces a 2-column table of feature id and function.  Here's an example.

> svr_all_features 3702.1 peg | svr_function_of
fig|3702.1.peg.1      photosystem II protein D1 (PsbA)
fig|3702.1.peg.2      maturase
fig|3702.1.peg.3      SSU ribosomal protein S16p, chloroplast
fig|3702.1.peg.4      Photosystem II protein PsbK
fig|3702.1.peg.5      Photosystem II protein PsbI
fig|3702.1.peg.6      ATP synthase alpha chain (EC
fig|3702.1.peg.7      ATP synthase CF0 B chain
fig|3702.1.peg.8      ATP synthase C chain (EC
fig|3702.1.peg.9      ATP synthase CF0 A chain
fig|3702.1.peg.10      SSU ribosomal protein S2p (SAe), chloroplast
fig|3702.1.peg.11      DNA-directed RNA polymerase delta (= beta'') subunit (EC, chloroplast
fig|3702.1.peg.12      DNA-directed RNA polymerase gamma subunit (EC, chloroplast
fig|3702.1.peg.13      DNA-directed RNA polymerase beta subunit (EC, chloroplast
fig|3702.1.peg.14      Cytochrome b6-f complex subunit VIII (PetN)
fig|3702.1.peg.15      Photosystem II protein PsbM

Getting started writing Perl scripts to access the servers

To make getting started writing Perl scripts as easy as possible, we have supplied a command called svr that you should use in place of perl when executing perl scripts. It knows about the location of the svr libraries and allows you to start writing code immediately without regard to setting up your environment. On the other hand, if you have set up your environment as described in the Linux installation instructions, you can use the perl command as usual to run your scripts.


List all Genomes

Here is a program to list all genomes.


#!/usr/bin/perl -w

use strict;

use SeedEnv;


my $sapObject = SAPserver->new();

my $genomes = $sapObject->all_genomes();


foreach my $g (sort { $genomes->{$a} cmp $genomes->{$b} }  keys(%$genomes)) {

    print "$g\t$genomes->{$g}\n";



Notice the line use SeedEnv;.  This brings in the Seed server environment which includes the packages for all the servers. This is evident in the line

my $sapObject = SAPserver->new();

which references the package SAPserver even though SAPserver is not explicitly included.




And here is a sample of the output:

470865.2        44AHJD-like phages Staphylococcus phage SAP-2
11788.1 Abelson murine leukemia virus
10815.1 Abutilon mosaic virus
5755.1  Acanthamoeba castellanii
212035.3        Acanthamoeba polyphaga mimivirus
329726.3        Acaryochloris marina MBIC11017 plasmid pREB1
329726.4        Acaryochloris marina MBIC11017 plasmid pREB2
329726.6        Acaryochloris marina MBIC11017 plasmid pREB4
329726.7        Acaryochloris marina MBIC11017 plasmid pREB5
329726.8        Acaryochloris marina MBIC11017 plasmid pREB6
329726.9        Acaryochloris marina MBIC11017 plasmid pREB7
329726.10       Acaryochloris marina MBIC11017 plasmid pREB8
435.1   Acetobacter aceti


Documentation on the calls available for each server is available at SAPserver, Annotation Support Server, RAST Submission Server and Model Server.


More information is available at the Servers Blog.

About this Entry

This page contains a single entry by The SEED Team published on June 23, 2010 3:15 PM.

Retrieving Features and Functions for a Genome was the previous entry in this blog.

Scan For Matches is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

Powered by Movable Type 5.02