Skip to main content
Glama
ITIS MCP Server

ITIS MCP Server

by knustx

Servidor MCP de ITIS

Un servidor del Protocolo de Contexto de Modelo (MCP) para interactuar con la base de datos del ITIS (Sistema Integrado de Información Taxonómica) a través de su API SOLR.

Descripción general

Este servidor MCP proporciona acceso a la base de datos del ITIS, que contiene información taxonómica de cientos de miles de especies. Utiliza la API SOLR de ITIS para realizar búsquedas y recuperar datos taxonómicos.

Related MCP server: mcp-catalogueoflife

Características

  • Respuestas en lenguaje natural: Utiliza herramientas y prompts especializados para responder preguntas cotidianas como "¿dónde viven los osos polares?" o "¿qué está relacionado con el elefante?"

  • Búsqueda por nombre científico: Encuentra organismos por sus nombres científicos

  • Búsqueda por nombres vernáculos/comunes: Encuentra organismos por sus nombres comunes (p. ej., "humano", "perro", "roble")

  • Búsqueda por TSN: Busca organismos por su Número de Serie Taxonómico (Taxonomic Serial Number)

  • Búsqueda por reino: Encuentra organismos dentro de reinos específicos

  • Búsqueda por rango taxonómico: Busca organismos de rangos específicos

  • Búsqueda con autocompletado: Obtén sugerencias para nombres científicos parciales

  • Datos jerárquicos: Recupera jerarquías taxonómicas completas

  • Información geográfica: Mira dónde se encuentran las especies

  • Búsqueda general SOLR: Realiza búsquedas flexibles con consultas SOLR personalizadas

  • Descubrimiento de especies aleatorias: Obtén especies aleatorias de cualquier grupo taxonómico con filtrado flexible

  • Estadísticas: Obtén estadísticas de la base de datos

Uso

Como servidor MCP

El servidor se comunica a través de stdin/stdout y puede utilizarse con clientes compatibles con MCP.

Para ejecutar el servidor:

npm start

Para desarrollo:

npm run dev

Preguntas en lenguaje natural

Este servidor incluye prompts y herramientas especiales para responder fácilmente a preguntas comunes de usuarios no expertos:

  • "Háblame del dragón de Komodo" -> Utiliza el prompt species_profile y la herramienta get_full_species_profile

  • "¿Dónde viven los osos polares?" -> Utiliza el prompt where_does_it_live y la herramienta get_geographic_info

  • "¿Cuáles son los parientes del elefante?" -> Utiliza el prompt animal_relatives y la herramienta find_relatives

  • "¿Qué especies hay en la familia de los gatos?" -> Utiliza el prompt whats_in_this_group y la herramienta get_children

  • "¿Cómo están relacionados los perros y los lobos?" -> Utiliza el prompt compare_animals

Configuración del cliente MCP

Después de compilar el proyecto, añade esta configuración a tu cliente MCP:

Claude Desktop (claude_desktop_config.json):

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

Cursor/Otros clientes MCP:

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

Herramientas disponibles

1. search_itis

Búsqueda general SOLR con parámetros flexibles.

2. search_by_scientific_name

Busca organismos por nombre científico.

3. search_by_common_name

Busca organismos por sus nombres comunes cotidianos (p. ej., "perro", "elefante"). Esto es generalmente lo que los usuarios no expertos quieren cuando preguntan sobre un animal o planta.

4. search_by_tsn

Busca por Número de Serie Taxonómico.

5. search_by_kingdom

Busca dentro de un reino específico.

6. search_by_rank

Busca por rango taxonómico.

7. get_hierarchy

Obtén la jerarquía taxonómica para un TSN.

8. autocomplete_search

Búsqueda con autocompletado para nombres parciales.

9. get_random_species

Obtén especies aleatorias con filtros taxonómicos opcionales.

10. find_relatives

Muestra parientes de un animal o planta específico. Acepta nombres comunes o científicos.

11. get_children

Encuentra todas las especies contenidas dentro de un grupo taxonómico más grande (p. ej., "Felidae").

12. get_geographic_info

Averigua dónde vive un organismo (divisiones geográficas). Acepta nombres comunes o científicos.

13. get_full_species_profile

Obtén un perfil completo que incluye jerarquía, geografía y sinónimos de una sola vez.

14. explore_taxonomy

Explora relaciones taxonómicas encontrando organismos relacionados en diferentes niveles taxonómicos.

15. get_statistics

Obtén estadísticas de la base de datos.

Ejemplos de consultas

Aquí tienes algunos ejemplos de consultas que puedes usar:

Búsqueda de humanos por nombre científico

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

Búsqueda de pumas por nombre común

{
  "tool": "search_by_vernacular_name",
  "arguments": {
    "vernacularName": "cougar"
  }
}

Búsqueda de plantas

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

Autocompletado para robles

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

Obtener aves aleatorias

{
  "tool": "get_random_species",
  "arguments": {
    "kingdom": "Animalia",
    "class": "Aves",
    "count": 3,
    "requireVernacular": true
  }
}

Obtener mamíferos aleatorios de Carnivora

{
  "tool": "get_random_species",
  "arguments": {
    "kingdom": "Animalia",
    "class": "Mammalia",
    "order": "Carnivora",
    "count": 2,
    "requireVernacular": true
  }
}

Descubrimiento inteligente de criaturas

{
  "prompt": "random_creature_discovery",
  "arguments": {
    "creature_type": "big cats",
    "count": 3
  }
}

Descubrir aves marinas

{
  "prompt": "random_creature_discovery",
  "arguments": {
    "creature_type": "sea birds",
    "count": 2,
    "focus_area": "diving birds"
  }
}

Obtener plantas aleatorias

{
  "tool": "get_random_species",
  "arguments": {
    "kingdom": "Plantae",
    "count": 2,
    "requireVernacular": true
  }
}

Consulta SOLR personalizada

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

Campos de la base de datos ITIS

La base de datos ITIS contiene muchos campos. Estos son los más utilizados:

  • tsn: Número de Serie Taxonómico (identificador único)

  • nameWInd: Nombre científico con indicadores

  • kingdom: Nombre del reino

  • phylum: Nombre del filo

  • class: Nombre de la clase

  • order: Nombre del orden

  • family: Nombre de la familia

  • genus: Nombre del género

  • species: Nombre de la especie

  • author: Cita del autor

  • rank: Rango taxonómico

  • usage: Estado de uso (válido, inválido, etc.)

  • credibilityRating: Calificación de calidad de los datos

  • phyloSort: Orden de clasificación filogenética

Ejemplos de consultas SOLR

La API SOLR de ITIS admite varios tipos de consultas:

  • Coincidencia exacta: nameWInd:"Homo sapiens"

  • Comodín: nameWInd:Homo*

  • Rango: tsn:[1 TO 1000]

  • Booleana: kingdom:Animalia AND rank:Species

  • Frase: nameWInd:"oak tree"

Configuración

El servidor utiliza el endpoint oficial de ITIS SOLR: https://services.itis.gov/

No se requiere clave de API ya que la base de datos ITIS es de acceso público.

Manejo de errores

El servidor incluye un manejo integral de errores:

  • Los errores de red se detectan y reportan

  • Las consultas no válidas devuelven mensajes de error útiles

  • Las respuestas mal formadas se manejan correctamente

Contribución

¡Siéntete libre de enviar problemas y solicitudes de mejora!

Licencia

Licencia MIT

Referencias

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.

    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