O

OSM-MCP地图集成工具

@wiseman/osm-mcp
0 Stars 99 次浏览 wiseman 更新于 2026-08-23

为MCP提供OpenStreetMap集成,允许用户使用添加标记、多边形和控制地图视图的工具查询和可视化地图数据。

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "OSM PostgreSQL Server": {
      "args": [
        "run",
        "--env-file",
        ".env",
        "--with",
        "mcp[cli]",
        "--with",
        "psycopg2",
        "--with-editable",
        "/Users/wiseman/src/mcp-osm",
        "--directory",
        "/Users/wiseman/src/mcp-osm",
        "mcp",
        "run",
        "mcp.py"
      ],
      "command": "/Users/wiseman/.local/bin/uv"
    }
  }
}

服务介绍

MCP-OSM: MCP 的 OpenStreetMap 集成

此包为 MCP 提供了 OpenStreetMap 集成,允许用户通过 MCP 接口查询和可视化地图数据。

MCP-OSM 截图

功能

  • 使用 Leaflet 和 OpenStreetMap 的基于 Web 的地图查看器
  • 通过服务器发送事件 (SSE) 实现的服务器到客户端通信
  • 用于地图控制的 MCP 工具(添加标记、多边形、设置视图、获取视图)
  • PostgreSQL/PostGIS 查询接口以处理 OpenStreetMap 数据

安装

这是我的 claude_desktop_config.json:

{
  "mcpServers": {
    "OSM PostgreSQL Server": {
      "command": "/Users/wiseman/.local/bin/uv",
      "args": [
        "run",
        "--env-file",
        ".env",
        "--with",
        "mcp[cli]",
        "--with",
        "psycopg2",
        "--with-editable",
        "/Users/wiseman/src/mcp-osm",
        "--directory",
        "/Users/wiseman/src/mcp-osm",
        "mcp",
        "run",
        "mcp.py"
      ]
    }
  }
}

当 MCP 服务器启动时,它还会在 http://localhost:8889/ 启动一个包含地图界面的 Web 服务器。

环境变量

可以使用以下环境变量来配置 MCP:

  • FLASK_HOST - Flask 服务器的主机地址(默认:127.0.0.1)
  • FLASK_PORT - Flask 服务器的端口(默认:8889)
  • PGHOST - PostgreSQL 主机地址(默认:localhost)
  • PGPORT - PostgreSQL 端口(默认:5432)
  • PGDB - PostgreSQL 数据库名称(默认:osm)
  • PGUSER - PostgreSQL 用户名(默认:postgres)
  • PGPASSWORD - PostgreSQL 密码(默认:postgres)

MCP 工具

提供以下 MCP 工具:

  • get_map_view - 获取当前地图视图
  • set_map_view - 将地图视图设置为特定坐标或边界
  • set_map_title - 设置显示在地图右下角的标题
  • add_map_marker - 在特定坐标处添加标记
  • add_map_line - 添加由一组坐标定义的线
  • add_map_polygon - 添加由一组坐标定义的多边形
  • query_osm_postgres - 对 OpenStreetMap 数据库执行 SQL 查询