nucleotide_archive_mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_LEVEL | No | Logging level: DEBUG, INFO, WARNING, ERROR, CRITICAL (default: INFO) | INFO |
| ENA_MAX_RPS | No | Rate limiting in requests per second (default: 10.0) | 10.0 |
| ENA_TIMEOUT | No | Request timeout in seconds (default: 30.0) | 30.0 |
| ENA_SEARCH_LIMIT | No | Default search result limit (default: 20) | 20 |
| ENA_PORTAL_API_BASE | No | Override ENA portal API base URL (default: https://www.ebi.ac.uk/ena/portal/api) | https://www.ebi.ac.uk/ena/portal/api |
| ENA_BROWSER_API_BASE | No | Override ENA browser API base URL (default: https://www.ebi.ac.uk/ena/browser/api) | https://www.ebi.ac.uk/ena/browser/api |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_download_urlsA | Get FTP download URLs for all sequencing data files in a study. Usage TipsCall after search_rna_studies() to get download URLs for selected studies. Returns FTP URLs that can be used with wget/curl or passed to generate_download_script(). Returnsdict Dictionary containing: - study_accession: Queried study - file_count: Total number of files - total_size_gb: Total download size in GB - runs: List of per-run file info, each with: - run_accession: Run identifier - file_count: Files in this run (2 for paired-end) - size_gb: Run size in GB - urls: List of FTP URLs (ftp://...) - md5_checksums: List of MD5 hashes (if include_md5=True) - message: Info message if no files found - error: Error message if any |
| generate_download_scriptA | Generate executable bash script to download all study data files. Usage TipsAfter identifying interesting studies, generate a download script for the user to execute. Returns script content and optionally saves to file. Script includes MD5 verification commands. Typical workflow: search_rna_studies() → get_study_details() → generate_download_script(). Returnsdict Dictionary containing: - study_accession: Queried study - script_content: Complete bash script ready to execute - file_count: Number of files the script will download - total_size_gb: Total download size in GB - script_path: Save location (if output_path provided) - message: Success message (if saved to file) - error: Error message if any |
| get_available_fieldsA | Get available search and return fields for an ENA result type. Usage TipsUse to discover what fields you can search on and what metadata fields are available for a given data type in ENA. Helpful for building custom queries with build_custom_query(). Returnsdict Dictionary containing: - result_type: The queried result type - search_fields: List of searchable fields with id, description, type (if requested) - search_fields_count: Number of search fields (if requested) - return_fields: List of returnable fields with id, description, type (if requested) - return_fields_count: Number of return fields (if requested) - error: Error message if any |
| get_result_typesA | Get all available result types (data categories) in ENA. Usage TipsUse to discover what types of data you can search for in the European Nucleotide Archive. Most users will use read_study or study for RNA-seq searches. Returnsdict Dictionary containing: - count: Number of available result types - result_types: List of result types with id, description, primaryAccessionType, recordCount, lastUpdated - recommended_for_rna_studies: Recommended types for RNA studies - error: Error message if any |
| build_custom_queryA | Build a custom ENA query from field conditions. Usage TipsAdvanced tool for constructing complex queries by combining multiple field conditions with logical operators. Use for precise filtering beyond what search_rna_studies() offers. Call get_available_fields() first to discover searchable field names. Returnsdict Dictionary containing: - query: The constructed ENA query string - field_count: Number of conditions used - operator: Logical operator used - example_usage: How to use this query with other tools - error: Error message if any |
| find_studies_by_publicationA | Find ENA studies by PubMed ID (API limitation - returns error with workaround). Usage TipsENA Portal API doesn't expose pubmed_id as a searchable field. This tool documents the limitation for LLM awareness. Instead: use search_studies_by_keywords() with publication terms, then call get_study_details() to check the publications array for matching PubMed IDs. Returnsdict Dictionary containing: - error: API limitation message with recommended workflow - pubmed_id: Provided PubMed ID - count: Always 0 - studies: Always empty list |
| search_studies_by_keywordsA | Search for studies using flexible keyword matching across titles and descriptions. When to use this tool: Use this for broad exploratory searches when search_rna_studies() is too restrictive. Good for:
Important notes:
Search tips:
Returnsdict Search results containing: - count: How many total studies match - returned: How many studies in this response - keywords_used: What keywords were searched - organism_filter: What organism filter was applied (if any) - studies: List of matching studies with accession, title, organism, and other metadata |
| search_rna_studiesA | Search for RNA sequencing studies by disease, tissue, and organism. When to use this tool: Primary search tool for finding RNA-seq datasets when you know the disease/condition OR tissue/cell-type you're interested in. Use search_studies_by_keywords() for broader searches by biological processes or methodology. Default behavior: Searches across ALL organisms unless you specify one. This helps find relevant datasets across multiple species (human, mouse, rat, etc.). Search tips:
Returnsdict Search results containing: - count: How many total studies match your search - returned: How many studies are in this response - studies: List of matching studies with titles, sample counts, and publication info - query_used: The exact search query that was executed - filters: What filters were applied to your search |
| list_library_typesA | List all available library strategies and sources for ENA searches. Usage TipsUse to discover available library types for filtering in search_rna_studies(). Returns all controlled vocabulary values for library_strategy and library_source. Call this before using the advanced library_strategies or library_sources parameters in search_rna_studies(). Returnsdict Dictionary with keys: - library_strategies: List of all strategies with "value" and "name" - library_sources: List of all sources with "value" and "name" - rna_strategies: Filtered list of RNA-related strategies only - summary: Counts of available options - usage_hint: How to use values in search_rna_studies() |
| get_study_detailsA | Get comprehensive metadata for a specific ENA study including publications. Usage TipsCall after search_rna_studies() to verify a study matches your research needs before downloading. Returns detailed study description, publication links, and institutional metadata. Use this to check publications array for PubMed IDs. Returnsdict Dictionary containing: - accession: Study accession - title: Brief study title - description: Detailed study description (full abstract/methods) - publications: List of publications with pubmed_id and source - center_name: Submitting institution - alias: Submitter's study name (often GSE accession for GEO) - data_type: Usually "STUDY" - status: "public" or "private" - first_public: Date made public (YYYY-MM-DD) - last_updated: Last modification date (YYYY-MM-DD) - file_report_links: Direct API links for file reports - error: Error message if study not found or if request fails |
| get_study_publicationsA | Get detailed publication information for a study from ENA and Europe PMC. Usage TipsCall after search_rna_studies() to get full publication metadata including author ORCID IDs, affiliations, citation counts, and full-text links. Enriches basic publication info from get_study_details() with complete bibliographic data from Europe PMC. Returnsdict Dictionary containing: - accession: Study accession - publication_count: Number of publications found - publications: List of detailed publication objects, each with: - pubmed_id: PubMed ID - pmcid: PubMed Central ID (if available) - doi: Digital Object Identifier (if available) - title: Publication title - authors: List of author names - first_author: First author name - last_author: Last author name - author_details: Detailed author info with ORCID and affiliations - journal: Journal name - journal_issn: Journal ISSN - publication_year: Year published - publication_date: Full publication date - abstract: Publication abstract - citation_count: Times cited - is_open_access: Whether open access - in_epmc: Whether in Europe PMC - in_pmc: Whether in PubMed Central - has_pdf: Whether PDF available - full_text_urls: Available full text links - error: Error message if any |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/biocontext-ai/nucleotide_archive_mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server