MCP server for the Geomelon geographic API — stdio and remote HTTP transports
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent — or use 1-click editor setup below.
💡 Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
MCP server for the Geomelon geographic API. Exposes cities, countries, regions, and languages as tools any MCP-compatible AI client can call.
Looking for other ways to integrate? See all official libraries at geomelon.dev/libraries.
Two transports are included:
| Binary | Transport | Use case |
|---|---|---|
geomelon-mcp | stdio | Claude Desktop, Cursor, Cline, Continue |
geomelon-mcp-http | HTTP (Streamable) | Claude Code, remote / hosted server |
No GEOMELON_API_KEY? Run the server anyway — it starts up with just the search_cities_autocomplete tool, backed by the free oneshot host, no signup required. Every other tool needs a key. This is the fastest way to try the server before subscribing on RapidAPI.
Geomelon also runs a public hosted instance of this same keyless demo — no npx, no local process. Point any remote-MCP-capable client (Claude web/desktop connectors, ChatGPT connectors, MCP Inspector, etc.) at:
It exposes only search_cities_autocomplete, same as running the server yourself with no API key. For the full 22-tool set, run your own instance (below) with your RapidAPI key.
Create a .env file in the directory you'll run the server from:
Start the server (dotenv loads .env automatically):
Register it with Claude Code:
Verify it's connected:
The server must be running whenever you use Claude Code. To use a different port set PORT=your_port and update the URL in the claude mcp add command accordingly.
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
Restart Claude Desktop after saving.
Add to your editor's MCP config:
Create a .env file on your server:
Start the server:
Then register with any MCP client using http://your-host:3000/mcp as the URL.
The HTTP transport is stateless — each request is independent, no session management needed. CORS is wide open (Access-Control-Allow-Origin: *) since this transport is meant to be reachable by browser-based remote-MCP clients too. GET / (or /health) returns a small JSON status object — useful for uptime checks — reporting whether the instance has a key configured ("mode": "full" or "mode": "keyless-demo").
| Tool | Description |
|---|---|
search_cities | Search by name, country code, region, population range, sort order |
get_city | Full details for a city by UUID |
get_city_translations | All name translations for a city by UUID |
get_city_settlement_types | Settlement-type classifications for a city by UUID |
cities_by_coordinates_closest | Cities nearest to a lat/lon, ordered by distance |
cities_by_coordinates_largest | Largest cities near a lat/lon, ordered by population |
cities_distance | Distance in km between two cities |
| Tool | Description |
|---|---|
list_countries | List countries, filter by name prefix or telephone dialing code |
get_country | Full details for a country by UUID (includes translations and regions) |
get_country_translations | Name translations for a country by UUID |
get_country_regions | All administrative regions for a country by UUID |
| Tool | Description |
|---|---|
list_regions | List regions, filter by country UUID |
get_region | Full details for a region by UUID |
get_region_translations | Name translations for a region by UUID |
| Tool | Description |
|---|---|
list_languages | List all languages in the database |
get_language | Details for a language by UUID |
| Tool | Description |
|---|---|
search_cities_autocomplete | Country-scoped, language-specific city name prefix search backed by pre-built static files. The only tool available in keyless demo mode. Works in keyed mode too — it's the fastest search path. |
See geomelon.dev/free-city-autocomplete-api for supported country/language pairs and the underlying HTTP endpoint.
These tools chain multiple API calls internally to save round-trips.
| Tool | Description |
|---|---|
find_cities_near_city | Given a city UUID, find nearby cities ordered by distance or population |
city_context | Fetch a city together with its full country and region details in one call |
country_overview | Fetch a country (by UUID or name), its regions, and top cities by population |
compare_cities | Fetch two cities and the distance between them in one call |
search_cities_in_country | Search cities using a country name instead of an ISO code |
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/mcp-190)<a href="https://allmcps.com/mcp/mcp-190"><img src="https://allmcps.com/api/badge/mcp-190?style=directory" alt="Mcp on AllMCPs" /></a>