地理空间MCP服务器与AI助手

一个强大的模型上下文协议(MCP)服务器,用于高级地理空间分析、3D地形可视化和自主无人机任务规划,整合实时地理空间工具与开源LLM驱动的AI助手。

  • by gmossy
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 gmossy/geospatial_mcp_server_experiments

使用说明

🌍 地理空间MCP服务器和AI助手

作者 格伦·莫西 | 领英 许可证: 麻省理工学院

技术栈:

一个强大的 模型上下文协议(MCP) 该服务器专为高级地理空间分析、3D地形可视化和自主无人机任务规划而设计。该项目将实时地理空间工具与由开源LLM支持的AI助手集成在一起。

(上图:无人机在地形上飞行路径的3D可视化)

✨ 主要特点

🎮 任务控制中心

  • 轮辋调查 –高海拔峡谷边缘调查。
  • 大峡谷之旅 –穿过峡谷的风景路线。
  • 河跑 -低空沿河飞行。
  • 无人机速度 –可调速度滑块,带飞行时间估计。
  • 视线 –塔楼和观察哨的连接检查。
  • 三维可视化 –交互式地形和路径渲染。

🚀 建议的UI升级

  • 任务控制 –未来的增强功能将提供一个直观的仪表板,用于规划、可视化和分析无人机任务(Rim Survey、Grand Canyon Tour、River Run等)。此次升级将包括速度控制、飞行时间估计和更丰富的3D可视化。

🤖 AI地理空间助理

  • 自然语言接口:使用以下模型与您的地理空间数据聊天 Qwen/Qwen2.5-72B-Instruct (通过拥抱脸)。
  • 工具使用:人工智能可以自主调用工具来回答复杂的问题:
    • “a的塔能看到B的漫游车吗?”
    • “为该区域生成热图。”
    • “规划从X到Y的路线。”
  • 视觉响应:助手可以直接在聊天中生成和显示地形热图。

🛠️ 地理空间工具套件

  • 海拔:查询任何坐标的高分辨率高程数据(DTED/SRTM)。
  • 视线:计算地球上任意两点之间的能见度。
  • 热图:渲染视觉高程梯度以了解情况。
  • 距离和MGRS:用于距离计算和坐标转换的实用程序(Lat/Lon<->MGRS)。

🚀 入门指南

先决条件

  • 码头工人 (推荐)或Python 3.11+
  • 拥抱脸API代币 (免费)用于AI助手。

快速入门(Docker)

  1. 克隆存储库:

    git clone https://github.com/gmossy/geo-mcp-server.git
    cd geo-mcp-server
    
  2. 配置环境: 创建一个 .env 根目录中的文件(Git会忽略此文件)。添加您的拥抱脸API代币:

    HF_TOKEN=hf_YourHuggingFaceTokenHere
    

    这 .env 该文件允许应用程序在运行时加载令牌,而无需硬编码凭据。

  3. 构建并运行:

    make build
    make run
    
  4. 访问仪表板: 打开 http://localhost:7860 在您的浏览器中。

地方发展

选项A:标准Pip

  1. 再进行:

    pip install -r requirements.txt
    
  2. 运行服务器:

    ./start.sh
    

选项B:使用 uv (推荐用于速度)

紫外线 是一个非常快的Python包安装程序和解析器。

  1. 安装uv (如果未安装):

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  2. 创建虚拟环境:

    uv venv
    source .venv/bin/activate
    
  3. 再进行:

    uv pip install -r requirements.txt
    
  4. 运行服务器:

    ./start.sh
    

📂 项目结构

  • gradio_dashboard.py:主UI应用程序(Gradio),具有仪表板、人工智能助手和任务控制功能。
  • server.py:实现MCP协议和地理空间逻辑的核心FastAPI服务器。
  • bridge.py:用于连接此服务器的适配器 克劳德桌面版 或其他MCP客户端。
  • dted/:用于存储高程数据块的目录(DTED/SRTM)。
  • sample_routes/:定义任务路径的GeoJSON文件。
  • scripts/:用于数据下载和测试的辅助工具。

🔌 连接到克劳德桌面

您可以将此服务器用作Claude Desktop的工具提供者。

  1. 确保服务器正在运行。
  2. 配置Claude Desktop以使用 bridge.py:
    "geo-server": {
      "command": "python",
      "args": ["/absolute/path/to/geo-mcp-server/bridge.py"]
    }
    

📸 截图

任务控制

任务控制选项卡显示轮辋测量任务可视化和报告。

AI助手

(占位符:AI助手生成热图的屏幕截图)

📄 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

🛠️ 构建信息

  • 谷歌反重力 版本:1.11.5
  • VSCode OSS 版本:1.104.0
  • 提交:afdb915a7890576374cec17dccf6d91249170a86
  • 日期时间:2025-10-20:17:11:11.677Z
  • 电子: 37.3.1
  • 铬: 138.0.7204.235
  • Node.js: 22.18.0
  • V8:13.8.258.31-电子。0
  • 操作系统:达尔文x64 24.6.0
  • 语言服务器CL: 834602842

由Glenn Mossy创建