Skip to main content
Glama
ZEVO Host MCP Server

ZEVO Host MCP Server

Official
by zevocorp

ZEVO Host MCP Server

Give your AI agent direct, read-only access to your ZEVO financial data.

This is a small Model Context Protocol (MCP) server. An MCP server advertises a set of tools to an AI agent; the agent reads their descriptions, decides which to call, and this server executes the matching request against the ZEVO Client API using your API key. Drop in your key, register it with your agent, and ask questions like "which of my vehicles are out on a trip right now?" or "show my wallet transactions for this month."

It runs locally over stdio and is read-only — no payouts, no writes.

Tools

Tool

What it returns

get_me

The authenticated account and its wallet

list_vehicles

Vehicles on your account (VIN, listing details, charge %, ...)

list_bookings

Bookings (trip records): status, VIN, pricing, timing

list_active_bookings

Only bookings where a renter currently has the vehicle

list_inspections

Pre/post-trip inspection records with photos and damage tags

list_receipts

Itemized charges billed to renters (amounts in cents)

get_receipts_by_vehicle

Receipts for one vehicle (vehicleId)

get_receipts_by_booking

Receipts for one booking (bookingId)

list_transactions

Wallet ledger — best for statements & payout reconciliation

get_transactions_by_vin

Wallet transactions for one Tesla by VIN

List tools return up to 10 records at a time; the agent pages with skip.

Related MCP server: dwolla-mcp

Getting an API key

You need a ZEVO Client API key. It is sent as the x-api-key header and is scoped to your account, so tools only ever return your own data. Contact ZEVO (or use the host dashboard, if available) to issue a key for your account.

Quickstart

Requires Node.js 18+.

npm install
npm run build

Verify it locally with the MCP Inspector:

ZEVO_API_KEY=your_key npm run inspect

Configure your agent

Claude Desktop / Claude Code

Add to your claude_desktop_config.json (Claude Desktop) or MCP config:

{
  "mcpServers": {
    "zevo-host": {
      "command": "npx",
      "args": ["-y", "zevo-host-mcp"],
      "env": { "ZEVO_API_KEY": "YOUR_KEY" }
    }
  }
}

Or, if running from a local checkout:

{
  "mcpServers": {
    "zevo-host": {
      "command": "node",
      "args": ["/absolute/path/to/zevo-host-mcp/dist/index.js"],
      "env": { "ZEVO_API_KEY": "YOUR_KEY" }
    }
  }
}

Cursor

Add the same block to ~/.cursor/mcp.json (or the project's .cursor/mcp.json).

Configuration

Env var

Required

Default

Description

ZEVO_API_KEY

yes

—

Your Client API key (sent as x-api-key)

ZEVO_API_BASE_URL

no

https://api.zevo.io/client-api/v1

Override for staging/local

Adding an endpoint

Append one entry to the TOOLS array in src/tools.ts — name, description, path, and a small zod schema for its params. Nothing else needs to change.

License

MIT

Available Tools

10 tools
get_meA

Get the authenticated ZEVO account (the owner of the API key) and its wallet. Returns user (basic profile) and wallet (id, userId, balance, timestamps). Call this first to confirm which account the integration is acting on behalf of.

NameRequiredDescriptionDefault

No parameters

get_receipts_by_bookingA

List receipts for a specific booking available to the API key account. Same shape as list_receipts. Amounts are in cents. Returns up to 10 records per page; increase skip by 10 to fetch the next page.

NameRequiredDescriptionDefault
skipNoNumber of records to skip before returning the next page (page size is 10).
bookingIdYesZEVO booking id.
get_receipts_by_vehicleA

List receipts for a specific vehicle available to the API key account. Same shape as list_receipts. Amounts are in cents. Returns up to 10 records per page; increase skip by 10 to fetch the next page.

NameRequiredDescriptionDefault
skipNoNumber of records to skip before returning the next page (page size is 10).
vehicleIdYesZEVO vehicle id.
get_transactions_by_vinA

List wallet transactions for one specific authorized vehicle by VIN. Useful for reconciling the financial activity of a single Tesla across bookings, tolls, supercharging, incidentals, and related wallet movements. Same shape as list_transactions. Returns up to 10 records per page; increase skip by 10 to fetch the next page.

NameRequiredDescriptionDefault
skipNoNumber of records to skip before returning the next page (page size is 10).
vinNumberYesVIN for a vehicle available to the API key account.
list_active_bookingsA

List only ACTIVE bookings for the API key account — status pre_trip, in_progress, or in_termination (a renter currently has access to the vehicle). Use this to answer 'which vehicles are out on a trip right now?'. Same response shape as list_bookings. Returns up to 10 records per page; increase skip by 10 to fetch the next page.

NameRequiredDescriptionDefault
skipNoNumber of records to skip before returning the next page (page size is 10).
list_bookingsA

List bookings (rental/trip records) for the API key account. A booking connects a user to a vehicle for a period of time: status, VIN, pricing context, odometer fields, trip timing, related user/vehicle ids, timestamps. Best object for 'who had which vehicle, and when?'. Statuses: pending, cancelled, pre_trip, in_progress, in_termination, repossession, post_trip, vehicle_returned, payment_failed, paid. Returns up to 10 records per page; increase skip by 10 to fetch the next page.

NameRequiredDescriptionDefault
skipNoNumber of records to skip before returning the next page (page size is 10).
list_inspectionsA

List inspections (a vehicle's condition captured at a point in a booking, e.g. pre-trip or post-trip walkaround) for the API key account. Includes related user/vehicle/booking ids, inspection type, status, damage-reported flag, damage tags, odometer, trip timing, photos, timestamps. Returns up to 10 records per page; increase skip by 10 to fetch the next page.

NameRequiredDescriptionDefault
skipNoNumber of records to skip before returning the next page (page size is 10).
list_receiptsA

List receipts (itemized charges ZEVO billed the renter, connected to a booking and vehicle) for the API key account. Amounts are in CENTS and can be negative for refunds. Includes line items, totals, date/timezone, status, base fare paid, platform fee %, and ids. Line item tags: base_fare, platform_fee, toll, supercharger_invoice, supercharger_invoice_surcharge, incidentals, deposit, commission, revenue_share, wallet_deposit, wallet_withdrawal. Returns up to 10 records per page; increase skip by 10 to fetch the next page.

NameRequiredDescriptionDefault
skipNoNumber of records to skip before returning the next page (page size is 10).
list_transactionsA

List wallet ledger transactions for the API key account — money moving into/out of/through a ZEVO wallet. The best endpoint for account statements, wallet history, and payout reconciliation. Fields: amount, description, kind (adding funds, cashing out, booking wallet credit, wallet receipt payment, ...), status (pending/paid/cancelled), lineItems, bookingId, vehicleId, paidAt. Note: receipts record what was CHARGED; transactions record money MOVING in a wallet. Returns up to 10 records per page; increase skip by 10 to fetch the next page.

NameRequiredDescriptionDefault
skipNoNumber of records to skip before returning the next page (page size is 10).
list_vehiclesA

List vehicles available to the API key account. Each vehicle carries identity and listing details for a specific Tesla (VIN, location, charge percentage, listing status, registration fields, timestamps). Use the vehicle id or VIN to connect bookings and transactions back to a physical car. Returns up to 10 records per page; increase skip by 10 to fetch the next page.

NameRequiredDescriptionDefault
skipNoNumber of records to skip before returning the next page (page size is 10).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 10 tool updatesv0.1.0
    • First observedget_me
    • First observedget_receipts_by_booking
    • First observedget_receipts_by_vehicle
    • First observedget_transactions_by_vin
    • First observedlist_active_bookings
    • First observedlist_bookings
    • First observedlist_inspections
    • First observedlist_receipts
    • First observedlist_transactions
    • First observedlist_vehicles

TDQS

A4.4/5.0

Scored across 10 tools

Disambiguation5/5

Each tool targets a distinct resource and action: active bookings, inspections, account info, vehicles, all bookings, receipts by booking, all receipts, receipts by vehicle, wallet transactions, and transactions by VIN. Overlapping tools like list_active_bookings vs list_bookings are clearly differentiated by status and purpose.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern: list_* for collection queries and get_* for specific lookups. The naming is predictable and uniform, with no mixed conventions or ambiguous verbs.

Tool Count5/5

With 10 tools, the server is well-scoped for a host management API. Each tool covers a distinct aspect of the domain (vehicles, bookings, receipts, transactions, account), and the count is within the ideal range without redundancy.

Completeness4/5

The tool set covers the primary read-only workflows: viewing account info, vehicles, bookings, inspections, receipts, and transactions. It lacks write operations (e.g., create or update booking) and a direct get-booking-by-id, but for a read-focused host integration, the surface is largely complete with only minor gaps.

Maintenance

ActivityInactive
ResponsivenessNo recent community issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to retrieve and analyze Dwolla payment platform data using natural language, with read-only access to accounts, transfers, customers, and compliance information.
    105 npm
    3
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables read-only access to company data across PostgreSQL, MongoDB Atlas, and flat files through MCP tools, allowing AI assistants to query and retrieve information via natural language.
    -