Countries

liveGeographyReference

World country data — search by name, ISO code, region, language, or currency via REST Countries API

5tools
0msauth
free tier50 calls/day

Tools

search_countriesrequired: query

Search for countries by name. Returns official name, capital, region, population, area, languages, currencies, flag emoji, and the country's land borders by name — so "which countries border Bolivia"

Parameters
NameTypeDescription
queryreqstringCountry name to search for (partial matches are supported)
▶Try it
get_country_by_coderequired: code

Get country details by ISO code (e.g., "US" for United States or "FRA" for France). Returns capital, population, languages, currencies, area, and region.

Parameters
NameTypeDescription
codereqstringISO 3166-1 alpha-2 or alpha-3 country code
▶Try it
countries_by_regionrequired: region

List all countries in a region (e.g., "Africa", "Europe", "Asia"). Returns name, capital, population, area, and flag emoji.

Parameters
NameTypeDescription
regionreqstringRegion name — one of: africa, americas, asia, europe, oceania
▶Try it
countries_by_languagerequired: language

Find countries where a language is spoken (e.g., "Spanish", "Mandarin"). Returns name, capital, region, population, and official language status.

Parameters
NameTypeDescription
languagereqstringLanguage name (e.g. "spanish", "french", "arabic")
▶Try it
countries_by_currencyrequired: currency

Find countries using a currency (e.g., "EUR" for Euro, "USD" for US Dollar). Returns name, capital, region, and currency details.

Parameters
NameTypeDescription
currencyreqstringCurrency code or name (e.g. "eur", "usd", "dollar")
▶Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/countries/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/countries/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_countries","arguments":{"query": "hello"}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("search_countries", {"query":"example"});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("world country data — search by name, iso code, region, language, or currency via rest countries api");