[Docs](/docs) / World Bank indicators

# World Bank indicators

Find reviewed World Development Indicators and read annual observations by country, with definitions, dates and source attribution.

## Call it

Use an agent API key, including a tenant sub-key. Management credentials cannot call tools. Available tools appear on your combined MCP endpoint when switched on.

```
https://mcp.deep.navy/mcp
```

Check [Tools in the dashboard](/dashboard/tools) for current availability. Your MCP client reads the current input and output schemas from the server. These are on-demand provider lookups; source freshness and coverage differ by dataset. For API-key provisioning, see the [platform API guide](/docs/platform); for failures and retries, see [limits and errors](/docs/limits).

## Coverage and interpretation

The initial catalog includes GDP, GDP growth, GDP per capita, population, urban population share, trade as a share of GDP and consumer-price inflation.

Search the supported catalog, then fetch an indicator by its ID and country code. Annual observations can be revised, and a missing value is not zero.

The default period is the recent ten calendar years. Request explicit start and end years for reproducible comparisons, and continue with nextPageToken when returned.

## worldbank_search

Find supported indicators by name or topic and use the returned indicator ID in worldbank_fetch.

- query is optional (up to 200 characters); omit it to browse the reviewed indicator catalog, or search by keyword or indicator ID. This is indicator discovery, not country search.
- limit defaults to 10 and supports up to 50. Use results\[].id in worldbank_fetch. Continue with nextPageToken as pageToken, preserving query and limit. Metadata includes unit, frequency, attribution, sourceUrl, licenseUrl and termsUrl.

## Example request: `worldbank_search`

Arguments for an MCP tools/call request. The values returned depend on the source’s current data.

```
{
  "name": "worldbank_search",
  "arguments": {
    "query": "GDP",
    "limit": 10
  }
}
```

For the next MCP page, resend the example arguments with `pageToken` set to the exact `nextPageToken` from your response. Stop when no token is returned. Treat tokens as opaque; start a new request if you change the filters.

Direct HTTP API: POST the argument object to `deepnavy.worldbank.v1.WorldBankService/SearchIndicators`. The response is the protobuf JSON body, without an MCP envelope. Set `DEEPNAVY_KEY` in your environment before running:

```
curl --fail-with-body --request POST 'https://api.deep.navy/deepnavy.worldbank.v1.WorldBankService/SearchIndicators' \
  --header "Authorization: Bearer $DEEPNAVY_KEY" \
  --header 'Content-Type: application/json' \
  --header 'Connect-Protocol-Version: 1' \
  --data '{"query":"GDP","limit":10}'
```

## worldbank_fetch

Fetch annual observations for one supported indicator and country, preserving missing values and source metadata.

- indicatorId must come from worldbank_search. country accepts two- or three-letter ISO country codes, World Bank aggregates such as WLD, or all for all countries and aggregates.
- startYear and endYear are inclusive, from 1960 through 2100. endYear defaults to the current UTC year; startYear defaults to nine years before endYear. limit defaults to 50 and supports up to 100 observations.
- Read observations\[].year separately from lastUpdated (the provider dataset’s update date). missing: true with no value means missing data; value: 0 is a reported zero. No interpolation is performed. Use nextPageToken as pageToken with every other argument unchanged. Provider revisions can change data between pages; this is not a point-in-time snapshot.

## Example request: `worldbank_fetch`

Arguments for an MCP tools/call request. The values returned depend on the source’s current data.

```
{
  "name": "worldbank_fetch",
  "arguments": {
    "indicatorId": "NY.GDP.MKTP.CD",
    "country": "USA",
    "startYear": 2020,
    "endYear": 2024,
    "limit": 50
  }
}
```

For the next MCP page, resend the example arguments with `pageToken` set to the exact `nextPageToken` from your response. Stop when no token is returned. Treat tokens as opaque; start a new request if you change the filters.

Direct HTTP API: POST the argument object to `deepnavy.worldbank.v1.WorldBankService/FetchIndicator`. The response is the protobuf JSON body, without an MCP envelope. Set `DEEPNAVY_KEY` in your environment before running:

```
curl --fail-with-body --request POST 'https://api.deep.navy/deepnavy.worldbank.v1.WorldBankService/FetchIndicator' \
  --header "Authorization: Bearer $DEEPNAVY_KEY" \
  --header 'Content-Type: application/json' \
  --header 'Connect-Protocol-Version: 1' \
  --data '{"indicatorId":"NY.GDP.MKTP.CD","country":"USA","startYear":2020,"endYear":2024,"limit":50}'
```

## Sources, documentation and reuse

Source: World Bank, World Development Indicators. The supported catalog is reviewed for CC BY 4.0 reuse. Retain the indicator’s source attribution, license and source URL; the wider World Bank catalog may include third-party restrictions.

- [World Bank Open Data homepage](https://data.worldbank.org/)
- [Indicators API documentation](https://datahelpdesk.worldbank.org/knowledgebase/articles/889392)
- [World Development Indicators](https://datatopics.worldbank.org/world-development-indicators/)
- [Country codes, date ranges and pagination](https://datahelpdesk.worldbank.org/knowledgebase/articles/898581-api-basic-call-structures)
- [Data terms of use](https://data.worldbank.org/summary-terms-of-use)
- [CC BY 4.0 license](https://creativecommons.org/licenses/by/4.0/)

---

This is the Markdown copy of https://deep.navy/docs/worldbank.
