Rivian MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| RIVIAN_EMAIL | Yes | Your Rivian account email address. | |
| RIVIAN_PASSWORD | Yes | Your Rivian account password. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| rivian_loginA | Sign in to Rivian with the RIVIAN_EMAIL and RIVIAN_PASSWORD set in the MCP server configuration. Call it when no session is saved or after the session expires; a saved session is restored on launch. Takes no arguments. Replaces the current session and saves it to ~/.rivian-mcp/session.json. When Rivian requires two-step verification, it sends a code to your phone or email and the sign-in stays pending until you pass the code to rivian_submit_otp. Returns a message saying either that you are signed in or that a code was sent, and an error if the credentials are missing or Rivian rejects them. |
| rivian_submit_otpA | Finish a Rivian sign-in with the verification code Rivian sent to your phone or email. Use it only after rivian_login reported that a code was sent; without a pending sign-in it returns an error and asks you to call rivian_login. On success it saves the session to ~/.rivian-mcp/session.json. Uses the RIVIAN_EMAIL set in the MCP server configuration. Returns a message saying you are signed in, or an error if Rivian rejects the code. |
| rivian_get_user_infoA | Get the account owner and each vehicle on the account: name, model, VIN, trim, drive system, colors, wheels, build date, installed software version and any available update with a release notes link. Use it to identify the vehicle or the account. For update progress use rivian_get_ota_status; for live readings use rivian_get_vehicle_state. Returns readable text. Requires a signed-in Rivian session and returns an error without one. Read-only: sends no command to the vehicle. |
| rivian_get_vehicle_stateA | Get the live vehicle state as readable text: battery level and range, doors, windows, tires, location, climate, seat heating and ventilation, steering wheel heat, software versions, and security and trailer status. Use it for how the vehicle is right now. For an active charge use rivian_get_charging_session; for past charges use rivian_get_charging_history; for updates use rivian_get_ota_status. Distances follow the unit set in the vehicle. Reads the first vehicle on the account. Requires a signed-in Rivian session and returns an error without one. Read-only: sends no command to the vehicle. |
| rivian_get_ota_statusA | Get the installed software version, the update status reported by the vehicle (for example idle) and any available update with its version and release notes link. Use it to check whether an update is waiting. For the full account and vehicle list use rivian_get_user_info. Returns readable text; shows "up to date" when no update is available. Reads the first vehicle on the account. Requires a signed-in Rivian session and returns an error without one. Read-only: sends no command to the vehicle. |
| rivian_get_charging_sessionA | Get the charge happening now: battery level, power in kW, energy added in kWh, current in A, time elapsed and remaining, cost so far or free, whether it is a Rivian charger, and the charger location. When no live session exists, it reports the vehicle charging state instead. For finished sessions use rivian_get_charging_history; for planned charging use rivian_get_charging_schedule. Returns readable text. Reads the first vehicle on the account. Requires a signed-in Rivian session and returns an error without one. Read-only: sends no command to the vehicle. |
| rivian_get_charging_historyA | List past charging sessions, newest first. Each row has date, start and end time, duration, energy in kWh, cost or free, city, charging network and charger type (home, public or other). Use it for completed sessions. For a charge in progress use rivian_get_charging_session. Returns readable text. Includes charging sessions from every vehicle on the account. Requires a signed-in Rivian session and returns an error without one. Read-only: sends no command to the vehicle. |
| rivian_get_charging_scheduleA | Get the charging schedules saved for the vehicle: start and end time, duration, whether each is enabled, amperage, the days of the week and the location it applies to. Use it to see when the vehicle is set to charge. It does not change a schedule. For a charge in progress use rivian_get_charging_session. Returns readable text. Reads the first vehicle on the account. Requires a signed-in Rivian session and returns an error without one. Read-only: sends no command to the vehicle. |
| rivian_get_drivers_and_keysA | List who and what can open and drive the vehicle: invited drivers, enrolled phone keys and key fobs. Use it to audit access to the vehicle. It does not add or revoke access. For account and vehicle details use rivian_get_user_info. Returns readable text. Reads the first vehicle on the account. Requires a signed-in Rivian session and returns an error without one. Read-only: sends no command to the vehicle. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Each tool has a clearly distinct purpose, with descriptions that explicitly differentiate similar tools (e.g., live vs. historical charging, OTA vs. vehicle state). No overlapping functionality; an agent can easily select the right tool.
All tool names follow a consistent 'rivian_' prefix followed by a verb or noun phrase in snake_case, with no deviations. The pattern is predictable and readable.
Nine tools provide a well-scoped set for reading Rivian vehicle and account data, without unnecessary or missing operations. The count is appropriate for the read-only focus.
The toolset is entirely read-only and lacks any commands to control the vehicle (e.g., lock/unlock, start charging, climate control) or manage schedules and access. These are notable gaps for a Rivian MCP server.