ITIS MCP Server
A Model Context Protocol (MCP) server for interacting with the ITIS (Integrated Taxonomic Information System) database via their SOLR API.
Overview
This MCP server provides access to the ITIS database, which contains taxonomic information for hundreds of thousands of species. It uses the ITIS SOLR API to perform searches and retrieve taxonomic data.
Features
- Search by Scientific Name: Find organisms by their scientific names
- Search by TSN: Look up organisms by their Taxonomic Serial Number
- Search by Kingdom: Find organisms within specific kingdoms
- Search by Taxonomic Rank: Search for organisms of specific ranks
- Autocomplete Search: Get suggestions for partial scientific names
- Hierarchical Data: Retrieve complete taxonomic hierarchies
- General SOLR Search: Perform flexible searches with custom SOLR queries
- Statistics: Get database statistics
Installation
- Clone or download this repository
- Install dependencies:
- Build the project:
Usage
As an MCP Server
The server communicates via stdin/stdout and can be used with MCP-compatible clients.
To run the server:
For development:
MCP Client Configuration
After building the project, add this configuration to your MCP client:
Claude Desktop (claude_desktop_config.json
):
Cursor/Other MCP Clients:
Available Tools
1. search_itis
General SOLR search with flexible parameters.
Parameters:
query
(string): SOLR query string (e.g., "nameWInd*", "kingdom")start
(number): Starting index for paginationrows
(number): Number of results to returnsort
(string): Sort orderfields
(array): Specific fields to returnfilters
(object): Additional filters
2. search_by_scientific_name
Search for organisms by scientific name.
Parameters:
name
(string, required): Scientific name to search forrows
(number): Number of results to returnstart
(number): Starting index for pagination
3. search_by_tsn
Search by Taxonomic Serial Number.
Parameters:
tsn
(string, required): TSN to search for
4. search_by_kingdom
Search within a specific kingdom.
Parameters:
kingdom
(string, required): Kingdom name (e.g., "Animalia", "Plantae")rows
(number): Number of results to returnstart
(number): Starting index for pagination
5. search_by_rank
Search by taxonomic rank.
Parameters:
rank
(string, required): Taxonomic rank (e.g., "Species", "Genus", "Family")rows
(number): Number of results to returnstart
(number): Starting index for pagination
6. get_hierarchy
Get taxonomic hierarchy for a TSN.
Parameters:
tsn
(string, required): TSN to get hierarchy for
7. autocomplete_search
Autocomplete search for partial names.
Parameters:
partialName
(string, required): Partial scientific namerows
(number): Number of results to return
8. get_statistics
Get database statistics.
Parameters: None
Example Queries
Here are some example queries you can use:
Search for Humans
Search for Plants
Autocomplete for Oak Trees
Custom SOLR Query
ITIS Database Fields
The ITIS database contains many fields. Here are the most commonly used ones:
tsn
: Taxonomic Serial Number (unique identifier)nameWInd
: Scientific name with indicatorskingdom
: Kingdom namephylum
: Phylum nameclass
: Class nameorder
: Order namefamily
: Family namegenus
: Genus namespecies
: Species nameauthor
: Author citationrank
: Taxonomic rankusage
: Usage status (valid, invalid, etc.)credibilityRating
: Data quality ratingphyloSort
: Phylogenetic sort order
SOLR Query Examples
The ITIS SOLR API supports various query types:
- Exact match:
nameWInd:"Homo sapiens"
- Wildcard:
nameWInd:Homo*
- Range:
tsn:[1 TO 1000]
- Boolean:
kingdom:Animalia AND rank:Species
- Phrase:
nameWInd:"oak tree"
Configuration
The server uses the official ITIS SOLR endpoint:
https://services.itis.gov/
No API key is required as the ITIS database is publicly accessible.
Error Handling
The server includes comprehensive error handling:
- Network errors are caught and reported
- Invalid queries return helpful error messages
- Malformed responses are handled gracefully
Contributing
Feel free to submit issues and enhancement requests!
License
MIT License
References
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Provides access to the Integrated Taxonomic Information System (ITIS) database via a Model Context Protocol server, enabling taxonomic searches by scientific name, TSN, kingdom, and rank, with features like autocomplete and hierarchical data retrieval.
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that enables conversational searching of NIH-funded research projects and publications through the NIH RePORTER database.Last updated -PythonMIT License
- -securityFlicense-qualityA Model Context Protocol server that enables AI assistants to securely interact with Apache IoTDB databases through a controlled interface for listing tables, reading data, and executing SQL queries.Last updated -Python
- AsecurityFlicenseAqualityA Model Context Protocol server that allows executing SELECT queries on TiDB databases, with optional support for INSERT, UPDATE, and DELETE operations when explicitly enabled.Last updated -116JavaScript
- AsecurityAlicenseAqualityA server that enables vector and keyword search capabilities in Typesense databases through the Model Context Protocol, providing tools for collection management, document operations, and search functionality.Last updated -142PythonMIT License