ITIS MCP Server

ITIS MCP Server

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.

Category
访问服务器

README

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

  1. Clone or download this repository
  2. Install dependencies:
    npm install
    
  3. Build the project:
    npm run build
    

Usage

As an MCP Server

The server communicates via stdin/stdout and can be used with MCP-compatible clients.

To run the server:

npm start

For development:

npm run dev

MCP Client Configuration

After building the project, add this configuration to your MCP client:

Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "itis": {
      "command": "npx",
      "args": ["-y", "path/to/itis-mcp"]
    }
  }
}

Cursor/Other MCP Clients:

{
  "command": "npx",
  "args": ["-y", "path/to/itis-mcp"]
}

Available Tools

1. search_itis

General SOLR search with flexible parameters.

Parameters:

  • query (string): SOLR query string (e.g., "nameWInd:Homo*", "kingdom:Plantae")
  • start (number): Starting index for pagination
  • rows (number): Number of results to return
  • sort (string): Sort order
  • fields (array): Specific fields to return
  • filters (object): Additional filters

2. search_by_scientific_name

Search for organisms by scientific name.

Parameters:

  • name (string, required): Scientific name to search for
  • rows (number): Number of results to return
  • start (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 return
  • start (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 return
  • start (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 name
  • rows (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

{
  "tool": "search_by_scientific_name",
  "arguments": {
    "name": "Homo sapiens"
  }
}

Search for Plants

{
  "tool": "search_by_kingdom",
  "arguments": {
    "kingdom": "Plantae",
    "rows": 5
  }
}

Autocomplete for Oak Trees

{
  "tool": "autocomplete_search",
  "arguments": {
    "partialName": "Quercus"
  }
}

Custom SOLR Query

{
  "tool": "search_itis",
  "arguments": {
    "query": "nameWInd:*tiger* AND kingdom:Animalia",
    "rows": 10,
    "sort": "nameWInd asc"
  }
}

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 indicators
  • kingdom: Kingdom name
  • phylum: Phylum name
  • class: Class name
  • order: Order name
  • family: Family name
  • genus: Genus name
  • species: Species name
  • author: Author citation
  • rank: Taxonomic rank
  • usage: Usage status (valid, invalid, etc.)
  • credibilityRating: Data quality rating
  • phyloSort: 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

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选