Back to catalog

WiCAN Vehicle

Universal OBD-II vehicle monitoring via WiCAN Pro and MQTT

Universal vehicle monitoring via meatPi WiCAN Pro OBD-II adapter — standard PIDs over MQTT, raw CAN bus decoding, diagnostic trouble codes, and trip data. Works with any OBD-II vehicle.

certified v0.1.0 vehicle-v1 uv MIT
Authorgroupthink-dev
Setupmoderate
Authcredentials

Service Contract

vehicle

Highlights

🚗 Universal — works with any OBD-II vehicle (1996+ US, 2001+ EU, 2005+ AU)
📡 MQTT — real-time vehicle data over WiFi, no Bluetooth pairing or serial ports
🔋 State — speed, RPM, fuel level, coolant temp, battery voltage, odometer
⚠️ Diagnostics — read and clear DTCs, freeze frame data, MIL status
🔧 Raw CAN — manufacturer-specific data via opendbc DBC file decoding
🛡️ Safety — DTC clearing and CAN write operations require explicit confirmation

About

What it does

WiCAN Vehicle gives your AI agent access to real-time vehicle data from any OBD-II compliant car, truck, or motorcycle through a meatPi WiCAN Pro adapter. The WiCAN plugs into the vehicle's OBD-II port and bridges CAN bus frames over WiFi to an MQTT broker — the MCP server subscribes to those topics.

Your agent can read standard OBD-II data (speed, RPM, fuel, coolant temperature, battery voltage), check and clear diagnostic trouble codes, and — with optional DBC file configuration — decode manufacturer-specific CAN data (door states, tyre pressures, EV battery SoC, steering angle).

Built on paho-mqtt for broker communication and cantools for DBC file parsing. Compatible with the opendbc community CAN database covering hundreds of vehicle models.

How it differs from cloud vehicle MCPs

This plugin Tesla / Tessie MCP BMW CarData MCP
Vehicle support Any OBD-II (1996+ US, 2001+ EU, 2005+ AU) Tesla only BMW/MINI only
Interface Local hardware (OBD-II → WiFi → MQTT) Cloud API Cloud API
Auth required MQTT broker credentials (local) API key or OAuth OAuth
Works offline Yes (local network only) No No
Subscription cost None (one-time hardware ~$40-50) Tessie ~$5/mo Free (EU only)
Remote commands DTC clear, raw CAN send Lock, climate, charge Lock, climate, charge
Raw data access Full CAN bus Summary only Summary only
Open source Hardware + firmware + MCP MCP only MCP only

This is the only vehicle MCP that talks directly to hardware. Cloud MCPs give you manufacturer-curated data through proprietary APIs; WiCAN gives you raw bus access to whatever the vehicle broadcasts.

How it works

The WiCAN Pro is an ESP32-S3-based WiFi/BLE OBD-II adapter with native MQTT support. It connects to your WiFi network and publishes vehicle data to configurable MQTT topics. This MCP server subscribes to those topics via a local or remote MQTT broker.

No Bluetooth pairing. No serial ports. No USB drivers. Just MQTT.

Vehicle OBD-II port
    │
    ▼
WiCAN Pro (ESP32-S3, WiFi + BLE)
    │
    ▼ MQTT publish
MQTT Broker (Mosquitto / HA built-in)
    │
    ▼ MQTT subscribe
wican-blade-mcp

What data is available

Standard OBD-II PIDs (universal, any compliant vehicle):

  • Engine RPM, vehicle speed, throttle position
  • Coolant temperature, intake air temperature
  • Fuel level, fuel system status, calculated engine load
  • Battery voltage, oxygen sensor readings
  • Diagnostic trouble codes (DTCs) and MIL status
  • VIN (Vehicle Identification Number)
  • Odometer (where supported by the vehicle)

Raw CAN bus (manufacturer-specific, requires DBC files):

  • Door and window states, lock status
  • Tyre pressures (TPMS)
  • EV battery SoC, charging state, range estimate
  • Steering angle, individual wheel speeds
  • Gear position, ambient temperature
  • Any data the vehicle puts on the CAN bus

Manufacturer-specific decoding uses DBC files from the opendbc project (comma.ai). Coverage varies by make/model — well-decoded for Honda, Toyota, Hyundai, GM, and many others.

Token efficiency

OBD-II responses are compact by nature — a PID response is a single value with a unit. The server formats state as pipe-delimited one-liners (SPEED | 60 km/h) with null-field omission, so only active data appears in the response.

Raw CAN frames are denser. The wican_can_read tool returns a bounded buffer (default 50 frames, max 200) with optional frame ID filtering. For continuous monitoring, configure the WiCAN firmware to poll only the PIDs you need rather than broadcasting the full bus — this reduces both MQTT traffic and token usage.

A typical wican_state response is 8–10 lines. A wican_diagnostics response with no active DTCs is 2 lines.

Network requirements

The WiCAN Pro needs to be on the same WiFi network as your MQTT broker, or configured to reach a cloud-hosted broker.

Home use (car in garage or driveway with WiFi coverage): works out of the box. The WiCAN connects to your home WiFi and publishes to your local Mosquitto or Home Assistant broker.

Third-party router setups (UniFi, pfSense, OPNsense): the WiCAN connects as a standard WiFi client — no special routing needed. Just ensure the MQTT broker is reachable from the WiFi VLAN the WiCAN joins.

Remote access (car parked away from home WiFi): requires a mobile hotspot, cellular-to-MQTT bridge, or a cloud MQTT broker (e.g. HiveMQ Cloud, EMQX Cloud). This is outside the scope of the plugin but documented in the WiCAN firmware docs.

Multi-vehicle setups: each WiCAN device gets a unique device ID. Set WICAN_DEVICE_ID to target a specific vehicle, or use multi_instance: true to run one MCP instance per vehicle with different MQTT topic filters.

The WiCAN Pro has sleep mode — it draws minimal power when the vehicle is off and reconnects automatically when the ignition is on.

Safety model

Read tools work immediately — vehicle state, diagnostics, trip data.

Write operations are dual-gated:

  1. WICAN_WRITE_ENABLED=true environment variable (persistent, set in plugin config)
  2. confirm=true parameter on each call (per-invocation, prevents accidental execution)

Both gates must pass. Your agent can inspect the vehicle freely but must be explicit about write operations.

Gated operations: clearing diagnostic trouble codes, sending raw CAN frames. Standard OBD-II reads and passive CAN monitoring are always safe.

CAN bus safety note: wican_can_send transmits arbitrary frames on the vehicle bus. Incorrect frames can cause ECU faults, warning lights, or unsafe behaviour. Use with extreme caution and only with known-good frame definitions. This tool is intended for diagnostics and research, not routine automation.

Hardware required

A meatPi WiCAN Pro (~$40-50 USD). Open-source hardware and firmware (meatpiHQ/wican-fw, 1.5k+ stars). Available from meatPi's website, Crowd Supply, and Tindie.

Variant WiFi BLE Sleep Mode Price
WiCAN Pro Yes Yes Yes ~$45
WiCAN (original) Yes No No ~$35

Both variants work with this plugin. The Pro is recommended for always-plugged-in use (sleep mode prevents battery drain).

Tool reference

Tool Type What it does
wican_vehicles read List connected WiCAN devices with vehicle identity and connection status
wican_state read Speed, RPM, fuel, coolant, battery voltage, throttle, engine load
wican_diagnostics read DTC codes, MIL status, freeze frame, monitor readiness
wican_battery read Battery voltage, alternator state, EV SoC (if CAN-decoded)
wican_trip read Speed, RPM, run time, odometer, fuel level
wican_can_read read Raw CAN frames from buffer, optional frame ID filtering
wican_dtc_clear gated Clear diagnostic trouble codes and reset MIL
wican_can_send gated Send a raw CAN frame to the vehicle bus

Conformance

Required6/6
Recommended1/1
Last tested2026-04-11

Setup

You need a meatPi WiCAN Pro plugged into your vehicle's OBD-II port and connected to your WiFi network. The WiCAN publishes vehicle data to an MQTT broker — this plugin subscribes to those topics. First-time setup: 1. Plug the WiCAN into your vehicle's OBD-II port (usually under the dashboard, driver side) 2. Connect to the WiCAN's setup WiFi hotspot and configure your home WiFi credentials 3. Set the MQTT broker address to your local Mosquitto or Home Assistant broker 4. Configure which OBD-II PIDs to poll in the WiCAN web interface For manufacturer-specific data (doors, tyres, EV battery), download the appropriate DBC file from github.com/commaai/opendbc and set the WICAN_DBC_PATH. The WiCAN Pro sleeps when the vehicle is off and reconnects automatically on ignition.

MQTT_BROKER MQTT Broker required
MQTT_PORT MQTT Port
MQTT_USERNAME MQTT Username
MQTT_PASSWORD MQTT Password secret
WICAN_DEVICE_ID Device ID
WICAN_DBC_PATH DBC File Path
WICAN_WRITE_ENABLED Enable Write Operations

Prerequisites

  • meatPi WiCAN Pro adapter (~$40-50 USD)
  • Vehicle with OBD-II port (1996+ US, 2001+ EU, 2005+ AU)
  • WiFi coverage at the vehicle's parking location
  • MQTT broker (Mosquitto, Home Assistant, or cloud)

Scenarios

Morning vehicle health check

Call wican_vehicles to confirm the device is online, then wican_state with refresh=true for fresh readings. Report battery voltage, coolant temp baseline, and any anomalies. Check wican_diagnostics for active DTCs or pending trouble codes.

vehicle
Diagnose check engine light

Call wican_diagnostics with refresh=true to read all active and pending DTCs with freeze frame data. Look up each code and provide a plain-language explanation, severity, and recommended action. Offer to clear codes if the issue has been resolved.

vehicle
Weekly trip and fuel summary

Call wican_trip for accumulated distance and fuel consumption. Call wican_state for current fuel level. Calculate average fuel economy and estimated range remaining.

vehicle
Monitor battery health over time

Call wican_battery with refresh=true to get the current voltage reading. Compare against the 12.4-12.7V resting range (engine off) or 13.7-14.7V charging range (engine running). Flag if the voltage suggests alternator or battery degradation.

vehicle
Raw CAN bus exploration

Call wican_can_read with no filter to see what frames the vehicle is broadcasting. Identify high-frequency frame IDs and cross-reference with opendbc DBC files for the vehicle's make/model. Report which manufacturer-specific signals are decodable.

vehicle
Pair with tessie-mcp

Both use vehicle. Tesla vehicle monitoring and control via the Tessie API — state, battery, charging, climate, drives, and 26 vehicle commands with confirmation-gated safety.

vehicle
Build a vehicle workflow

Use the Forge to design an automation pack powered by wican-blade-mcp for vehicle operations.

Install

sidereal install wican-blade-mcp