MCP-Geo

MCP-Geo

site icon
2025.01.21 16
Python地理编码服务反向地理编码距离计算位置服务
MCP-Geo 是一个基于 GeoPY 的地理编码 MCP 服务器,提供多种地理编码和反向地理编码工具,帮助用户处理地址和坐标之间的转换、距离计算等任务。
View on GitHub

Overview

基本能力

产品定位

MCP-Geo 是一个地理编码服务,主要用于处理地址和坐标之间的转换、距离计算等地理信息相关任务。

核心功能

  1. 地理编码工具
  2. geocode_location:将地址或地点名称转换为经纬度和格式化地址。
  3. reverse_geocode:将经纬度转换为最近的地址。
  4. geocode_with_details:提供更详细的地理编码信息,如边界框等。
  5. geocode_multiple_locations:批量处理多个地址的地理编码。
  6. reverse_geocode_multiple_locations:批量处理多个经纬度的反向地理编码。
  7. 距离计算工具
  8. distance_between_addresses:计算两个地址之间的距离。
  9. distance_between_coords:计算两个经纬度对之间的距离。

适用场景

  1. 地图应用开发:如地址搜索、位置标记等。
  2. 物流和导航:计算两点之间的距离。
  3. 数据分析:批量处理地理信息数据。

工具列表

  1. geocode_location:地址转经纬度和格式化地址。
  2. reverse_geocode:经纬度转地址。
  3. geocode_with_details:提供详细地理编码信息。
  4. geocode_multiple_locations:批量地理编码。
  5. reverse_geocode_multiple_locations:批量反向地理编码。
  6. distance_between_addresses:计算地址间距离。
  7. distance_between_coords:计算经纬度间距离。

常见问题解答

  1. 依赖安装问题:确保 Python 3.6+ 和 fastmcpgeoPy 已安装。
  2. 环境变量配置:根据使用的地理编码服务提供商配置相应的环境变量。
  3. 速率限制:为避免服务配额限制,工具已内置速率限制。

使用教程

使用依赖

安装所有依赖:

uv sync

安装教程

  1. 克隆仓库:
git clone https://github.com/webcoderz/MCP-Geo.git
cd MCP-Geo
  1. 安装选项:
  2. Claude Desktop
fastmcp install geo.py --name "MCP Geo"
  • 其他环境:在配置文件中添加以下内容:
{
    "mcp-geo": {
        "command": "uv",
        "args": [
          "--directory",
          "MCP-Geo",
          "run",
          "geo.py"
        ],
        "env": {
        "NOMINATIM_URL": "${NOMINATIM_URL}",
        "SCHEME": "http",
        "GEOCODER_PROVIDER": "nominatim"
        }
    }
}

调试方式

  1. 确保环境变量正确配置。
  2. 运行工具并检查输出结果。
  3. 查看日志文件以排查错误。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。