Skip to main content
Glama
ITIS MCP Server

ITIS MCP Server

by knustx

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 tools
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

    B3.4/5.0

    Scored across 11 tools

    Disambiguation4/5

    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.

    Naming Consistency5/5

    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.

    Tool Count5/5

    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.

    Completeness4/5

    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

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      Provides a Model Context Protocol server for accessing and querying biomedical data from BioThings services, including gene, variant, chemical, and taxon annotations.
      19
      37
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables searching and retrieving taxonomic information from the Encyclopedia of Life, including taxon pages, scientific names, and hierarchical classifications.
      138 npm
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables 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 npm
      1
      MIT