Skip to main content
Glama

Server Details

Search animals in eight languages with habitats, countries, photos and source credits.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
ArneFfm/animal-checklist-agents
GitHub Stars
0

TDQS

A4.3/5.0

Scored across 4 tools

Disambiguation5/5

Each tool serves a distinct purpose: listing categories, listing countries, searching species, and retrieving full details. No overlapping functionality; an agent can easily select the right tool based on the task.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern: get_animal, list_categories, list_countries, search_animals. The verbs (get, list, search) are clear and consistent, making the API predictable.

Tool Count4/5

With only 4 tools, the server is lean but each tool is essential for the domain. Slightly minimal but well-scoped; no redundancy. A tool for updating or adding observations might be missing but not necessary for a read-only biodiversity reference.

Completeness4/5

The tool set covers the core read workflows: discovery (list categories, list countries, search) and detail retrieval (get_animal). It lacks update/create/delete operations, but these are not expected for an observation-based reference. Minor gap: no direct 'get by ID' but search covers it.

Available Tools

4 tools
get_animalGet animalA
Read-onlyIdempotent
Inspect

Read one species: every common name, scientific name, habitats, country observation counts, the full photo credit and the Wikipedia summary.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesSpecies slug from search_animals, for example `red-fox`.
langNoDisplay language.en

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYesSlug of the species, for example `red-fox`.
obsYesiNaturalist observation count. Drives the ranking.
nameYesName in the requested language, English when none exists.
textYesWikipedia extract, CC BY-SA 4.0. Keep the credit and the source link.
imageYesPhoto credit. Check the licence and source before reuse.
namesYesCommon name per language. A language is absent when no name is known.
inatIdYesiNaturalist taxon id.
nameEnYesEnglish common name.
nameSciYesScientific name.
habitatsYes
countriesYesUp to twelve countries with the most observations.
categoryIdYes
wikidataIdYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful output-scope context: it retrieves one species and includes full details such as every common name, country observation counts, full photo credit, and Wikipedia summary.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficient sentence with no filler. The core operation and target resource are front-loaded, and the field enumeration is compact but meaningful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a rich output schema, full schema coverage for both parameters, and annotations covering safety and idempotency, the description is complete enough for an agent to invoke the tool correctly. The reference to a species slug and the one-species scope fill the remaining contextual need.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: both 'id' (with slug format and example) and 'lang' (with enum and default) are fully documented. The description adds no parameter-level semantics beyond naming the resource, which is acceptable because the schema already carries the burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Read') and a specific resource ('one species'), then enumerates the exact fields returned. It clearly distinguishes this tool from sibling list/search tools by emphasizing retrieval of a single species by slug.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes clear this is for reading a single species' full record, which implies it should be used after search_animals and not for listing or searching. It does not explicitly name alternatives or exclusion conditions, but the sibling set and schema reference to search_animals make the usage context clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_categoriesList categoriesA
Read-onlyIdempotent
Inspect

List the seven species groups with the label in the requested language and the species count. Call first to learn the valid category values.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoDisplay language.en

Output Schema

ParametersJSON Schema
NameRequiredDescription
categoriesYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and idempotentHint, covering safety. The description adds behavioral context beyond that: it returns a list with labels and counts, and it is a discovery step for category values. This is useful but not exhaustive; it does not mention pagination or exact output structure, though an output schema exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with zero waste. The core purpose is front-loaded, and the usage guidance is appended efficiently. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with one optional parameter and a provided output schema, the description covers what it returns, why to call it, and its role as a discovery step. Nothing essential is missing for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the lang parameter is fully documented with enum and default. The description adds that the label appears in the requested language, directly linking the parameter to its effect, which is a modest enhancement over the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists seven species groups with labels in the requested language and species count. It also explains its primary purpose—learning valid category values—which distinguishes it from sibling tools like list_countries or get_animal.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'Call first to learn the valid category values' explicitly signals when to use this tool as a prerequisite. It does not name specific alternatives, but the context is clear and sufficient for an agent to decide when to invoke it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_countriesList countriesA
Read-onlyIdempotent
Inspect

List every ISO country code that carries observations with its species count.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
countriesYes

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds useful scope ('carries observations') and notes the returned species count, but it does not discuss pagination, ordering, or edge cases, so it adds moderate value beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single compact sentence that front-loads the action and resource. Every word contributes meaning, with no filler or redundant qualification.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only listing tool with an output schema, the description is complete. It tells the agent exactly what is returned (ISO country codes with observations and species counts) and requires no further clarification for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema is empty, so there is no parameter burden for the description to carry. The baseline of 4 applies because no parameter documentation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'List every ISO country code' that has observations, and it clearly states the output includes a species count. This distinguishes it from siblings like get_animal and search_animals, which target different resources.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when a country-level overview of observations is needed, but it does not explicitly say when to prefer this over sibling tools or mention any exclusions. There is no direct routing to get_animal, list_categories, or search_animals.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_animalsSearch animalsA
Read-onlyIdempotent
Inspect

Search species by free text in any of eight languages or by scientific name, with optional category, habitat and ISO country filters. Ranked by iNaturalist observations. One page of card-sized records.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNoFree text, for example `red fox` or `Vulpes`.
perNo
langNoDisplay language.en
pageNo
countryNoISO 3166-1 alpha-2.
habitatNo
categoryNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
perYes
pageYes
itemsYes
totalYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false; the description adds beyond that by disclosing that results are ranked by iNaturalist observations and returned as a single page of card-sized records. This provides ordering and result-shape context that the annotations do not cover.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, each carrying distinct information: search modes, filters, ranking, and record shape. It is front-loaded with the action and avoids filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the main decision points (query modes, filters, ordering, output unit) and an output schema exists to define return details. It does not explicitly mention that q is optional or contrast with sibling tools, but the schema/context signals cover the optional nature.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 43%, and the description compensates by clarifying the q parameter accepts either common-name text or scientific names and by naming the optional category, habitat, and country filters. It does less for per/page pagination semantics, so it is strong but not complete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the exact action (search species) and specifies input modes (free text in eight languages or scientific name) and filters, which sets it apart from the sibling get_animal detail tool. It is a specific verb+resource statement, not a tautology.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly conveys when to search: for species matching free text/scientific name, with optional filters, and notes the output is a page of card-sized records. It does not explicitly say to use get_animal for single-record details or list_categories/list_countries for metadata, so it lacks explicit alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • First observedget_animal
    • First observedlist_categories
    • First observedlist_countries
    • First observedsearch_animals

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides information about animals at the Taipei Zoo, including their habits, habitats, and distribution across various park areas. It enables users to search for specific animals and browse regional guides using data from the Taipei City Open Data platform.
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables searching RescueGroups.org for adoptable animals by species, postal-code radius, breed, and traits, and exploring the rescues/shelters that list them, including full details, photos, contact info, and adoption process.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides world country data from the REST Countries API, enabling search by name, ISO code, region, language, or currency, with details like capital, population, and languages.
    138 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.