cobanov/teslamate-mcp

🚆 Travel & Transportation🟢 Verified Active
0 Views
0 Installs

🐍 🏠 - A Model Context Protocol (MCP) server that provides access to your TeslaMate database, allowing AI assistants to query Tesla vehicle data and analytics.

Quick Install

One-Click IDE Configuration
claude_desktop_config.json
{
  "mcpServers": {
    "cobanov-teslamate-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "cobanov-teslamate-mcp"
      ]
    }
  }
}
Or

Using an AI coding agent (Claude Code, Cursor, etc.)? Copy a ready-made prompt that tells it to fetch the setup instructions and install this server for you.

Documentation Overview

TeslaMate MCP Server

TeslaMate MCP Server demo

A Model Context Protocol server that exposes your TeslaMate PostgreSQL database to MCP-aware AI clients (Claude Desktop, Cursor, etc.) over either stdio or streamable HTTP.

CI Release GHCR Python License Ruff Archestra Trust Score

Features

  • 20 tools — 18 predefined analytics queries (battery, charging, driving, efficiency, locations) plus run_sql and get_database_schema
  • 6 prompts — one-click workflows for battery health, driving summary, charging behaviour, anomaly hunting, weather efficiency, and a quick status report
  • 2 resourcesteslamate://queries and teslamate://queries/{name} for catalog browsing without invoking a tool
  • Hardened run_sql — runs inside a PostgreSQL READ ONLY transaction with statement_timeout, lock_timeout, and an automatic row cap
  • Live schema introspectionget_database_schema reads information_schema at runtime; no stale JSON checked into the repo
  • Two transports, one binaryteslamate-mcp stdio for local clients, teslamate-mcp http for remote
  • Bearer-token auth with timing-safe comparison; /health probe for liveness checks
  • Decimal → float JSON serialization so language models see numbers, not strings

Requirements

  • TeslaMate already running against PostgreSQL
  • Python 3.11+ for a local install, or Docker for a remote deployment

Install

git clone https://github.com/cobanov/teslamate-mcp.git
cd teslamate-mcp
cp env.example .env
# Edit .env — at minimum, set DATABASE_URL
uv sync

CLI

The teslamate-mcp console script has four subcommands:

teslamate-mcp stdio                          # local (Cursor / Claude Desktop)
teslamate-mcp http [--host] [--port]         # remote (HTTP / SSE)
teslamate-mcp gen-token                      # produce an AUTH_TOKEN value
teslamate-mcp list-tools                     # diagnostic: list registered tools

python -m teslamate_mcp <subcommand> works too.

Local use (stdio)

Configure your MCP client to launch the stdio server. Example for Cursor or Claude Desktop:

{
  "mcpServers": {
    "teslamate": {
      "command": "uv",
      "args": ["--directory", "/path/to/teslamate-mcp", "run", "teslamate-mcp", "stdio"]
    }
  }
}

Remote use (Docker)

cp env.example .env
# Set DATABASE_URL and ideally AUTH_TOKEN
docker compose up -d

The MCP endpoint is at http://localhost:8888/mcp and a liveness probe is exposed at http://localhost:8888/health.

A prebuilt multi-arch image (linux/amd64, linux/arm64) is also published to GHCR on every tagged release:

docker run --rm -e DATABASE_URL=... -p 8888:8888 ghcr.io/cobanov/teslamate-mcp:latest

Configuration

All settings are read from environment variables (.env supported). Only DATABASE_URL is required.

VariableDefaultNotes
DATABASE_URLrequiredpostgresql://user:pass@host:5432/teslamate
AUTH_TOKENemptyEnables bearer auth on the HTTP endpoint
HOST0.0.0.0HTTP bind host
PORT8888HTTP bind port
POOL_MIN_SIZE1psycopg pool floor
POOL_MAX_SIZE10psycopg pool ceiling
QUERY_TIMEOUT_MS5000statement_timeout for run_sql
CUSTOM_SQL_ROW_LIMIT1000LIMIT injected when run_sql doesn't supply one
LOG_LEVELINFOStandard Python log level
DEBUGfalseStarlette debug mode (keep off in production)

Generate a bearer token:

uv run teslamate-mcp gen-token

Available tools

Predefined (18)

Vehicle: get_basic_car_information, get_current_car_status, get_software_update_history

Battery & health: get_battery_health_summary, get_battery_degradation_over_time, get_daily_battery_usage_patterns, get_tire_pressure_weekly_trends

Driving: get_monthly_driving_summary, get_daily_driving_patterns, get_longest_drives_by_distance, get_total_distance_and_efficiency, get_drive_summary_per_day

Efficiency: get_efficiency_by_month_and_temperature, get_average_efficiency_by_temperature, get_unusual_power_consumption

Charging & location: get_charging_by_location, get_all_charging_sessions_summary, get_most_visited_locations

Custom (2)

  • get_database_schema — current TeslaMate schema (one row per column)
  • run_sql(query) — execute a custom SELECT or WITH … SELECT

Adding a new query

  1. Drop a SELECT into src/teslamate_mcp/queries/your_query.sql.

  2. Add a sibling your_query.toml:

    name = "get_your_data"
    description = "What this returns."
    
  3. Restart the server. The registry picks it up automatically.

Development

uv sync                          # install with dev deps
uv run ruff check src tests      # lint
uv run ruff format src tests     # format
uv run pytest                    # tests (Docker-backed integration tests skip if Docker is absent)

License

MIT — see LICENSE.

Featured in

MseeP.ai security audit   Glama MCP catalog

Related MCP Servers

alcylu/nightlife-mcp

📇 ☁️ - MCP server for Tokyo nightlife event discovery, venue search, performer info, AI recommendations, and VIP table booking.

🚆 Travel & Transportation0 views
amirdaraee/luxembourg-mcp

🎖️ 🐍 ☁️ 🏠 - Keyless access to official Luxembourg public data: laws, statistics, live parking and traffic, weather alerts, environment, parliament, geodata, GTFS stops, and the national open-data catalogue. 21 read-only tools, zero dependencies; hosted endpoint at mcp.luxembourg-mcp.com or local Python server. No API keys.

🚆 Travel & Transportation0 views
Autonomad1/autonomad-travel

📇 ☁️ - AI travel agent over MCP — live flights, hotels, activities, and events worldwide, then completes the booking on autonomad.ai (free signup at checkout, first month of Premium included).

🚆 Travel & Transportation0 views
campertunity/mcp-server

🎖️ 📇 🏠 - Search campgrounds around the world on campertunity, check availability, and provide booking links

🚆 Travel & Transportation0 views

Engagement

Views
0
Installs
0
Upvotes
0

Views and upvotes are unique per visitor network (hashed IP). Installs count copy actions.

Status

Health: Active

Recent health check succeeded.

Last checked: 7/28/2026, 9:14:50 PM

Unclaimed listing (imported or pending owner verification). Claim it →
★ Spotlight Slot

Feature Your MCP Server

Get maximum visibility for your server across our directory, search results, and detail pages.

Spotlight Your Server

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge and attach your website.

Claim this listing

Promote this listing

Optional paid placement. Free listings stay free forever.

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.