myteslamate avatar

Mcp Tesla

myteslamate/mcp-tesla

A full-featured wrapper around both the Tesla Fleet API and TeslaMate API, exposing 98 tools for Fleet and 9 for TeslaMate. You can control vehicle functions (lock, climate, charging amps, trunk), manage Powerwall and solar (backup reserve, storm mode, time-of-use settings), send navigation destinations, pull trip analytics, and query charging history. It includes a generative UI system that lets the AI author custom dashboards on the fly using Pyodide, plus pre-built skills like a drive efficiency coach that chains tools into analytical workflows. The hosted version supports OAuth SSO through Tesla's auth server, so compatible clients trigger sign-in automatically without token juggling. Useful if you want conversational access to your entire Tesla ecosystem without opening the app.

GitHub stars
2
tools
15
transport
HTTP
last updated
Apr 14, 2026

Tools

15 tools

Public tool metadata for what this MCP can expose to an agent.

vehicle_status_overviewGet a full status snapshot for one vehicle (battery range, charging, location, climate, locks, firmware, alerts). Do not use this to see if the vehicle is awake/online. Do use this for general status, 'view battery', or 'battery and range' intents.2 params

Get a full status snapshot for one vehicle (battery range, charging, location, climate, locks, firmware, alerts). Do not use this to see if the vehicle is awake/online. Do use this for general status, 'view battery', or 'battery and range' intents.

Parameters* required
actionstring
Required operation selector. Always set to `get-vehicle-status`.
vehicle_idstring
Required Tesla vehicle id from `vehicle_list` (for example `12345678901234567`). Do not guess ids.
vehicle_listList vehicles available to the authenticated Tesla account.1 params

List vehicles available to the authenticated Tesla account.

Parameters* required
actionstring
Required operation selector. Always set to `list-vehicles`.
vehicle_wake_upWakes up the selected vehicle from sleep so it becomes online and can receive further commands. *ALL* operations on the vehicle must first ensure it is awake by calling this tool.1 params

Wakes up the selected vehicle from sleep so it becomes online and can receive further commands. *ALL* operations on the vehicle must first ensure it is awake by calling this tool.

Parameters* required
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`.
vehicle_door_lockLocks all doors on the selected vehicle. Use for explicit 'lock the car' intents.1 params

Locks all doors on the selected vehicle. Use for explicit 'lock the car' intents.

Parameters* required
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`. Use for explicit lock requests only.
vehicle_door_unlockUnlocks all doors on the selected vehicle. Use for explicit 'unlock the car' intents.1 params

Unlocks all doors on the selected vehicle. Use for explicit 'unlock the car' intents.

Parameters* required
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`. Use for explicit unlock requests only.
vehicle_flash_lightsFlashes the vehicle headlights briefly as a visual signal. Use for 'flash the lights' or 'locate my car' intents.1 params

Flashes the vehicle headlights briefly as a visual signal. Use for 'flash the lights' or 'locate my car' intents.

Parameters* required
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`. Use to locate/identify a parked car by light flash.
vehicle_honk_hornHonks the horn on the selected vehicle once. Use for explicit 'honk the horn' or 'sound the horn' intents, often to help locate a parked vehicle.1 params

Honks the horn on the selected vehicle once. Use for explicit 'honk the horn' or 'sound the horn' intents, often to help locate a parked vehicle.

Parameters* required
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`. Use for explicit horn/honk requests only. Do not guess ids.
vehicle_sun_roof_controlControls the powered sunroof. Only available on vehicles equipped with an operable sunroof. The vehicle must be stopped and in Park. Valid states include: "vent" (partially opens for ventilation) and "close" (fully closes the sunroof). Some vehicles do not support intermediate...2 params

Controls the powered sunroof. Only available on vehicles equipped with an operable sunroof. The vehicle must be stopped and in Park. Valid states include: "vent" (partially opens for ventilation) and "close" (fully closes the sunroof). Some vehicles do not support intermediate...

Parameters* required
statestring
Required sunroof target state. `vent` opens for airflow; `close` fully closes.one of vent · close
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`.
vehicle_window_controlControls the window positions on all four doors simultaneously. Supported actions are "vent" and "close". Vent lowers the windows slightly to allow airflow; close raises them fully. Vehicle must be in Park. Regional restrictions or vehicle configuration may limit this feature.2 params

Controls the window positions on all four doors simultaneously. Supported actions are "vent" and "close". Vent lowers the windows slightly to allow airflow; close raises them fully. Vehicle must be in Park. Regional restrictions or vehicle configuration may limit this feature.

Parameters* required
commandstring
Required window command. `vent` cracks windows; `close` closes all windows.one of vent · close
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`.
vehicle_navigation_gps_requestStarts navigation to a specific GPS coordinate. Requires latitude and longitude. An optional "order" field may define visit sequence when multiple destinations are used4 params

Starts navigation to a specific GPS coordinate. Requires latitude and longitude. An optional "order" field may define visit sequence when multiple destinations are used

Parameters* required
latitudenumber
Required destination latitude in decimal degrees (for example `37.7749`).
longitudenumber
Required destination longitude in decimal degrees (for example `-122.4194`).
orderinteger
Optional waypoint order index when composing multi-stop flows.
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`.
vehicle_navigation_placeid_requestStarts navigation using one or more Google Maps Place IDs. The Place IDs must be provided as a comma-separated string in the format "refId:<PLACE_ID>". Multiple refIds may be included to provide alternative candidate locations. This is ideal when working with Google Places API...2 params

Starts navigation using one or more Google Maps Place IDs. The Place IDs must be provided as a comma-separated string in the format "refId:<PLACE_ID>". Multiple refIds may be included to provide alternative candidate locations. This is ideal when working with Google Places API...

Parameters* required
ref_idsstring
Required comma-separated `refId:<GOOGLE_PLACE_ID>` values (for example `refId:ChIJVTPokywQkFQRmtVEaUZlJRA`).
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`.
vehicle_navigation_waypoints_requestSends multiple GPS waypoints to the vehicle's navigation system. Each waypoint must include latitude and longitude, and may include an "order" field to specify visit sequence. The waypoints define a multi-stop route, which the vehicle navigation system will follow in the provi...2 params

Sends multiple GPS waypoints to the vehicle's navigation system. Each waypoint must include latitude and longitude, and may include an "order" field to specify visit sequence. The waypoints define a multi-stop route, which the vehicle navigation system will follow in the provi...

Parameters* required
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`.
waypointsarray
Required ordered waypoint list for multi-stop navigation.
vehicle_remote_boomboxPlays an external sound through the vehicle's Boombox speaker (if equipped). The sound is selected using a numeric `sound_id`. Example values include: 0 for a random Boombox sound, and 2000 for a 'locate ping'. Regional restrictions may limit Boombox functionality, and the veh...2 params

Plays an external sound through the vehicle's Boombox speaker (if equipped). The sound is selected using a numeric `sound_id`. Example values include: 0 for a random Boombox sound, and 2000 for a 'locate ping'. Regional restrictions may limit Boombox functionality, and the veh...

Parameters* required
sound_idinteger
Required boombox sound id (for example `0` random, `2000` locate ping).
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`.
vehicle_auto_conditioning_startStarts the vehicle's climate control system (HVAC). This is the correct final action for 'warm up my car', 'warm up the car', 'turn on climate', or 'start HVAC' intents.1 params

Starts the vehicle's climate control system (HVAC). This is the correct final action for 'warm up my car', 'warm up the car', 'turn on climate', or 'start HVAC' intents.

Parameters* required
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`. Starts HVAC for this vehicle.
vehicle_auto_conditioning_stopStops the vehicle's climate control system (HVAC). Use for 'turn off climate', 'stop HVAC', or 'turn the climate off' intents.1 params

Stops the vehicle's climate control system (HVAC). Use for 'turn off climate', 'stop HVAC', or 'turn the climate off' intents.

Parameters* required
vehicle_idstring
Required Tesla vehicle id from `vehicle_list`. Stops HVAC for this vehicle.

Sponsors

Readme

Tesla MCP Server: https://mcp.myteslamate.com/mcp

This repository provides a Model Context Protocol server that wraps both the Tesla Fleet API and the TeslaMate API. It includes vehicle endpoints, vehicle commands, energy endpoints (Powerwall/Solar), and charging endpoints. The implementation is modular and fully featured, exposing 98 MCP tools for the Tesla Fleet API and 9 MCP tools for the TeslaMate API.


✨ What You Can Do

This isn't just remote control — it's a conversational interface to your entire Tesla ecosystem. Express your use cases directly to your AI — describe what you want in plain language and let it figure out which tools to call, in what order, and with what parameters. No app to open, no menu to navigate.

⚡ Energy Optimization

"My Powerwall is at 40%. Should I charge my car now or wait for solar production this afternoon?"

"Analyze my last 30 days of energy data — am I losing money by exporting to the grid while paying to charge at night?"

"Set the Powerwall backup reserve to 20% and schedule the car to charge from 2am to 6am at 16A."


View the full README on GitHub

Details

Repository
github.com/myteslamate/mcp-tesla
Transport
HTTP
Registry
MCP registry, active