Skip to main content
Glama
SidneyBissoli

ILO Statistics (ILOSTAT) MCP Server

Search ILOSTAT indicators

ilo_search_indicators
Read-onlyIdempotent

Search ILOSTAT's catalogue of ~1,200 indicator dataflows by keyword to find the correct dataflow ID for retrieving statistics with ilo_get_data.

Instructions

Search the ILOSTAT catalogue of ~1,200 indicator dataflows by keywords in the name or id (e.g. "unemployment rate sex age"). All terms must match (AND, case-insensitive), so start with 2–3 English words and drop terms if you get 0 results; results are ranked by ILO relevance weight, not by match count. Reading the id tells you the shape: suffix _RT = rate/ratio, NB = number (usually thousands); dataflows whose second token starts with 2 (e.g. DF_UNE_2EAP…) are ILO modelled estimates with full country/year coverage, the others are reported national data. Returns dataflow ids to use with ilo_get_data / ilo_get_indicator_metadata. Searches the local catalogue only — it does not return statistical values (use ilo_get_data), does not search dimension codes such as countries (use ilo_list_dimension_values) and does not cover non-ILO sources.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum results (default 20)
queryYesKeywords, matched against dataflow name and id (AND between terms)
offsetNoResults to skip, for pagination (default 0)
provenance_modeNoProvenance verbosity: 'concise' (default — source, url, vintage, retrieval date, citation, license) or 'detailed' (full canonical block with dataset, dimension key and notices)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
offsetYes
showingYes
has_moreYes
indicatorsYes
provenanceYes
attributionYes
next_offsetNo
total_matchesYes
Behavior5/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and the description adds rich non-obvious behavior: AND semantics, case-insensitivity, ranking by ILO relevance (not match count), ID format conventions (_RT = rate/ratio, _NB = thousands), modelled-estimate detection via second token, and explicit non-coverage of non-ILO sources. All of this is genuinely additive behavioral context the annotations could not express.

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

Conciseness4/5

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

The description is long but every sentence earns its place, flowing logically from core purpose → search semantics → ID conventions → exclusions. It front-loads the most critical signal (what the tool searches) and uses em-dashes and parentheses to compress a lot of heuristic guidance into a readable paragraph. The only blemish is the density might overwhelm a first-time caller, but for a tool with this nuance, it's near-optimal.

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 4-parameter read-only search tool with an output schema, this description is complete: it specifies the return contract ('Returns dataflow ids to use with ilo_get_data / ilo_get_indicator_metadata') and documents all the failure modes an agent would otherwise hit (0 results, case sensitivity, modelled vs reported). The output schema covers return structure details, so the description need not repeat them. Nothing is left unaddressed.

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 baseline is 3; the description earns a 4 by going beyond field docs: it clarifies that the query matches across both name AND id, that terms combine with AND (echoed but also exemplified with 'unemployment rate sex age'), and that the id returned will feed into other tools. However, it does not add detail on limit/offset pagination semantics or provenance_mode values beyond 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 starts with a specific verb+resource pairing ('Search the ILOSTAT catalogue of ~1,200 indicator dataflows by keywords in the name or id') and immediately differentiates from siblings by naming what it does NOT do ('does not return statistical values (use ilo_get_data), does not search dimension codes such as countries (use ilo_list_dimension_values)').

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

Usage Guidelines5/5

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

Provides explicit when-to-use guidance: 'start with 2–3 English words and drop terms if you get 0 results' is actionable search strategy. Directly names two alternatives (ilo_get_data, ilo_list_dimension_values) in the exclusion context, and teaches ID-reading heuristics (_RT, _NB, second-token '2') that tell the agent which results to prefer.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SidneyBissoli/ilo-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server