ITIS MCP Server
ITIS MCP 서버
SOLR API를 통해 ITIS(통합 분류 정보 시스템) 데이터베이스와 상호 작용하기 위한 MCP(Model Context Protocol) 서버입니다.
개요
이 MCP 서버는 수십만 종의 분류 정보를 포함하는 ITIS 데이터베이스에 대한 액세스를 제공합니다. ITIS SOLR API를 사용하여 검색을 수행하고 분류 데이터를 검색합니다.
Related MCP server: mcp-catalogueoflife
기능
자연어 답변: "북극곰은 어디에 사나요?" 또는 "코끼리와 관련된 것은 무엇인가요?"와 같은 일상적인 질문에 답하기 위해 특수 도구와 프롬프트를 사용합니다.
학명으로 검색: 학명으로 생물을 찾습니다.
속명/일반명으로 검색: 일반적인 이름(예: "사람", "개", "참나무")으로 생물을 찾습니다.
TSN으로 검색: 분류 일련 번호(Taxonomic Serial Number)로 생물을 찾습니다.
계(Kingdom)별 검색: 특정 계 내의 생물을 찾습니다.
분류 계급별 검색: 특정 계급의 생물을 검색합니다.
자동 완성 검색: 부분적인 학명에 대한 제안을 받습니다.
계층적 데이터: 전체 분류 계층을 검색합니다.
지리 정보: 종이 어디에서 발견되는지 확인합니다.
일반 SOLR 검색: 사용자 지정 SOLR 쿼리로 유연한 검색을 수행합니다.
무작위 종 발견: 유연한 필터링을 통해 모든 분류군에서 무작위 종을 가져옵니다.
통계: 데이터베이스 통계를 가져옵니다.
사용법
MCP 서버로서
이 서버는 stdin/stdout을 통해 통신하며 MCP 호환 클라이언트와 함께 사용할 수 있습니다.
서버 실행 방법:
npm start개발용:
npm run dev자연어 질문
이 서버에는 일반인의 질문에 쉽게 답할 수 있는 특별한 프롬프트와 도구가 포함되어 있습니다:
"코모도왕도마뱀에 대해 알려줘" ->
species_profile프롬프트와get_full_species_profile도구 사용"북극곰은 어디에 사나요?" ->
where_does_it_live프롬프트와get_geographic_info도구 사용"코끼리의 친척은 무엇인가요?" ->
animal_relatives프롬프트와find_relatives도구 사용"고양이과에는 어떤 종이 있나요?" ->
whats_in_this_group프롬프트와get_children도구 사용"개와 늑대는 어떤 관계인가요?" ->
compare_animals프롬프트 사용
MCP 클라이언트 구성
프로젝트를 빌드한 후, MCP 클라이언트에 다음 구성을 추가하세요:
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"itis": {
"command": "npx",
"args": ["-y", "path/to/itis-mcp"]
}
}
}Cursor/기타 MCP 클라이언트:
{
"command": "npx",
"args": ["-y", "path/to/itis-mcp"]
}사용 가능한 도구
1. search_itis
유연한 매개변수를 사용한 일반 SOLR 검색.
2. search_by_scientific_name
학명으로 생물 검색.
3. search_by_common_name
일상적인 일반명(예: "개", "코끼리")으로 생물 검색. 일반 사용자가 동물이나 식물에 대해 질문할 때 주로 사용하는 방식입니다.
4. search_by_tsn
분류 일련 번호(TSN)로 검색.
5. search_by_kingdom
특정 계 내에서 검색.
6. search_by_rank
분류 계급별 검색.
7. get_hierarchy
TSN에 대한 분류 계층 가져오기.
8. autocomplete_search
부분 이름에 대한 자동 완성 검색.
9. get_random_species
선택적 분류 필터를 사용하여 무작위 종 가져오기.
10. find_relatives
특정 동물이나 식물의 친척 표시. 일반명 또는 학명 허용.
11. get_children
더 큰 분류군(예: "고양이과") 내에 포함된 모든 종 찾기.
12. get_geographic_info
생물이 어디에 사는지(지리적 구분) 확인. 일반명 또는 학명 허용.
13. get_full_species_profile
계층, 지리, 동의어를 포함한 포괄적인 프로필을 한 번에 가져오기.
14. explore_taxonomy
다양한 분류 수준에서 관련 생물을 찾아 분류 관계 탐색.
15. get_statistics
데이터베이스 통계 가져오기.
쿼리 예시
사용할 수 있는 몇 가지 쿼리 예시는 다음과 같습니다:
학명으로 인간 검색
{
"tool": "search_by_scientific_name",
"arguments": {
"name": "Homo sapiens"
}
}일반명으로 쿠거 검색
{
"tool": "search_by_vernacular_name",
"arguments": {
"vernacularName": "cougar"
}
}식물 검색
{
"tool": "search_by_kingdom",
"arguments": {
"kingdom": "Plantae",
"rows": 5
}
}참나무 자동 완성
{
"tool": "autocomplete_search",
"arguments": {
"partialName": "Quercus"
}
}무작위 조류 가져오기
{
"tool": "get_random_species",
"arguments": {
"kingdom": "Animalia",
"class": "Aves",
"count": 3,
"requireVernacular": true
}
}식육목에서 무작위 포유류 가져오기
{
"tool": "get_random_species",
"arguments": {
"kingdom": "Animalia",
"class": "Mammalia",
"order": "Carnivora",
"count": 2,
"requireVernacular": true
}
}지능형 생물 발견
{
"prompt": "random_creature_discovery",
"arguments": {
"creature_type": "big cats",
"count": 3
}
}바닷새 발견
{
"prompt": "random_creature_discovery",
"arguments": {
"creature_type": "sea birds",
"count": 2,
"focus_area": "diving birds"
}
}무작위 식물 가져오기
{
"tool": "get_random_species",
"arguments": {
"kingdom": "Plantae",
"count": 2,
"requireVernacular": true
}
}사용자 지정 SOLR 쿼리
{
"tool": "search_itis",
"arguments": {
"query": "nameWInd:*tiger* AND kingdom:Animalia",
"rows": 10,
"sort": "nameWInd asc"
}
}ITIS 데이터베이스 필드
ITIS 데이터베이스에는 많은 필드가 포함되어 있습니다. 가장 일반적으로 사용되는 필드는 다음과 같습니다:
tsn: 분류 일련 번호(고유 식별자)nameWInd: 지표가 포함된 학명kingdom: 계 이름phylum: 문 이름class: 강 이름order: 목 이름family: 과 이름genus: 속 이름species: 종 이름author: 저자 인용rank: 분류 계급usage: 사용 상태(유효, 무효 등)credibilityRating: 데이터 품질 등급phyloSort: 계통 분류 정렬 순서
SOLR 쿼리 예시
ITIS SOLR API는 다양한 쿼리 유형을 지원합니다:
정확히 일치:
nameWInd:"Homo sapiens"와일드카드:
nameWInd:Homo*범위:
tsn:[1 TO 1000]불리언:
kingdom:Animalia AND rank:Species구문:
nameWInd:"oak tree"
구성
이 서버는 공식 ITIS SOLR 엔드포인트를 사용합니다:
https://services.itis.gov/
ITIS 데이터베이스는 공개적으로 액세스할 수 있으므로 API 키가 필요하지 않습니다.
오류 처리
이 서버에는 포괄적인 오류 처리가 포함되어 있습니다:
네트워크 오류가 포착되고 보고됨
잘못된 쿼리는 유용한 오류 메시지를 반환함
잘못된 형식의 응답은 적절하게 처리됨
기여
문제 제기 및 개선 요청을 자유롭게 해주세요!
라이선스
MIT 라이선스
참조
Available Tools
11 toolsautocomplete_searchC
Search for organisms with autocomplete functionality using partial names.
Inputs: partialName (required), rows.
explore_taxonomyC
Explore taxonomic relationships by finding related organisms at different taxonomic levels.
Inputs: scientificName (required), level (required), rows.
get_hierarchyC
Get the complete taxonomic hierarchy for a given TSN.
Inputs: tsn (required).
get_random_speciesC
Get random species from ITIS database with optional taxonomic filters.
Inputs: kingdom, phylum, class, order, +5 more.
get_statisticsB
Get basic statistics about the ITIS database (total number of records).
Inputs: no named parameters.
search_by_kingdomB
Search for organisms within a specific kingdom in ITIS database.
Inputs: kingdom (required), rows, start.
search_by_rankB
Search for organisms by their taxonomic rank in ITIS database.
Inputs: rank (required), rows, start.
search_by_scientific_nameC
Search for organisms by their scientific name in ITIS database.
Inputs: name (required), rows, start.
search_by_tsnC
Search for organisms by their Taxonomic Serial Number (TSN) in ITIS database.
Inputs: tsn (required).
search_by_vernacular_nameC
Search for organisms by their common/vernacular names in ITIS database.
Inputs: vernacularName (required), rows, start.
search_itisC
Search ITIS database using SOLR queries. Supports general search with flexible query parameters.
Inputs: query, start, rows, sort, +2 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 11 tools
Most tools have distinct purposes, such as autocomplete_search for partial name matching and get_hierarchy for taxonomic relationships. However, search_by_scientific_name and search_itis could be confusing as both handle scientific name queries, though search_itis offers more flexibility with SOLR parameters.
All tool names follow a consistent snake_case pattern with clear verb_noun structures, such as autocomplete_search and search_by_scientific_name. This uniformity makes the tool set predictable and easy to navigate for an agent.
With 11 tools, the server is well-scoped for an ITIS database interface, covering diverse search methods and taxonomic exploration without being overwhelming. Each tool serves a specific function, such as get_random_species for discovery and get_statistics for metadata.
The tool set provides comprehensive search capabilities across various criteria like name, rank, and TSN, along with taxonomic exploration. A minor gap exists in update or data modification tools, but this is reasonable for a read-focused database server, and agents can still perform most queries effectively.
Maintenance
Related MCP Connectors
ITIS (Integrated Taxonomic Information System) MCP.
Search GBIF species taxonomy, occurrence records, datasets, and publishers.
Search GBIF species taxonomy, occurrence records, datasets, and publishers.
O*NET MCP — wraps the O*NET Web Services (US DOL) occupation taxonomy (services.onetcenter.org).…
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides a Model Context Protocol server for accessing and querying biomedical data from BioThings services, including gene, variant, chemical, and taxon annotations.1937MIT
- AlicenseNot gradedqualityBmaintenanceEnables queries about global taxonomic data, including scientific name matching, classification chains, common names, and synonyms from the Catalogue of Life index.94 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables searching and retrieving taxonomic information from the Encyclopedia of Life, including taxon pages, scientific names, and hierarchical classifications.138 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to resolve scientific names to Taxonomic Serial Numbers, traverse complete taxonomic lineages from kingdom to children, and retrieve vernacular names in all languages from an authoritative US-government taxonomy.283 npm1MIT