Servidor Tesla MCP
Un servidor de Protocolo de Contexto de Modelo (MCP) que se conecta a la API de Tesla Fleet, lo que le permite controlar su vehículo Tesla utilizando Claude y otros asistentes de IA que admiten MCP.
Características
Activar vehículos : Activa tu Tesla del modo de suspensión
Información del vehículo : obtenga información detallada sobre sus vehículos Tesla
Actualizaciones en tiempo real : actualice los datos del vehículo a pedido
Herramientas de depuración : acceda a información detallada del vehículo para ayudar con la resolución de problemas
Requisitos
Node.js 18+
pnpm (preferido) o npm
Cuenta Tesla con al menos un vehículo
Credenciales de la API de Tesla (ID de cliente y secreto de cliente)
Ngrok (para desarrollo y registro)
Mejores prácticas de seguridad
Este proyecto gestiona credenciales confidenciales de la API de Tesla. Siga estas prácticas de seguridad:
Nunca confirmes credenciales : el archivo
.gitignoreexcluye.envykeys/pero siempre verifica dos vecesUtilice el verificador de seguridad : ejecute
./check-secrets.shantes de confirmar para detectar credenciales potencialmente filtradasProteja sus claves privadas : mantenga seguro el contenido del directorio
keys/Revise el código antes de compartirlo : asegúrese de que no haya credenciales codificadas en ningún archivo fuente
Al bifurcar o compartir este proyecto:
Asegúrese de que el archivo
.envno esté incluidoCompruebe que no haya claves privadas comprometidas
Verifique que el archivo
.gitignoreesté configurado correctamente
Inicio rápido
Clonar el repositorio
git clone https://github.com/yourusername/tesla-mcp.git cd tesla-mcpInstalar dependencias
pnpm installConfigurar variables de entorno Cree un archivo
.enven el directorio raíz:TESLA_CLIENT_ID=your_client_id TESLA_CLIENT_SECRET=your_client_secret TESLA_REFRESH_TOKEN=your_refresh_tokenObtén un token de actualización (si no tienes uno)
pnpm get-tokenRegistra tu aplicación con la API de Tesla
pnpm registerSiga las instrucciones proporcionadas por el script.
Construir el servidor
pnpm buildEjecutar el servidor
pnpm start
Autenticación y registro
Este proyecto utiliza el flujo de autenticación oficial OAuth 2.0 de la API de Flota de Tesla para conectarse de forma segura a su cuenta Tesla. El proceso completo consta de dos pasos:
Autenticación : obtención de un token de actualización a través del flujo OAuth 2.0
Registro : Cómo registrar su aplicación con Tesla a través de la API de cuentas de socios
Autenticación
La autenticación requiere:
ID de cliente y secreto de cliente del Portal para desarrolladores de Tesla
Un token de actualización obtenido a través del flujo de código de autorización OAuth 2.0
La utilidad pnpm get-token incluida simplifica este proceso al:
Abrir un navegador para que inicies sesión con las credenciales de tu cuenta Tesla
Ejecución del flujo PKCE (clave de prueba para intercambio de código) de OAuth
Intercambio del código de autorización por tokens de actualización y acceso
Almacenar el token de actualización en su archivo
.env
Registro
La API de Flotas de Tesla requiere que las aplicaciones se registren antes de poder acceder a los datos del vehículo. El servidor de registro ( pnpm register ) automatiza este proceso:
Genera el par de claves EC requerido
Utiliza ngrok para crear una URL pública temporal para el desarrollo
Aloja la clave pública en la ruta requerida
Maneja la llamada API de registro con Tesla
Configuración de Ngrok (necesaria para el registro)
Instale ngrok desde ngrok.com/download
Crea una cuenta gratuita en ngrok.com
Obtén tu token de autorización desde el panel de ngrok
Autenticar ngrok:
ngrok authtoken YOUR_AUTH_TOKEN
Herramientas MCP disponibles
El servidor proporciona las siguientes herramientas que Claude puede utilizar:
wake_up: despierta un vehículo Tesla del modo de suspensiónToma
vehicle_idcomo parámetro obligatorioDevuelve el estado actual del vehículo.
refresh_vehicles: Actualiza la lista de vehículos TeslaNo se requieren parámetros
Actualiza el caché interno de los vehículos.
debug_vehicles: muestra información detallada sobre los vehículos disponiblesNo se requieren parámetros
Devuelve ID, id del vehículo, VIN e información del estado
Configuración de Claude para utilizar el servidor MCP
Cree el directorio de configuración de Claude:
mkdir -p ~/Library/Application\ Support/ClaudeCrear o editar el archivo de configuración:
nano ~/Library/Application\ Support/Claude/claude_desktop_config.jsonAgregue la siguiente configuración (ajuste la ruta según sea necesario):
{ "mcpServers": { "tesla-mcp-server": { "command": "/absolute/path/to/tesla-mcp/run-mcp.js" } } }Haga que el script run-mcp.js sea ejecutable:
chmod +x run-mcp.jsReiniciar Claude por completo
Usando el servidor MCP con Claude
Una vez que el servidor esté en funcionamiento y Claude esté configurado, puedes pedirle que:
"¿Qué vehículos Tesla tengo?"
"¿Puedes despertar mi Tesla?"
"Muéstrame información de depuración sobre mis vehículos Tesla"
Solución de problemas
Si encuentra problemas:
Variables de entorno
Asegúrese de que su archivo
.envcontenga credenciales válidasEjecute
pnpm get-tokenpara actualizar su token si es necesario
Conexión al servidor
Compruebe que el servidor esté en ejecución (
pnpm start)Verifique que la configuración de Claude apunte a la ruta de archivo correcta
Conectividad del vehículo
El vehículo podría estar fuera de línea o inactivo
Intente despertar el vehículo primero con el comando
wake_up
Modo de depuración
Utilice el comando
debug_vehiclespara obtener información detallada sobre sus vehículosVerifique los registros del servidor en la terminal donde está ejecutando el servidor MCP
Herramientas de línea de comandos
El servidor incluye varios scripts útiles:
pnpm build: Compilar el código TypeScriptpnpm start: ejecuta el servidor usando el script run-mcp.jspnpm register: Registra tu aplicación con la API de Teslapnpm get-token: obtiene un token de actualización de Teslapnpm test-api: prueba tu conexión a la API de Teslapnpm inspector: ejecuta el servidor con el inspector MCP para depurar
Limitaciones de la API
A partir del 9 de octubre de 2023, Tesla ha descontinuado muchos puntos de comando de vehículos en su API REST. Comandos como tocar la bocina ahora requieren el Protocolo de Comando de Vehículos de Tesla en lugar de la API REST. Este servidor MCP actualmente solo admite puntos de comando de la API REST que siguen funcionando.
Mejoras futuras
Las posibles mejoras futuras incluyen:
Integración con el Protocolo de Comando de Vehículos de Tesla para comandos adicionales
Compatibilidad con más puntos finales de información del vehículo
Interfaz de usuario para configuración y monitorización
Licencia
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Un servidor de protocolo de contexto de modelo que se conecta a la API de Tesla Fleet, lo que permite a los asistentes de IA como Claude controlar vehículos Tesla y acceder a la información del vehículo a través de comandos de lenguaje natural.
- Características
- Requisitos
- Mejores prácticas de seguridad
- Inicio rápido
- Autenticación y registro
- Herramientas MCP disponibles
- Configuración de Claude para utilizar el servidor MCP
- Usando el servidor MCP con Claude
- Solución de problemas
- Herramientas de línea de comandos
- Limitaciones de la API
- Mejoras futuras
- Licencia
Related Resources
Related MCP Servers
- -security-license-qualityA Model Context Protocol server that allows Claude to make API requests on your behalf, providing tools for testing various APIs including HTTP requests and OpenAI integrations without sharing your API keys in the chat.Last updated -
- Asecurity-licenseAqualityA Model Context Protocol server that enables AI assistants like Claude to interact directly with Home Assistant, allowing them to query device states, control smart home entities, and perform automation tasks.Last updated -12197MIT License
- -security-license-qualityA Model Context Protocol server that extends AI capabilities by providing file system access and management functionalities to Claude or other AI assistants.Last updated -4186
- Asecurity-licenseAqualityA Model Context Protocol server that enables AI models like Claude to control TeamSpeak servers, allowing users to manage channels, send messages, configure permissions, and perform server administration through natural language commands.Last updated -406MIT License