地理空间分析工具

Agentic GIS 是一个将 CARTO 工作流转化为 MCP 工具的服务,用于分析纽约市2025年交通拥堵法规的影响,包括交通量、交通事故和空气质量等指标。

  • by CartoDB
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 CartoDB/sdsc-nyc-25-mcp-ai-agent

使用说明

代理型GIS:将CARTO工作流程转化为MCP工具

用于演示的工作坊材料 代理型GIS(地理信息系统)功能 使用MCP(模型上下文协议)工具和CARTO AI智能体来分析纽约市2025年交通拥堵法规的影响。

研讨会概览

这个实操工作坊将展示如何利用CARTO的地理空间工具,帮助Agent分析现实世界中的城市政策影响。参与者将学习如何:

  • 创建并部署地理空间分析工作流作为MCP工具
  • 将CARTO MCP服务器与外部AI代理集成
  • 创建CARTO AI代理,并为它们提供MCP工作流工具

用例

2025年1月,纽约市推出了一项拥堵定价法规,旨在减少交通拥堵及其对交通事故和空气污染的影响。本次研讨会将引导您构建一个分析框架,通过比较三个关键指标来衡量该法规的实际影响:

  • 交通流量法规实施前后的车辆总数
  • 交通事故碰撞频率和严重程度
  • 空气质量受影响区域的污染测量

该分析对比了纽约市任意用户定义感兴趣区域在法规实施前六个月(2024年6月至12月)与实施后六个月(2025年1月至6月)的数据。

研讨会结构

1. 引言(5分钟)

2. 作为MCP工具的工作流(25分钟)

学习如何在CARTO中创建地理空间分析工作流,并将其作为MCP工具公开,以便任何AI代理都可以使用。

你将构建的内容:

  • 扩展分析工作流程带状态轮询的全面异步分析
  • 紧凑型分析工作流程更快的同步版本,快速得出结果
  • 区域生成器工作流程将坐标对转换为WKT区域描述

关键概念:

  • 在CARTO中创建工作流
  • 将工作流配置为MCP工具
  • 处理异步操作
  • 性能优化策略

3. CARTO AI 代理(30分钟)

了解CARTO AI代理如何提供基于地图的界面进行地理空间分析。

你将学到的内容:

  • 设置CARTO AI代理
  • 为代理提供MCP工具的访问权限
  • 定义您代理的逻辑
  • 测试和优化代理
  • 可视化分析结果

先决条件

  • 具有访问工作流和构建器权限的CARTO账户
  • 对地理空间概念(坐标、多边形、WKT格式)的基本理解
  • 熟悉AI代理和MCP(有帮助但非必需)
  • 一个安装在您电脑上的AI代理命令行界面(CLI)。推荐使用Claude Code或Gemini CLI

入门指南

步骤1:设置您的CARTO环境

  1. 登录到您的CARTO账户
  2. 导航至“工作流”部分
  3. 确保您能通过CARTO数据仓库访问所需的纽约市数据集:
    • 交通流量数据 carto-demo-data.demo_tables.nyc_traffic_counts。
    • 交通事故/碰撞数据在 carto-demo-data.demo_tables.nyc_collisions。
    • 空气质量测量 carto-demo-data.demo_tables.nyc_air_quality。

步骤2:创建工作流

通过拖放文件来创建您的工作流程 /workflows 在您的CARTO账户中,此仓库的“工作流”部分。

扩展分析工作流(异步)

此工作流程执行全面的逐步分析,并异步运行。

主要特点:

  • 使用MCP工具实现带作业跟踪的异步执行 async_workflow_job_get_status_v1_0_0 和 async_workflow_job_get_results_v1_0_0 轮询状态并获取结果

区域生成器工作流程

将纬度/经度坐标转换为表示影响区域的WKT多边形字符串。

紧凑型分析工作流程(同步)

一个为速度优化的精简版,同步运行以更快获得结果。

主要特点:

  • 针对速度进行了优化
  • 同步执行(立即返回结果)
  • 非常适合互动演示

步骤3:将工作流作为MCP工具暴露出来

对于创建的每个工作流:

  1. 导航至工作流设置
  2. 选择“作为MCP工具公开”
  3. 检查并配置工具元数据:
    • 工具名称描述性名称(例如。, nyc_traffic_analysis_extended_version)
    • 描述清晰描述该工具的功能
    • 参数定义输入和输出参数
  4. 作为MCP工具启用

步骤4:配置CARTO MCP服务器

为了配置您的MCP客户端,您需要从您的CARTO账户中获取一些必要的信息:

  • 获取您的MCP服务器URL: 在您的 CARTO 工作区中,前往 开发者 并找到 工作流API与MCP服务器
  • 使用MCP工具授权创建API访问令牌: 在 开发者 首选 凭证;资格;资历 并点击 + 创建新(项目/文件/等)

在(某处)查找更详细的说明 这份文件/文档。

在您的AI代理配置中添加CARTO MCP服务器以访问相关工具:

通用配置 (兼容Claude和Gemini CLI)

{
"mcpServers": {
        "carto-sdsc-demo": {
          "type": "http",
          "url": "https://gcp-us-east1.api.carto.com/mcp/<your_org_id>>",
          "headers": {
            "Authorization": "Bearer<your_api_access_token>"
          }
        }
      }
}

Gemini 命令行界面(CLI)

$ gemini mcp add carto-mcp-server https://your-carto-instance.com/mcp/<org_id> -t http -H 'Authorization: Bearer <api_access_token>'

克劳德·科德

$ claude mcp add carto-mcp-server https://your-carto-instance.com/mcp/<org_id> -t http -H 'Authorization: Bearer <api_access_token>'

第五步:使用外部AI代理进行测试

一旦CARTO MCP服务器配置并连接成功,请尝试向您的AI代理提出以下问题:

  • “曼哈顿百老汇和东休斯敦街周边的拥堵管制措施产生了什么效果?”
  • “分析2025年1月新规实施后时代广场附近交通的变化”
  • “比较金融区监管实施前后的空气质量”

步骤6:设置CARTO AI代理

既然您已经使用外部AI代理测试了您的MCP工具,接下来让我们创建一个CARTO AI代理,以实现一体化的地图体验。

1. 在您的组织中启用CARTO AI

第一步是在您的组织中启用CARTO AI。为此,请导航至 Settings > CARTO AI 并将其启用。

2. 创建一个地图来托管您的代理

  1. 前往 人工智能代理 在您的CARTO工作区中的部分
    • 在这里,您将看到您CARTO组织中所有可用的AI代理
  2. 点击 创建AI代理
  3. 选择 + 新地图 (因为我们目前还没有涵盖此用例的现有地图)

3. 添加数据源并准备图层

在你的地图中,提供一个标题 Analyzing the impact of NYC Congestion Pricing Program并添加位于以下位置的纽约市(NYC)数据源 CARTO Data Warehouse > demo data > demo_tables:

  • 碰撞纽约市交通事故数据
  • 空气质量纽约市空气质量测量数据
  • 拥堵纽约市交通流量数据
  • 纽约市拥堵区域纽约市拥堵定价区边界

按照需求对各图层进行样式设置(例如,通过……来设置碰撞样式) carto_point_density (以便更好地可视化)

4. 创建并配置您的AI代理

a) 导航至 人工智能代理 在你的地图中(或:在你的地图上)

b) 点击 创建一个代理此时,会显示代理配置界面,以便您配置您的AI代理。

c) 提供 用例 描述你的代理所做的事情:

Analyze NYC's congestion pricing regulation impact (launched Jan 5, 2025). Compare traffic volume, accidents, and air quality before (June-Dec 2024) vs after (Jan-June 2025). Quantify changes in all three metrics and create a data-driven narrative showing the regulation's spatial effects.

d) 选择合适的 模型

  • 导航至 模型 部分;章节
  • CARTO 使用 CARTO 管理的模型 默认情况下,但您也可以在CARTO AI设置中配置您自己的模型。
  • 在我们的情况下,将选择 Gemini-2.5-Pro

e) 添加 MCP工具 我们为您的代理创建了之前的步骤

您的代理可以访问 核心工具 默认情况下。现在添加自定义 工作流作为MCP工具 您在步骤2-3中创建的:

  • 点击 添加工具 在代理配置中
  • 在组织中搜索可用的MCP工具
  • 添加这些工具:
    • create_area_from_coordinates
    • nyc_traffic_analysis_compact
  • 检查每个工具的元数据(描述、输入参数、输出定义)

f) 提供 说明/指示

为您的代理定义分析工作流程和行为:

  • 导航至 说明/指示 部分;章节
  • 从(某处)复制内容 agent/instructions.md
  • 粘贴到代理配置中

说明书中定义了沟通风格、针对不同输入场景的分析工作流程、结果展示方式以及缺失数据的处理方法。

g) 完成后,点击 创建代理

5. 测试您的代理

现在你可以开始测试你的代理了 编辑模式 在预览版上启用它并发布您的地图之前,请尝试以下查询:

  • “我画出的区域交通会受到什么影响?”
  • “向我展示当前地图视图中的拥堵影响”
  • “时代广场的交通模式发生了怎样的变化?”
  • “分析帝国大厦周边的交通变化”

见 agent/test-prompts.md 用于更多测试查询

6. 完成并分享

打开 AI代理配置 自定义开场白信息和对话引导语,帮助用户开始与您的客服代表交流。

添加开场白和对话引导语:

自定义问候语,并提供建议的提示来引导用户。这有助于他们了解客服代表能够提供的帮助,并为他们提供便捷的开始点。

看 agent/intro-message.md 用于示例介绍信息和对话开场白

为观众启用:

首选 地图设置 并启用 地图上的AI代理 以便观众可以与智能体进行互动。

预览并分享:

测试中 预览模式 了解最终用户的体验。

一旦你对智能体的工作方式感到满意,就可以分享这张地图:

  • 特定用户与团队成员个人分享
  • 您的组织在您的CARTO组织中让所有人都可以访问它
  • 公众使地图公开可访问

您的CARTO AI代理现已准备好使用!

在这个例子中,我们询问了“帝国大厦周边的交通情况”。你可以看到代理的分析结果以及所考虑的兴趣区域,这些都以新的人工智能生成图层的形式展示在地图上。

额外资源

支持

对于问题或疑问:

  • 在研讨会期间:向讲师提问
  • 研讨会结束后:请联系CARTO支持团队:support@carto.com

致谢/鸣谢

由CARTO产品管理团队的Ana Manzanares和Ernesto Martínez开发的研讨会。

数据来源:纽约市开放数据平台,[其他来源]