Skip to main content
Glama

UN SDG Data Query

unsdg.data.query
Read-onlyIdempotent

Query UN SDG time-series indicator data by series code. Returns country-level or regional annual measurements for indicators like poverty rates, maternal mortality, CO2 emissions, literacy rates, and more. Filter by UN M49 geo area code (e.g. "356" for India, "840" for USA) and/or year range. Each record includes the geo area, year, value, source, and any disaggregation dimensions (age, sex, urbanization). Get series codes from unsdg.indicators.list; get geo area codes from unsdg.geo.countries.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of records to return per page (1-200, default 50). Large series may have thousands of records across countries and years.
end_yearNoFilter data records up to and including this year (e.g. 2023). Combined with start_year to define a time range.
start_yearNoFilter data records starting from this year (e.g. 2010). Combined with end_year to define a time range.
series_codeYesUN SDG series code to query (e.g. "SI_POV_DAY1" for poverty rate, "SH_STA_MORT" for maternal mortality, "EN_ATM_CO2" for CO2 emissions). Obtain series codes from unsdg.indicators.list.
geo_area_codeNoUN M49 numeric geo area code to filter by country or region (e.g. "356" for India, "840" for USA, "076" for Brazil). Use unsdg.geo.countries to look up codes.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNoPresent only when the call failed. Includes error code, message, request_id, and any provider-specific extras.
resultNoTool response payload. Shape varies per tool — consult the tool description and inputSchema. May be an object, array, string, or number depending on the upstream provider response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already establish readOnly, openWorld, idempotent, and non-destructive behavior, so the description's additional information about return contents (geo area, year, value, source, disaggregation dimensions) and filter options provides valuable context beyond what annotations convey. No contradictions with 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 concise (five short sentences) with the core purpose front-loaded. It uses concrete examples (e.g., '356' for India), explains return fields, and points to companion tools—all without redundancy or fluff.

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?

Given the tool's moderate complexity)Skip; descriptions cover what it does, how to filter, what fields are returned, and where to obtain required codes. With an output schema available to detail the response structure, the description provides sufficient guidance for an agent to select and invoke the tool correctly.

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%, with all five parameters having detailed descriptions including examples)Skip; the description's mention of filters and series codes largely mirrors the schema content. Since the schema already handles parameter semantics, the description adds no significant new meaning, aligning with a baseline score of 3.

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 opens with a specific verb and resource: 'Query UN SDG time-series indicator data by series code.' It clearly states the tool's function and distinguishes itself from reference/list siblings like unsdg.indicators.list and unsdg.geo.countries by focusing on data retrieval rather than metadata lookup. Examples of indicators and explicit mention of filtering dimensions add specificity.

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 provides clear context for when to use this tool—when querying time-series data by series code—and directs the agent to related tools for parameter preparation ('Get series codes from unsdg.indicators.list; get geo area codes from unsdg.geo.countries'). It does not explicitly list exclusions or alternatives, but the sibling context makes those implicit.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.