mcpField
G
geomelon-mcp

geomelon-mcp

本地服务
github.com/930m310n地图与出行115 周前更新

关于 geomelon-mcp

geomelon-mcp 将 MCP 客户端连接到 Geomelon 地理 API,以查询城市、国家、地区和语言数据。支持 stdio 与远程 HTTP;无密钥模式仅提供城市自动补全。

主要功能

  1. 01搜索城市并获取详情
  2. 02浏览国家和地区
  3. 03查询语言信息
  4. 04查找附近城市及距离
  5. 05支持 stdio 和无状态 HTTP
  6. 06提供免密钥城市自动补全

适用场景

  1. 01按国家或地区查找城市
  2. 02比较城市及其间距
  3. 03获取国家的地区和主要城市

MCP 相关

将 Geomelon 地理 API 的操作作为工具提供给 MCP 客户端。支持 stdio 和 Streamable HTTP;未配置 API 密钥时仅开放城市自动补全。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"930m310n-geomelon": {
"command": "npx",
"args": [
"-y",
"geomelon-mcp"
],
"env": {
"GEOMELON_API_KEY": "<GEOMELON_API_KEY>",
"PORT": "<PORT>"
}
}
}
}
启动命令npx -y geomelon-mcp
需要配置的环境变量
GEOMELON_API_KEY密钥Your RapidAPI key for Geomelon. Optional: without it the server runs in keyless demo mode, exposing only the free search_cities_autocomplete tool.
PORT密钥Port to run HTTP MCP on

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmgeomelon-mcp1.1.1

工具

22

收录的工具列表 · 更新于 2 周前

参数类型必填说明
prefixstring是用户输入的城市名称前缀
countrystring是小写 ISO 3166-1 alpha-2 国家代码(例如 "es"、"jp")
languagestring是用于搜索的 BCP 47 语言代码(例如 "es"、"ja")

详细介绍

geomelon-mcp

适用于 Geomelon 地理 API 的 MCP 服务。它将城市、国家、地区和语言作为工具提供,任何兼容 MCP 的 AI 客户端都可以调用这些工具。

想了解其他集成方式?请查看 geomelon.dev/libraries 上的所有官方库。

其中包含两种传输方式:

二进制文件传输方式使用场景
geomelon-mcpstdioClaude Desktop、Cursor、Cline、Continue
geomelon-mcp-httpHTTP(Streamable)Claude Code、远程 / 托管服务

要求


无密钥演示模式

没有 GEOMELON_API_KEY?仍可运行服务 — 启动后只提供 search_cities_autocomplete 工具,该工具由免费的 oneshot 主机提供支持,无需注册。其他所有工具都需要密钥。这是订阅 RapidAPI 之前试用服务的最快方式。

零配置试用

Geomelon 还运行着这个无密钥演示版的公共托管实例 — 无需 npx,也无需本地进程。将任何支持远程 MCP 的客户端(Claude 网页版 / 桌面版连接器、ChatGPT 连接器、MCP Inspector 等)指向:

https://mcp.geomelon.dev/mcp

它只提供 search_cities_autocomplete,与不提供 API 密钥时自行运行服务相同。如需使用完整的 22 个工具,请使用你的 RapidAPI 密钥运行自己的实例(如下)。


Claude Code(HTTP)

在你将运行服务的目录中创建 .env 文件:

cp .env.example .env
# then edit .env and set GEOMELON_API_KEY

启动服务(dotenv 会自动加载 .env):

npx geomelon-mcp-http

将其注册到 Claude Code:

claude mcp add --transport http geomelon http://localhost:3000/mcp

验证连接状态:

claude mcp list

使用 Claude Code 时,服务必须保持运行。如需使用其他端口,请设置 PORT=your_port,并相应更新 claude mcp add 命令中的 URL。


Claude Desktop(stdio)

将以下内容添加到 ~/Library/Application Support/Claude/claude_desktop_config.json:

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

保存后重启 Claude Desktop。


Cursor / Windsurf / Cline(stdio)

将以下内容添加到编辑器的 MCP 配置中:

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

远程 / 托管 HTTP 服务

在服务器上创建 .env 文件:

cp .env.example .env
# set GEOMELON_API_KEY and PORT in .env

启动服务:

npx geomelon-mcp-http

然后使用 http://your-host:3000/mcp 作为 URL,在任意 MCP 客户端中注册该服务。

HTTP 传输是无状态的 — 每个请求彼此独立,无需管理会话。由于此传输方式也需要能被基于浏览器的远程 MCP 客户端访问,因此 CORS 对所有来源开放(Access-Control-Allow-Origin: *)。GET /(或 /health)会返回一个简短的 JSON 状态对象 — 可用于运行时间检查 — 其中会报告实例是否已配置密钥("mode": "full" 或 "mode": "keyless-demo")。


可用工具

城市
工具描述
search_cities按名称、国家代码、地区、人口范围和排序方式搜索
get_city按 UUID 获取城市的完整详情
get_city_translations按 UUID 获取城市名称的所有译名
get_city_settlement_types按 UUID 获取城市的定居点类型分类
cities_by_coordinates_closest获取距离某个经纬度最近的城市,按距离排序
cities_by_coordinates_largest获取某个经纬度附近最大的城市,按人口排序
cities_distance计算两座城市之间的距离(公里)
国家
工具描述
list_countries列出国家,可按名称前缀或电话区号筛选
get_country按 UUID 获取国家的完整详情(包括译名和地区)
get_country_translations按 UUID 获取国家名称的译名
get_country_regions按 UUID 获取某个国家的所有行政区划
地区
工具描述
list_regions列出地区,可按国家 UUID 筛选
get_region根据 UUID 获取地区的完整详情
get_region_translations根据 UUID 获取地区名称的翻译
语言
工具描述
list_languages列出数据库中的所有语言
get_language根据 UUID 获取语言详情
单次前缀搜索(免费,无需 API 密钥)
工具描述
search_cities_autocomplete按国家范围和语言筛选的城市名称前缀搜索,数据由预构建的静态文件提供。**这是无密钥演示模式中唯一可用的工具。**在使用密钥的模式下也可用——这是最快的搜索方式。

请参阅 geomelon.dev/free-city-autocomplete-api,了解支持的国家/语言组合和底层 HTTP 端点。


组合工具

这些工具会在内部串联多次 API 调用,以减少往返次数。

工具描述
find_cities_near_city给定城市 UUID,按距离或人口排序查找附近的城市
city_context一次调用即可获取城市及其完整的国家和地区详情
country_overview获取一个国家(按 UUID 或名称查找)、该国的地区,以及按人口排名靠前的城市
compare_cities一次调用即可获取两个城市及其间的距离
search_cities_in_country使用国家名称而非 ISO 代码搜索城市

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。