Skip to main content
Glama

Bouncie MCP 服务器

一个用于 Bouncie OBD2 车辆追踪 API 的 模型上下文协议 (MCP) 服务器。让 Claude、ChatGPT 或任何兼容 MCP 的 AI 助手能够实时访问您的车辆数据——包括位置、行程、诊断、燃油油位等。

功能用途

将您的 Bouncie GPS 追踪器连接到 AI。您可以询问如下自然语言问题:

  • “我的车现在在哪里?”

  • “显示我上周的行程”

  • “我的发动机故障灯亮了吗?有什么故障码?”

  • “我的油还剩多少?”

  • “我这周最长的一次驾驶是哪次?”

Related MCP server: Unoffical Polestar 2 MCP

特性

  • 实时车辆追踪 — GPS 位置、速度、航向、地址

  • 行程历史与分析 — 距离、时长、平均/最高速度、燃油消耗、急刹车与急加速次数、GPS 轨迹(折线或 GeoJSON)

  • 车辆诊断 — 发动机故障灯 (MIL) 状态、OBD2 诊断故障码 (DTC)、电池健康状况

  • 车辆信息 — 品牌、型号、年份、VIN、发动机、里程表、燃油油位

  • 多用户 OAuth — HTTP 模式将 Claude.ai 的 OAuth 代理到 Bouncie 的 OAuth,因此每个用户都使用自己的 Bouncie 账户进行授权

  • Stdio + HTTP 模式 — 使用预先颁发的访问令牌在本地运行,或为多个用户进行集中托管

  • 支持 Docker — 可在任何支持 HTTPS 的环境中部署

快速入门

本地 (stdio) 模式

npm install && npm run build

添加到 Claude Desktop 或 Claude Code 的 MCP 设置中:

{
  "mcpServers": {
    "bouncie": {
      "command": "node",
      "args": ["/path/to/bouncie-mcp/dist/index.js"],
      "env": {
        "BOUNCIE_ACCESS_TOKEN": "your-access-token"
      }
    }
  }
}

Stdio 模式使用预先获取的 Bouncie 访问令牌——无需 OAuth 流程。多用户部署请使用 HTTP 模式。

远程 (HTTP) 模式(使用 Docker)

cp .env.example .env  # fill in your credentials
docker compose up -d

服务器暴露了以下端点:

  • /mcp — MCP 端点(Bearer 令牌认证)

  • /authorize — 启动 OAuth 流程,将用户重定向到 Bouncie

  • /callback — Bouncie 的 OAuth 重定向目标

  • /token — 用于 MCP 客户端的令牌交换端点

  • /register — RFC 7591 动态客户端注册

  • /.well-known/oauth-authorization-server — RFC 8414 元数据

  • /health — 健康检查

Bouncie 应用设置

  1. bouncie.dev 注册并创建一个应用

  2. 记录您的 Client IDClient Secret

  3. Redirect URL 设置为 {PUBLIC_URL}/callback (例如 https://bouncie.example.com/callback)

门户网站的工作到此为止——用户在通过 Claude.ai 连接时,会通过 OAuth 流程单独进行授权。

环境变量

Stdio 模式(单用户)

变量

必需

描述

BOUNCIE_ACCESS_TOKEN

预先获取的 Bouncie 访问令牌

HTTP 模式(多用户)

变量

必需

描述

BOUNCIE_CLIENT_ID

Bouncie 应用客户端 ID

BOUNCIE_CLIENT_SECRET

Bouncie 应用客户端密钥

PUBLIC_URL

公共 URL (例如 https://bouncie.example.com);Bouncie 应用的重定向 URL 必须为 {PUBLIC_URL}/callback

TOKEN_TTL_HOURS

MCP 令牌有效期(小时),默认为 24

PORT

HTTP 服务器端口,默认为 3000

工具

get_vehicles

列出账户下的所有车辆及其实时统计信息。

参数

类型

描述

vin

string (可选)

按 VIN 过滤

imei

string (可选)

按设备 IMEI 过滤

返回:车辆信息(品牌/型号/年份、VIN、IMEI、昵称)和实时统计信息(GPS 位置、速度、燃油油位、里程表、发动机运行状态、电池、发动机故障灯、DTC)。

get_vehicle

通过 VIN 或 IMEI 获取单辆车的信息。至少需要提供一个标识符。

get_trips

获取车辆的行程历史记录。

参数

类型

描述

imei

string

设备 IMEI (必需)

starts_after

string (可选)

ISO 日期 — 在此时间之后开始的行程

ends_before

string (可选)

ISO 日期 — 在此时间之前结束的行程

gps_format

"polyline"

"geojson" (可选)

GPS 数据格式 (默认: polyline)

transaction_id

string (可选)

通过交易 ID 获取特定行程

日期窗口最长为 1 周。默认为最近 7 天。

返回:距离、时长、平均/最高速度、燃油消耗、急刹车/急加速次数、里程表、GPS 轨迹。

get_user

获取已认证用户的个人资料。

时间戳

来自 Bouncie API 的所有时间戳均为 UTC 时间。每辆车/行程都包含一个时区偏移字段 (localTimeZonetimeZone,例如 "-0500"),用于转换为本地时间。

开发

npm run dev        # Run with tsx (hot reload)
npm run build      # Compile TypeScript
npm test           # Run tests (21 tests)
npm run lint       # Type check

架构

  • src/index.ts — stdio 传输入口点

  • src/http.ts — 带有 OAuth 的 HTTP/Express 入口点

  • src/server.ts — MCP 工具定义

  • src/api.ts — Bouncie REST API 客户端

  • src/oauth.ts — 将 Claude.ai 的 OAuth 代理到 Bouncie 的 OAuth 提供程序(支持 PKCE)

  • src/types.ts — 车辆、行程和 Webhook 事件的 TypeScript 类型

Bouncie Webhook 事件

Bouncie API 也支持 Webhook(此处记录以供参考):

事件

描述

connect / disconnect

设备插入/拔出

battery

电池状态变更 (正常/严重)

mil

发动机故障灯开启/关闭及 DTC 代码

tripStart / tripEnd

行程开始/结束,包含里程表、燃油消耗

tripMetrics

行程摘要 — 距离、速度、刹车/加速

tripData

行程期间的实时 GPS 面包屑数据

许可证

MIT

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers