Token导航 LogoToken导航TokenDH.com
Geotab Fleet MCP logo
数据服务stdio官方级别未说明来源级核验

Geotab Fleet MCP

MCP Server

基于Geotab和Google Maps的AI对话式车队管理平台,提供实时数据分析、车辆追踪、智能报告生成等功能,适用于车队运营管理场景。

工具数

20

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude数据分析Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

harmsolo13

提供方

harmsolo13

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -e .

详细介绍

GeotabVibe——舰队指挥中心

基于Geotab+谷歌地图+Gemini AI+Ace AI的对话式车队管理

和你的舰队谈谈。用简单的英语提问,从您的Geotab远程信息处理数据中获得实时答案——通过实时谷歌地图仪表板、人工智能分析、动画行程回放、语音控制和一键式高管报告。

2026年Geotab Vibe编码竞赛.

问题

车队经理需要处理多个仪表板、报告和界面来回答简单的问题: *“哪辆卡车的燃油效率最差?”*, *“是否有任何激活的故障代码?”*, *“我们的司机本周的安全得分如何?”*

在Geotab Marketplace的776+个解决方案中, 提供对话式AI界面。车队经理们被困在点击菜单上,而不仅仅是询问。

解决方案

一个全栈舰队指挥中心,结合了:

  • 20个MCP工具 任何人工智能助手(Claude、GPT等)都可以通过自然语言查询和管理车队数据
  • 实时谷歌地图仪表板 具有实时车辆跟踪、热图和地理围栏覆盖
  • Gemini AI聊天 使用函数调用(创建区域、发送消息、查询异常、分析数据)
  • Geotab Ace AI集成 获取舰队本土见解
  • 行程回放 带有GPS面包屑动画、速度彩色路径和遥测HUD
  • 执行报告 由Gemini+Ace AI生成,可导出为HTML/PDF
  • 语音控制 通过Web Speech API-触发演示,提问,通过语音控制仪表板
  • 自动演示 配有TTS旁白(Gemini Native Audio)——3分钟导览,展示每个功能
  • SQLite载体富集 用于演示级车队数据
  • 持久SQLite响应缓存 使用DB-first体系结构-对缓存数据的API调用为零
You: "Show me all vehicles in my fleet"
AI:  Here are your 50 vehicles — 15 vans, 12 pickups, 8 sedans, 8 SUVs, 4 EVs, 3 heavy trucks...

You: "Which one has the worst fuel efficiency this month?"
AI:  Unit 48 — Hino 195 averaged 4.2 MPG, significantly below fleet average of 6.8 MPG.

You: "Create a geofence around 123 Main St, Toronto"
AI:  Geocoded → Created zone 'Main St Depot' with 500m radius. ✓

You: "Generate a fleet report"
AI:  [Opens executive report with Gemini analysis + Ace AI insights — Print/Save HTML/Save PDF]

建筑

User ←→ Claude / Any MCP Client
              |
         MCP Server (FastMCP, stdio) — 20 tools
              |
    +---------+---------+----------+-----------+
    |         |         |          |           |
 Geotab   OData DC   DuckDB   Gemini AI   Google
  API     (KPIs)     Cache    (analysis)   Geocoding
    |                                        |
    +--- Flask Web Dashboard (port 5030) ---+
         Google Maps JS API
         Gemini Chat + Function Calling
         Gemini Native Audio (TTS)
         Geotab Ace AI
         SQLite Vehicle Enrichment
         SQLite Response Cache (DB-first)

特性

仪表板用户界面

  • 实时车辆标记 在谷歌地图上显示状态颜色(绿色=移动,灰色=停止,红色=故障,深色=离线)
  • 自动刷新 每10秒获取一批位置(所有车辆调用1个API)
  • 车辆详细信息面板 --单击驾驶员、部门、品牌/型号、VIN、里程表、发动机小时数、故障、行程的任何标记
  • 车辆搜索 --按姓名、司机、部门或品牌筛选
  • 车队KPI卡 --总距离、行程、怠速百分比、行驶小时数、最高速度、异常
  • 土工格栅覆盖层 根据多边形数据估计半径渲染
  • 黑暗/光明主题 玻璃造型

地图控件

  • 热力图 --整个车队作业区域的活动密度可视化(车辆位置约1000个合成点)
  • 锁定视图 --防止数据刷新时自动平移/缩放,以便您可以检查特定区域
  • 系统处于单机运行模式 --隐藏除所选车辆外的所有标记,以便进行集中跟踪
  • 适合所有 --一键缩放显示整个车队

旅行回放

  • GPS面包屑动画 带有播放/暂停/速度控制
  • 速度彩色路径 --绿色(缓慢)、黄色(正常)、红色(快速)、灰色(停止)
  • 实时遥测HUD --速度、加速度、距离、经过时间、平均/最大速度
  • 滑块擦洗 --跳到旅途中的任何一点

舰队报告

  • 执行报告 由Gemini AI+Geotab Ace AI生成
  • 可调整大小的滑出式面板 带拖动手柄(报告+指南选项卡)
  • 出口:打印,另存为HTML(带有嵌入式样式的独立文件),另存成PDF(通过浏览器打印)
  • 弹出窗口:在独立浏览器选项卡中打开报告或指南
  • 章节:执行摘要、车队概述、表现最佳者、异常、Ace AI见解、建议

AI聊天(车队助理)

  • 双子座人工智能 使用函数调用--跨12个工具的自然语言舰队查询
  • 动作命令:创建地理围栏,向车辆发送短信,查询异常
  • 语音输入 通过网络语音API和临时转录
  • 文本到语音 用于AI响应(浏览器语音合成)
  • 会话历史记录 具有清除/重置功能

MCP服务器

  • 20工具 将完整的Geotab车队数据暴露给任何兼容MCP的AI助手
  • 适用于Claude Desktop、Claude Code或任何MCP客户端
  • 通过任何AI界面的自然语言实现车队管理
  • 与仪表板分开——可以通过stdio独立运行

自动演示

  • 3分钟导游 用TTS旁白展示每个功能
  • Gemini原生音频 (Live API),用于具有持久MP3缓存的旁白语音
  • 语音触发聊天查询 --麦克风按钮发出红色脉冲,文本打字机输入,然后发送
  • 系统处于单机运行模式 行程回放期间的集成(之前打开,之后关闭)
  • 触发器:在聊天中说“播放演示”,键入或使用 ?demo=1 URL参数

Geotab Ace AI

  • 直接对车队数据集进行自然语言查询
  • 整合到高管报告中,以获得车队本地见解
  • 独立 /api/ace 端点

车辆浓缩层

  • SQLite数据库 (fleet_enrichment.db)将真实的机队数据叠加到演示数据集上
  • 50辆加拿大混合车队:15辆面包车、12辆皮卡、8辆轿车、8辆SUV、4辆电动汽车、3辆重型卡车
  • 驾驶员姓名、部门(交付/服务/销售/行政/现场运营)、里程表、发动机小时数、VIN
  • 切换开/关 通过 /api/enrichment/toggle -清除API仅后退
  • API实时字段(GPS、速度、状态)始终优先

缓存(DB优先架构)

  • 持久SQLite响应缓存 -所有API响应同时写入内存+SQLite
  • DB首次启动 -从SQLite缓存热加载,第一页加载的API调用为零
  • 基于TTL的内存缓存 在所有API路线上(车辆60秒,位置30秒,行程5分钟,区域5分钟,故障2分钟)
  • 陈旧的发球回退 -当API速率受限或不可用时返回缓存的数据
  • 批量位置提取 -1 API要求所有车辆,而不是N+1
  • ?refresh=1 查询参数以强制绕过内存和数据库缓存

API呼叫跟踪器

  • SQLite数据库 (api_tracker.db)记录每个外部API调用(Geotab、Gemini、Ace)
  • 跟踪服务、方法、状态、响应时间(毫秒)、错误和缓存命中率
  • /api/tracker 端点返回使用情况摘要(按服务/状态分组)+最近的调用
  • 支持 ?hours=N?limit=N 用于筛选的查询参数

MCP工具(20)

类别工具描述
效用test_connection验证API连接
车队概述get_fleet_vehicles列出所有带有状态/VIN/里程表的车辆
get_vehicle_details在一辆车上深潜
get_fleet_drivers列出所有驱动程序
get_zones列出所有地理围栏
实时get_vehicle_location当前GPS+速度
get_active_faults整个车队的激活DTC
历史get_trip_history带距离/持续时间/速度的行程
get_fuel_analysis燃料交易和成本
get_exception_events违反规则
关键绩效指标get_safety_scores通过数据连接器实现驾驶员安全
get_fleet_kpis通过数据连接器查看每日车队关键绩效指标
行动create_geofence根据坐标创建分区
send_message向驾驶室设备发送短信
分析query_fleet_dataSQL覆盖缓存的DuckDB数据
list_cached_datasets显示缓存表
export_data导出为JSON/CSV
谷歌人工智能gemini_analyze将车队数据分析委托给Gemini AI
谷歌地图geocode_address将地址转换为GPS坐标
create_geofence_from_address从街道地址拍摄地理围栏

仪表板API路线(21)

方法路线描述
得到/主仪表板页面
得到/guide独立用户指南页面
得到/api/guide用户指南内容(降价)
得到/api/vehicles所有配备GPS定位功能的车辆(已增强)
得到/api/vehicle//location单车实时GPS
得到/api/vehicle//trips带路线点的旅行历史
得到/api/vehicle//trip-replay用于动画回放的GPS日志记录
得到/api/zones所有具有估计半径的地理围栏区域
得到/api/faults激活的故障代码
得到/api/status连接状态+车队摘要
得到/api/fleet-kpis汇总车队关键绩效指标
得到/api/heatmap-data活动热图点
职位/api/report生成执行报告(Gemini+Ace AI)
职位/api/ace问Geotab Ace AI一个问题
职位/api/chatGemini AI聊天功能调用
职位/api/chat/clear清除聊天会话
得到/api/trackerAPI调用使用摘要+最近的调用
得到/api/enrichment/status检查浓缩切换状态
职位/api/enrichment/toggle打开/关闭车辆浓缩功能
职位/api/tts通过Gemini Native Audio实现文本转语音
职位/api/tts/warmup预先录制所有演示旁白

快速开始

1.安装

git clone https://github.com/harmsolo13/geotab-fleet-mcp.git
cd geotab-fleet-mcp
pip install -e .

2.配置凭据

cp .env.example .env
# Edit .env with your credentials:
# GEOTAB_DATABASE=your_database
# GEOTAB_USERNAME=your_email@example.com
# GEOTAB_PASSWORD=your_password
# GEOTAB_SERVER=my.geotab.com
# GEMINI_API_KEY=your_gemini_key
# GOOGLE_MAPS_API_KEY=your_maps_key

需要API密钥:

3.运行MCP服务器

# With Claude Desktop — add to claude_desktop_config.json:
{
  "mcpServers": {
    "geotab-fleet": {
      "command": "python",
      "args": ["-m", "geotab_mcp.server"],
      "cwd": "/path/to/geotab-fleet-mcp/src"
    }
  }
}

# With Claude Code
claude mcp add geotab-fleet -- python -m geotab_mcp.server

# With MCP inspector
mcp dev src/geotab_mcp/server.py

4.运行仪表板

# Start the Google Maps dashboard on port 5030
python -m geotab_mcp.dashboard

# Or use the CLI entry point
geotab-dashboard

打开 http://localhost:5030 查看实时舰队地图。

5.运行演示

打开 http://localhost:5030/?demo=1 --或者打开聊天窗口,说“播放演示”,启动一个全自动的3分钟解说之旅。

技术栈

  • Python 3.10+ --后端
  • FastMCP (mcp)--MCP服务器框架
  • mygeotab --官方Geotab Python SDK
  • httpx --OData+谷歌API的HTTP客户端
  • DuckDB --嵌入式分析缓存
  • SQLite -车辆富集+响应缓存+API跟踪器
  • 烧瓶 --Web仪表板后端
  • 谷歌地图JavaScript API --带AdvancedMarkerElement的实时车队地图
  • 谷歌地图热点图层 --活动密度可视化
  • 谷歌地理编码API --地址到坐标
  • 谷歌双子座人工智能 (google-genai)--车队分析+功能调用聊天
  • 谷歌Gemini原生音频 (API直播)-带MP3缓存的TTS解说
  • Geotab Ace AI --舰队原生自然语言分析
  • 网络语音API --语音输入+浏览器TTS
  • 派丹蒂克 --数据验证
  • python dotenv --环境配置

文件结构

geotab-fleet-mcp/
├── src/geotab_mcp/
│   ├── server.py          # MCP server — 20 tools (549 lines)
│   ├── dashboard.py        # Flask web dashboard — 21 API routes (1236 lines)
│   ├── geotab_client.py    # Geotab API wrapper + batch locations (582 lines)
│   ├── gemini_client.py    # Gemini AI chat + function calling (596 lines)
│   ├── enrichment.py       # SQLite vehicle enrichment layer (220 lines)
│   ├── api_tracker.py      # SQLite API call tracker + response cache (211 lines)
│   ├── data_connector.py   # OData v4 Data Connector client (178 lines)
│   ├── cache.py            # DuckDB caching layer (142 lines)
│   ├── google_maps.py      # Geocoding + geofence creation (133 lines)
│   └── __init__.py
├── templates/
│   └── dashboard.html      # Single-page dashboard template (235 lines)
├── static/
│   ├── js/fleet-map.js     # Map, chat, replay, heatmap, controls (1513 lines)
│   ├── js/demo.js          # Automated demo with TTS narration (793 lines)
│   └── css/dashboard.css   # Dark/light theme, glass morphism (1558 lines)
├── static/audio/tts_cache/ # Pre-recorded narrator MP3s (Gemini Native Audio)
├── fleet_enrichment.db     # SQLite enrichment data (50 vehicles)
├── api_tracker.db          # SQLite API call log + response cache
├── README.md
├── PROMPTS.md              # AI prompts used during development
├── DEMO_NARRATION.md       # Demo script with timing
└── pyproject.toml

总计:13个源文件中约7950行代码。

演示场景

  1. 语音触发器:说“播放演示”→ 全自动3分钟解说导览
  2. 车队概述: *“显示所有车辆及其当前状态”*
  3. 车辆详细信息:单击任何标记→ 驾驶员、部门、品牌/型号、行程、故障
  4. 系统处于单机运行模式:隔离一辆车,隐藏所有其他车队标记
  5. 行程回放:单击行程的播放按钮→ 带速度HUD的动画GPS面包屑
  6. 热力图:切换热图以查看车队活动密度
  7. 报告:单击“报告”→ Gemini+Ace AI的执行分析→ 打印/保存
  8. 聊天: *在43.52-79.69处创建一个名为舰队作战区的地理围栏,半径为2公里*
  9. 语音:单击麦克风→ 说→ AI通过语音+文本进行响应
  10. Ace AI: *“我的车队中最大的燃料消耗者是谁?”*
  11. 主题切换:在暗模式和亮模式之间切换

竞争

2026年Geotab Vibe编码竞赛.目标:

  • Vibe大师 (1万美元)——最佳整体解决方案
  • 创新者 (5000美元)——利用人工智能驱动的车队智能进行技术创新
  • Google工具的最佳使用 (2.5K美元)——谷歌地图仪表板、双子座人工智能聊天+功能调用、双子座原生音频TTS、谷歌地理编码

团队

由2名开发人员使用 克劳德代码 (Claude Opus 4.6)作为主要的氛围编码合作伙伴。

许可证

麻省理工学院

目录标签

目录标签

PythonClaude数据分析车队管理本地部署AI对话实时追踪智能报告

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

20

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP