Skip to main content
Glama
930m310n

geomelon-mcp

by 930m310n

geomelon-mcp

MCP-сервер для географического API Geomelon. Предоставляет города, страны, регионы и языки в качестве инструментов, которые может вызвать любой MCP-совместимый ИИ-клиент.

Включено два транспорта:

Бинарный файл

Транспорт

Вариант использования

geomelon-mcp

stdio

Локальные клиенты — Claude Desktop, Cursor, Cline, Continue

geomelon-mcp-http

HTTP (Streamable)

Удаленный / хостинговый сервер

Требования

  • Node.js 18+

  • Ключ RapidAPI с подпиской на API Geomelon

Related MCP server: bamwor-mcp-server

Настройка

Скопируйте .env.example в .env и вставьте свой ключ:

cp .env.example .env
GEOMELON_API_KEY=your_rapidapi_key_here
PORT=3000   # HTTP transport only

Локальное использование (stdio)

Claude Desktop

Добавьте в ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "geomelon": {
      "command": "npx",
      "args": ["-y", "geomelon-mcp"],
      "env": {
        "GEOMELON_API_KEY": "your_rapidapi_key_here"
      }
    }
  }
}

Cursor / Windsurf / Cline

Добавьте в конфигурацию MCP вашего редактора (точный путь зависит от редактора):

{
  "geomelon": {
    "command": "npx",
    "args": ["-y", "geomelon-mcp"],
    "env": {
      "GEOMELON_API_KEY": "your_rapidapi_key_here"
    }
  }
}

Удаленное использование (HTTP)

Запустите сервер:

GEOMELON_API_KEY=your_key PORT=3000 npx geomelon-mcp-http

Затем укажите вашему MCP-клиенту адрес http://your-host:3000/mcp.

HTTP-транспорт не имеет состояния — каждый запрос независим, сессии управлять не нужно.

Доступные инструменты

Города

Инструмент

Описание

search_cities

Поиск по названию, коду страны, региону, диапазону населения, порядку сортировки

get_city

Полная информация о городе по UUID

cities_by_coordinates_closest

Города, ближайшие к широте/долготе, отсортированные по расстоянию

cities_by_coordinates_largest

Крупнейшие города рядом с широтой/долготой, отсортированные по населению

cities_distance

Расстояние в км между двумя городами

Страны

Инструмент

Описание

list_countries

Список всех стран, фильтрация по телефонному коду

get_country

Полная информация о стране по UUID (включает переводы и регионы)

Регионы

Инструмент

Описание

list_regions

Список регионов, фильтрация по UUID страны

get_region

Полная информация о регионе по UUID

Языки

Инструмент

Описание

list_languages

Список всех языков в базе данных

get_language

Информация о языке по UUID

Разработка

npm install
npm run build      # compile TypeScript → dist/

Запуск stdio-сервера напрямую:

GEOMELON_API_KEY=your_key node dist/stdio.js

Запуск HTTP-сервера напрямую:

GEOMELON_API_KEY=your_key PORT=3000 node dist/http.js

Available Tools

1 tool
search_cities_in_countryA
Read-only

Search cities using a country name instead of an ISO code. Resolves the country first, then searches cities within it.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoCity name prefix to filter by
sortNoSort order
limitNoMax results (default 20)
offsetNoPagination offset
countryNameYesCountry name prefix (e.g. "France", "United States")
maxPopulationNoMaximum population
minPopulationNoMinimum population
preferredLanguagesNoComma-separated BCP 47 language tags

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true, so the description's mention of 'Resolves the country first' adds some behavioral context but does not provide additional safety or limitation details. Description does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences that directly describe the tool's core purpose without any redundant or extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Description gives a high-level overview of the two-step process (resolve country, search cities) but does not mention pagination or return format despite pagination parameters existing. Adequate but could be more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all parameters are described there. The description does not add meaning beyond the schema, but baseline is 3 due to high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb 'search' and resource 'cities', and specifies the mechanism: using a country name instead of an ISO code. It distinguishes the tool's function clearly despite no siblings listed.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for searching cities by country name (as opposed to ISO code), providing some context. However, it does not explicitly state when to use or avoid this tool, nor does it reference alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 20 tool updatesv1.1.1
    • Removedcities_by_coordinates_closest
    • Removedcities_by_coordinates_largest
    • Removedcities_distance
    • Removedcity_context
    • Removedcompare_cities
    • Removedcountry_overview
    • Removedfind_cities_near_city
    • Removedget_city
    • Removedget_city_settlement_types
    • Removedget_city_translations
    • Removedget_country
    • Removedget_country_regions
    • Removedget_country_translations
    • Removedget_language
    • Removedget_region
    • Removedget_region_translations
    • Removedlist_countries
    • Removedlist_languages
    • Removedlist_regions
    • Removedsearch_cities
  2. 21 tool updatesv1.0.9
    • Addedcities_by_coordinates_closest
    • Addedcities_by_coordinates_largest
    • Addedcities_distance
    • Addedcity_context
    • Addedcompare_cities
    • Addedcountry_overview
    • Addedfind_cities_near_city
    • Addedget_city
    • Addedget_city_settlement_types
    • Addedget_city_translations
    • Addedget_country
    • Addedget_country_regions
    • Addedget_country_translations
    • Addedget_language
    • Addedget_region
    • Addedget_region_translations
    • Addedlist_countries
    • Addedlist_languages
    • Addedlist_regions
    • Addedsearch_cities
    • Addedsearch_cities_in_country
  3. 21 tool updates
    • Removedcities_by_coordinates_closest
    • Removedcities_by_coordinates_largest
    • Removedcities_distance
    • Removedcity_context
    • Removedcompare_cities
    • Removedcountry_overview
    • Removedfind_cities_near_city
    • Removedget_city
    • Removedget_city_settlement_types
    • Removedget_city_translations
    • Removedget_country
    • Removedget_country_regions
    • Removedget_country_translations
    • Removedget_language
    • Removedget_region
    • Removedget_region_translations
    • Removedlist_countries
    • Removedlist_languages
    • Removedlist_regions
    • Removedsearch_cities
    • Removedsearch_cities_in_country
  4. 21 tool updatesv1.0.8
    • First observedcities_by_coordinates_closest
    • First observedcities_by_coordinates_largest
    • First observedcities_distance
    • First observedcity_context
    • First observedcompare_cities
    • First observedcountry_overview
    • First observedfind_cities_near_city
    • First observedget_city
    • First observedget_city_settlement_types
    • First observedget_city_translations
    • First observedget_country
    • First observedget_country_regions
    • First observedget_country_translations
    • First observedget_language
    • First observedget_region
    • First observedget_region_translations
    • First observedlist_countries
    • First observedlist_languages
    • First observedlist_regions
    • First observedsearch_cities
    • First observedsearch_cities_in_country

TDQS

A3.6/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no risk of confusion or overlap with other tools.

Naming Consistency5/5

The single tool name follows a clear verb_noun pattern (search_cities_in_country), which is consistent and descriptive.

Tool Count3/5

A single tool feels thin for a geographic data server; while it serves a specific purpose, users might expect more capabilities like listing countries or city details.

Completeness1/5

The tool only allows searching cities by country name, missing essential operations like retrieving city details, listing countries, or reverse lookups, making the surface severely incomplete.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    F
    maintenance
    A geospatial MCP server that provides tools for geocoding, routing, elevation profiles, and spatial analysis. It enables AI agents to process GIS file formats like GeoJSON and Shapefiles while performing complex coordinate transformations and distance calculations.
    4
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    MCP server for spatial queries via the Terranode Geospatial API, enabling AI agents to perform point-in-polygon lookups, nearest feature search, distance calculations, and spatial joins.
    6
    31 npm
    MIT