SkillAgentSearch skills...

worldbank-mcp-server

Query 29,500+ World Bank development indicators for 200+ countries across 60+ years via MCP. STDIO or Streamable HTTP.

Install / Use

claude mcp add cyanheads -- npx -y github:cyanheads/worldbank-mcp-server

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

80/100

Category

Marketing

Supported Platforms

Claude Code
Claude Desktop

Our assessment of worldbank-mcp-server

worldbank-mcp-server scores 80/100 on our quality scale, 138th of 176 Marketing skills we index.

Its MCP Server is 18 KB long, well organised into 24 sections with 7 code examples: a thorough specification that gives an agent plenty to work with.

It has 3 GitHub stars, so there is little community track record yet; judge it on its content.

Substance
30/30
Structure
20/20
Description
12/15
Adoption
3/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated today, so worldbank-mcp-server is actively maintained.
  • Our last check on 2026-09-12 found the source still online.
  • It is released under the Apache-2.0 license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 92/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

Safety scan

No issues found

Our scan of the first 100 KB of the file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful.

AI review by kimi-k2.7-code on 2026-09-25. Automated pattern scan on 2026-09-25. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.

worldbank-mcp-server compared with similar skills

All 4 of these similar skills score higher than worldbank-mcp-server; compare them before choosing.

SkillScoreStarsUpdatedFormat
worldbank-mcp-server (this skill)by cyanheads803todayMCP Server
Agent-Reachby Panniantong10085.5k10d agoCLAUDE.md
headroomby headroomlabs-ai10073.8ktodayCLAUDE.md
rufloby ruvnet10073.3k1d agoCLAUDE.md
CowAgentby zhayujie10047.1ktodayCLAUDE.md

Frequently asked questions

How do I install worldbank-mcp-server?
Run claude mcp add cyanheads -- npx -y github:cyanheads/worldbank-mcp-server. The install tabs above show the steps for each supported agent.
Which AI agents does worldbank-mcp-server work with?
It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
Is worldbank-mcp-server safe to use?
Our scan of the first 100 KB of the file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful. It is Apache-2.0-licensed and scores 92/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is worldbank-mcp-server still maintained?
The repository was last updated today, so worldbank-mcp-server is actively maintained.
<div align="center"> <h1>@cyanheads/worldbank-mcp-server</h1> <p><b>Query 29,500+ World Bank development indicators for 200+ countries across 60+ years via MCP. STDIO or Streamable HTTP.</b> <div>9 Tools • 2 Resources</div> </p> </div> <div align="center">

Version License MCP SDK npm TypeScript Bun

</div> <div align="center">

Install in Claude Desktop Install in Cursor Install in VS Code

Framework

Public Hosted Server: https://worldbank.caseyjhand.com/mcp

</div>

Tools

9 tools for browsing and querying the World Bank Open Data API:

| Tool | Description | |:---|:---| | worldbank_list_topics | List all 21 World Bank thematic topics with descriptions | | worldbank_list_sources | List 70+ World Bank data sources (datasets) with pagination | | worldbank_list_countries | List countries and regional aggregates with ISO codes, region, income level, and coordinates | | worldbank_get_country | Fetch full metadata for a specific country or aggregate by ISO2, ISO3, or aggregate code | | worldbank_search_indicators | Search the 29,500+ indicator catalog by keyword, topic, or source | | worldbank_get_indicator | Fetch complete metadata for a single indicator: name, description, source, unit, and topics | | worldbank_get_data | Query indicator values for one or more countries across a time range or most-recent N values | | worldbank_get_poverty | Poverty headcount, gap, and severity at any poverty line, plus the Gini coefficient and decile shares, from the Poverty and Inequality Platform | | worldbank_search_projects | Search the World Bank lending portfolio by text, country, region, status, and board approval date |

worldbank_list_topics

List all 21 World Bank thematic topic categories.

  • No input required — returns the complete fixed taxonomy
  • Topics include Agriculture, Economy & Growth, Education, Energy & Mining, Environment, Financial Sector, Health, Infrastructure, Poverty, Private Sector, Public Sector, Science & Technology, Social Development, Social Protection & Labor, Trade, Urban Development, and more
  • Returns topic IDs used to filter worldbank_search_indicators

worldbank_list_sources

List the 70+ World Bank data sources (datasets).

  • Paginated with configurable page size (up to 100 per page)
  • Each source includes ID, name, short code, last-updated date, and data/metadata availability status
  • Source IDs used to filter worldbank_search_indicators by dataset origin (e.g. "2" for World Development Indicators, "6" for IDS)

worldbank_list_countries

List countries and regional aggregates with metadata.

  • Returns ISO codes, World Bank region, income level, capital city, and coordinates
  • Filterable by region code (EAS, ECS, LCN, MEA, NAC, SAS, SSF) and income level (LIC, LMC, UMC, HIC)
  • By default returns individual countries only; set include_aggregates=true to include regional, income-group, and world aggregate entities
  • Paginated with up to 300 entries per page

worldbank_get_country

Fetch full metadata for a single country or aggregate entity.

  • Accepts ISO2 (US), ISO3 (USA), or World Bank aggregate codes (EAS, HIC, WLD)
  • Returns region, income level, lending type, capital city, and coordinates
  • Structured error with recovery hint when code is not found

worldbank_search_indicators

Search the 29,500+ World Bank indicator catalog.

  • Keyword search, topic filter, source filter — at least one required
  • The upstream searchterm parameter does not filter, so keyword matching runs locally over the full catalog (or the full selected topic/source): every term must appear in the indicator ID, name, or description, in any word order, with punctuation ignored
  • Exact ID or name matches rank first, then whole-phrase matches, then other ID/name matches, then description-only matches — so pasting an indicator name (GDP (current US$)) or ID (NY.GDP.MKTP.CD) returns it as the top hit
  • Returns indicator IDs, names, source dataset, and thematic topics
  • One row per indicator ID — the 43 indicators published under both a live source and an archived copy collapse to the live row, and worldbank_get_indicator resolves to the same one
  • Indicator IDs (e.g. NY.GDP.PCAP.CD, SP.POP.TOTL) feed directly into worldbank_get_data
  • Echoes the filters it applied (query, topic_id, source_id) alongside the results
  • Paginated with up to 100 results per page

worldbank_get_indicator

Fetch complete metadata for a known indicator ID.

  • Returns full description, unit of measurement, source dataset, source organization, and thematic topics
  • Structured error with recovery hint when ID is not found

worldbank_get_data

Query indicator values for countries across time. The primary data-access tool.

  • Single country, array of countries, regional codes (EAS, LCN, …), income codes (HIC, LMC, …), world code (WLD), or "all" for every entry. At least one code is required — an empty value is rejected rather than read as "all"
  • Time filtering: date_range for a period or range — annual (2020, 2010:2023), quarterly (2020Q1:2021Q4), or monthly (2020M01:2020M06) — or mrv for the N most recent available values (1–100). Mutually exclusive.
  • A date_range the API can't apply is enforced locally over the whole series, so observations outside the requested window are never returned as matches
  • Returns observations with null values when data is not available for a country×year cell — common for sparse series
  • Includes nullCount per page to surface data sparsity
  • Output grouped by country for readability; isAggregate flag distinguishes all 78 regional, income-group, and lending-group aggregates from individual countries
  • Echoes the parameters it sent upstream — indicator, normalized country codes, date range or mrv, page and page size
  • Paginated with up to 1000 entries per page

worldbank_get_poverty

Poverty and inequality estimates from the World Bank Poverty and Inequality Platform (PIP) — a separate dataset from the WDI series the other tools read.

  • Poverty headcount ratio, poverty gap, poverty severity, and the Watts index at any poverty line, not only the published thresholds. Omit poverty_line to use the international line of the PIP release currently served, which is echoed back on every row
  • The same row carries the inequality and distribution block: Gini coefficient, mean log deviation, Wolfson polarization, and the ten decile income/consumption shares. One tool, because PIP returns poverty and inequality together and the poverty line does not affect the distribution
  • Every row states how it was produced. estimationType: "survey" rows carry the full inequality block; "interpolation", "extrapolation", and "CMD estimation" rows are gap-filled estimates for years no survey covers, and their gini, mld, polarization, and decileShares are null — a gap in the source data, not an error. surveyYear, surveyAcronym, and isInterpolated sit alongside them
  • fill_gaps defaults to true, so years the surveys don't reach come back as PIP's own estimate rather than as an empty result or a hole in the series. Survey rows win wherever one exists, so a single-year batch can carry real distributions for some economies and labelled estimates for others, and a full-history query returns a row per year with the real distribution on the survey years. Set fill_gaps=false for survey-derived rows only
  • Welfare is measured in PPP dollars per person per day. welfare_type pins results to income or consumption surveys, which are not directly comparable; thirty-five economies publish both and return a row for each
  • Ten economies publish an urban/rural split and return an extra row per year for it — China alone reports all three levels, the rest pair national with either urban or rural. reporting_level narrows to one, and every row states its own
  • year accepts a four-digit year, "all" for the full history, or "MRV" for the most recent available. Coverage starts in 1963
  • Individual economies only, by ISO3 code — PIP does not serve regional, income-group, or world aggregate codes through this endpoint, and a structured error says so
  • Paginated locally with up to 1000 entries per page, since PIP itself has no pagination

worldbank_search_projects

The World Bank lending portfolio — the individual loans, credits, and grants the Bank finances — rather than the statistics the other tools read. A third upstream API, on its own host, with its own envelope and conventions.

  • Free-text query across project names, abstracts, and objectives, combined with exact filters on countries, region, status, and a board-approval date window. Every filter is an AND, and every multi-value filter is an OR within itself
  • Returns the project ID, name, borrowing country and region, status, board approval and closing dates, total commitment in USD, financing windows (IBRD, IDA, Grants), major sectors, and a link to the project page
  • Countries are ISO2 here (BR, IN, ZA) — the one place this server departs from the ISO3 codes its other tools take, because the Projects API keys on ISO2. Multi-country operations carry a World Bank regional code instead (3A, 4E), two characters like the rest. An ISO3 code is rejected at the schema with a message naming the difference, rather than being passed upstream where it would come back as a silent zero-hit. worldbank_get_country reports a country's iso2 field for either form
  • status is a closed set (Active, Closed, Dropped, Pipeline) and region is the nine World Bank operational regions, both enforced by the schema — a typo in either can't reach upstream and read back as "no results"
  • An empty result says which filter emptied it. When a country filter was in force, the search re-runs it on its own: either no project carries those codes at all, or they match as a set and the remaining filters are what narrowed the result to nothing, and the notice names them
  • include_abstract is off by default. Abstracts run to a median of roughly 1,200 characters and are published for about half the portfolio, so a full page of them roughly doubles the response — turn it on once the r

Truncated for display — read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars3
CategoryMarketing
Updated20h ago
Forks0

Languages

TypeScript

Trust signals

92/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

1 low