GIS MCP:让智能体做真正的空间分析
把 Shapely、GeoPandas、PyProj、Rasterio 等库封装成 90 多个工具:缓冲区、叠加、坐标转换、栅格和空间统计,交给库算。
项目与安装文档
查看项目https://github.com/mahdin75/gis-mcp
问大模型“这个公园 500 米范围内有几所学校”,它很可能凭感觉报个数,因为它不会真的去做缓冲区和相交运算。GIS MCP 把 Python 里成熟的地理空间库接给智能体:模型负责拆解问题,几何、投影和栅格运算交给 Shapely、PyProj、Rasterio 去算。截至 2026-10-06 约 200 star,当前版本 0.15.0,仍标为 Beta。
能做什么
- 矢量几何:
buffer、intersection、union、voronoi、make_valid等 29 个 Shapely 工具,量长度、面积、质心都有。 - 坐标与大地测量:
transform_coordinates、project_geometry、get_utm_zone,以及按椭球计算距离和面积的calculate_geodetic_distance、calculate_geodetic_area。 - 矢量数据表:GeoPandas 读写文件,做空间连接
sjoin_gpd、叠加overlay_gpd、按属性融合dissolve_gpd。 - 栅格处理:裁剪、重采样、重投影,计算
compute_ndvi,做zonal_statistics分区统计。 - 空间统计和取数:PySAL 做空间自相关和聚类;另有行政区划、气候、生态、土地覆盖、卫星影像等数据获取工具,可以输出静态图或交互式网页地图。
适合谁
- 做城市规划、环境评估,想用自然语言跑选址或邻近分析的 GIS 从业者。
- 用 LangChain 或 OpenAI Agents 搭地理空间智能体的开发者,项目文档里有现成示例。
- 研究生和科研人员,需要快速算 NDVI、做分区统计又不想每次写脚本。
接入方式
需要 Python 3.10 以上。按 README 用 uv 建虚拟环境后安装:
uv pip install gis-mcp
gis-mcp
默认是 stdio 模式。客户端配置指向虚拟环境里的可执行文件:
{
"mcpServers": {
"gis-mcp": {
"command": "/home/YourUsername/.venv/bin/gis-mcp",
"args": []
}
}
}
要交互地图功能就装 gis-mcp[visualize];也提供 Docker 镜像,HTTP 模式监听 9010 端口。
编辑点评
地图类 MCP 大多是查询某个地图服务的 API,GIS MCP 是少数做“计算”的:它不提供 POI 数据,而是让智能体在你自己的文件和图层上做分析,和 Google Maps 一类服务器正好互补。工具数量多是优点也是负担,全部注册会占不少上下文,用前最好想清楚要哪几类。HTTP 模式自带文件上传下载接口,暴露到公网前要加鉴权。许可证为 MIT。