geolocate_ip
Geolocate an IPv4 or IPv6 address — returns country, region, city, coordinates, timezone, and EU membership. Requires Starter plan or above.
Look up countries, their states and cities, live currency rates and IP geolocation — with one search that spans all three geographic levels.
LABSCO SUMMARY
A state lookup that returns nothing because of a plan limit looks identical to a country with no states, and an agent will report the second. Saying 'requires Starter plan or above' in the description means the failure is interpretable before it happens. global_search is the other genuinely useful piece: a place name arrives without a level attached — nobody says 'the city of' — and searching all three at once matches how the question is actually asked. Returning basic fields by default with more on request is the right shape for a reference API where most callers want a name and a code.
A geographic reference client covering the country-state-city hierarchy, currency rates and IP geolocation, with plan tiers gating the deeper levels.
APOGEOAPI_KEY. Some tools require a paid tier, which they name in their own descriptions.
One command plus a key — npx -y @apogeoapi/mcp, then supply credentials
USE CASES
Search across countries, states and cities in one query rather than guessing which one it belongs to.
Look it up by ISO code, or list with pagination when you need the set rather than one.
Get the states for a country and the cities for a state — both requiring a paid tier, which the tools say up front.
Read the live USD rate for the country's currency, updated on a stated four-hour cycle.
Geolocate the IP — v4 or v6 — for country, region, city and coordinates.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
geolocate_ipGeolocate an IPv4 or IPv6 address — returns country, region, city, coordinates, timezone, and EU membership. Requires Starter plan or above.
get_citiesGet all cities for a state/province by state ID. Requires Starter plan or above.
get_countryGet full data for a country by ISO2 or ISO3 code — includes name, capital, region, population, currency, live USD exchange rate, timezones, and phone code.
get_currency_rateGet the live USD exchange rate for a country's currency. Updated every 4 hours. Requires Starter plan or above.
get_statesGet all states/provinces for a country. Requires Starter plan or above.
global_searchSearch across countries, states, and cities in a single query. Returns the best matches from all geographic entity types.
list_countriesList all countries with pagination. Returns basic info by default — add fields=full for all data.
search_countriesSearch countries by name (e.g. "arg" finds Argentina). Returns paginated matches.
BEFORE YOU INSTALL
8 tools when we connected. get_states, get_cities, get_currency_rate and geolocate_ip need a Basic+ plan (from $19 a month); only get_country, list_countries, search_countries and global_search work on Free, which allows 1,000 requests a month.
CONTEXT COST
Rated by the size of the 8 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
npx -y @apogeoapi/mcp{
"mcpServers": {
"apogeoapi": {
"command": "npx",
"args": [
"-y",
"@apogeoapi/mcp"
],
"env": {
"APOGEOAPI_KEY": "<YOUR_APOGEOAPI_KEY>"
}
}
}
}Clone and build the server
git clone https://github.com/APOGEOAPI/apogeoapi-mcp.git
cd apogeoapi-mcp
npm install
npm run buildThen reference the built file
<YOUR_PATH_TO_APOGEOAPI_MCP> is the absolute path of your clone.
{
"mcpServers": {
"apogeoapi": {
"command": "node",
"args": [
"<YOUR_PATH_TO_APOGEOAPI_MCP>/dist/index.js"
],
"env": {
"APOGEOAPI_KEY": "<YOUR_APOGEOAPI_KEY>"
}
}
}
}