CarsXE
Una API potente y fácil de usar para datos de vehículos, incluyendo especificaciones, valor de mercado, decodificación de matrículas y más.
Documentación
🚗 Servidor MCP CarsXE
Un servidor modular y extensible del Protocolo de Contexto de Modelos (MCP) para consultar y analizar datos de vehículos de la API de CarsXE, con una salida Markdown hermosa y amigable para chats, pensada para LLMs y chatbots.
ℹ️ ¿Qué es el Servidor MCP CarsXE?
El servidor MCP CarsXE es una aplicación Node.js/TypeScript que expone un conjunto de herramientas para consultar datos completos de vehículos desde la API de CarsXE. Está diseñado para una integración perfecta con LLMs (como Anthropic Claude, OpenAI GPT, etc.), chatbots y herramientas de desarrollo, y ofrece:
- 🧩 Código limpio y modular para cada endpoint de CarsXE
- 📝 Salida consistente y rica en Markdown para entornos de chat/LLM
- 🛡️ Manejo robusto de errores y mensajes fáciles de usar
- 🔌 Extensibilidad sencilla para nuevos endpoints y funciones
💡 ¿Por qué usar CarsXE con MCP?
Conectar CarsXE a tu editor de IA o cliente de chat mediante MCP te brinda una experiencia de datos de vehículos supercargada, directamente dentro de las herramientas que ya usas:
| Beneficio | Descripción |
|---|---|
| Pregunta en lenguaje natural | No necesitas conocer endpoints ni parámetros de la API — solo describe lo que quieres |
| Respuestas con contexto | La IA combina datos de vehículos en vivo con tu pregunta para respuestas personalizadas y accionables |
| Sin cambiar de pestaña | Obtén especificaciones VIN, historial, retiros y valores sin salir de tu editor o chat |
| Encadena solicitudes sin esfuerzo | Decodifica una placa → obtén especificaciones completas → verifica retiros → obtén el valor de mercado, todo en una conversación |
| Datos siempre en vivo | Cada consulta accede a la API de CarsXE en tiempo real — sin caché obsoleta ni resultados desactualizados |
| Funciona en tu editor favorito | Claude Desktop, Cursor, VS Code, Windsurf y cualquier cliente compatible con MCP |
✨ Características
- 🤖 Usa Anthropic Claude para generar respuestas completas y profesionales basadas en los datos de la API y la consulta del usuario
- 🚙 Consulta especificaciones, historial, imágenes, retiros, valor de mercado y más
- 🏷️ Decodifica placas de matrícula y VIN (incluido OCR desde imágenes)
- 🛠️ Decodifica códigos OBD (diagnóstico a bordo)
- 🎨 Todos los endpoints devuelven Markdown elegante, agrupado y con emojis
- 🧑💻 Código modular: tipos, lógica de API y formateadores están separados para facilitar el mantenimiento
- 🧪 Sencillo de ejecutar, probar y ampliar
⚙️ Requisitos previos
Clave de API de CarsXE (obtén una aquí)
🖥️ Instalación por editor
Todos los editores usan el mismo endpoint MCP remoto. Reemplaza YOUR_API_KEY con tu clave real de API de CarsXE en cada configuración a continuación.
Claude Desktop
1️⃣ Descarga e instala Claude Desktop
- Ve a la página oficial de descarga de Claude Desktop
- Descarga el instalador para tu sistema operativo (macOS, Windows o Linux)
- Instala Claude Desktop siguiendo las instrucciones en pantalla
2️⃣ Configura Claude Desktop para usar el servidor MCP CarsXE
a. Abre la configuración de Claude Desktop
- Inicia la aplicación Claude Desktop
- Haz clic en Claude en la barra de menú
- Selecciona Settings
- En la ventana de Settings, ve a la pestaña Developer (es posible que debas desplazarte o expandir las opciones avanzadas)
- Haz clic en Edit Config (o Open Config File)
b. Edita el archivo de configuración
-
Esto abrirá el archivo
claude_desktop_config.jsonen tu editor de texto predeterminado. -
Localiza la sección
"mcpServers". Si no existe, agrégala como se muestra a continuación. -
Agrega o actualiza la siguiente entrada para CarsXE:
"mcpServers": { "carsxe": { "command": "npx", "args": [ "mcp-remote@latest", "https://mcp.carsxe.com/mcp", "--header", "X-API-Key: YOUR_API_KEY" ] } }, -
Reemplaza
YOUR_API_KEYcon tu clave real de API de CarsXE -
Consejo: Puedes agregar varios servidores MCP en
"mcpServers"si usas más de uno. -
Guarda el archivo de configuración y cierra tu editor.
c. Reinicia Claude Desktop
-
Cierra y vuelve a abrir la aplicación Claude Desktop para aplicar la nueva configuración.
Puede haber una breve demora para que los cambios surtan efecto.
3️⃣ Verifica que el servidor MCP CarsXE esté disponible
- Después de reiniciar, abre Claude Desktop.
- Ve a la sección de herramientas o complementos (generalmente en la barra de búsqueda o en un menú de herramientas).
- Deberías ver CarsXE listado como servidor/herramienta MCP disponible.
- Prueba ejecutar una herramienta de CarsXE (por ejemplo, get-vehicle-specs) para verificar que todo funcione.
Esto solo funcionará si tu clave de API está asociada a una suscripción activa.
Cursor
Instala CarsXE MCP para Cursor
El diálogo de instalación se abrirá precargado con:
| Campo | Valor |
|---|---|
| Nombre | CarsXE |
| Tipo | streamableHttp |
| URL | https://mcp.carsxe.com/mcp |
| Encabezado | X-API-Key: YOUR_API_KEY |
Reemplaza YOUR_API_KEY con tu clave de API de CarsXE real y luego haz clic en Instalar.
Visual Studio Code (GitHub Copilot)
Instala CarsXE MCP para VS Code
Después de hacer clic en instalar, deberás agregar tu clave de API manualmente:
- Abre la Paleta de comandos (
Ctrl+Shift+P/Cmd+Shift+P) - Ejecuta MCP: List Servers
- Busca CarsXE en la lista y haz clic en él
- Haz clic en Show Configuration
- Reemplaza
YOUR_API_KEYcon tu clave de API de CarsXE real:
"CarsXE": {
"type": "http",
"url": "https://mcp.carsxe.com/mcp",
"headers": {
"X-API-Key": "YOUR_ACTUAL_KEY_HERE"
}
}
- Guarda el archivo: VS Code se conectará automáticamente.
Nota: Asegúrate de tener la extensión GitHub Copilot instalada y el modo agente habilitado (
chat.agent.enableden la configuración de VS Code).
Windsurf
1️⃣ Abre la configuración de MCP
- Ve a Windsurf Settings → MCP (o presiona
Ctrl+,y busca MCP) - Haz clic en "Edit Config" para abrir
~/.codeium/windsurf/mcp_config.json
2️⃣ Agrega el servidor CarsXE
{
"mcpServers": {
"carsxe": {
"command": "npx",
"args": [
"mcp-remote@latest",
"https://mcp.carsxe.com/mcp",
"--header",
"X-API-Key: YOUR_API_KEY"
]
}
}
}
3️⃣ Reinicia Windsurf
Recarga la ventana o reinicia Windsurf. Abre el panel de chat Cascade: las herramientas de CarsXE aparecerán automáticamente.
Otros editores (manual / genérico)
Para cualquier otro cliente compatible con MCP, registra un servidor MCP remoto usando:
- Endpoint:
https://mcp.carsxe.com/mcp - Transporte: HTTP (Streamable HTTP)
- Encabezado de autenticación:
X-API-Key: YOUR_API_KEY
Consulta la documentación de MCP de tu editor para conocer el formato de configuración exacto.
🛠️ Herramientas disponibles y ejemplos de prompts
A continuación se muestra una lista de todas las herramientas disponibles de CarsXE, sus parámetros y ejemplos de prompts. Estos prompts funcionan en cualquier cliente conectado a MCP.
1. get-vehicle-specs 🚙
-
Descripción: Obtén especificaciones completas del vehículo por VIN
-
Parámetros:
vin(string, obligatorio): Número de identificación del vehículo de 17 caracteres
-
Ejemplos de prompts:
¿Cuáles son las especificaciones completas del VIN
WBAFR7C57CC811956?¿Es un V6 o un V8? VIN:
WBAFR7C57CC811956¿Qué nivel de acabado tiene
WBAFR7C57CC811956? -
Salida: Especificaciones del vehículo en formato Markdown (año, marca, modelo, motor, dimensiones, colores, equipamiento, etc.)
2. decode-vehicle-plate 🏷️
-
Descripción: Decodifica la placa de un vehículo para obtener el VIN e información básica
-
Parámetros:
plate(string, obligatorio): Número de placastate(string, opcional): Abreviatura del estado (p. ej., CA)country(string, obligatorio, predeterminado: US): Código de país
-
Ejemplos de prompts:
¿Qué auto tiene la placa
7XER187en California?Decodifica la placa
7XER187estadoCABusca la placa
ABC1234en Texas -
Salida: Resumen en Markdown de la información del vehículo decodificada (VIN, marca, modelo, año, etc.)
3. international-vin-decoder 🌍
-
Descripción: Decodifica un VIN internacional para obtener información detallada
-
Parámetros:
vin(string, obligatorio): VIN de 17 caracteres
-
Ejemplos de prompts:
Decodifica este VIN europeo:
WF0MXXGBWM8R43240¿Qué auto es
WAUZZZ8K9AA123456? Es un VIN alemán. -
Salida: Markdown con detalles internacionales del vehículo (fabricante, especificaciones, emisiones, etc.)
4. get-market-value 💰
-
Descripción: Obtén el valor de mercado estimado de un vehículo por VIN
-
Parámetros:
vin(string, obligatorio): VIN de 17 caracteresstate(string, opcional): Abreviatura del estado de EE. UU.mileage(number, opcional): Kilometraje actual del vehículo para ajustar el valor de mercadocondition(string, opcional): Condición general del vehículo:excellent,clean,averageorough
-
Ejemplos de prompts:
¿Cuánto vale
WBAFR7C57CC811956?Estoy pensando en comprar el VIN
WBAFR7C57CC811956: ¿cuál es un precio justo?¿Cuál es el valor de intercambio de
WBAFR7C57CC811956en Florida con 45,000 millas en buen estado? -
Salida: Markdown con desglose del valor de mercado (venta al por menor, intercambio, MSRP, etc.)
5. get-vehicle-history 🕓
-
Descripción: Obtén un informe completo del historial del vehículo por VIN
-
Parámetros:
vin(string, obligatorio): VIN de 17 caracteresformat(string, opcional): Formato de respuesta (json o xml)
-
Ejemplos de prompts:
¿Ha estado
WBAFR7C57CC811956alguna vez en un accidente?Muéstrame el historial completo del VIN
WBAFR7C57CC811956¿Cuántos propietarios ha tenido
WBAFR7C57CC811956? -
Salida: Markdown con registros del historial (chatarra/salvamento, seguros, marcas, títulos, odómetro, etc.)
6. get-vehicle-images 🖼️
-
Descripción: Obtén imágenes de vehículos por marca, modelo y filtros
-
Parámetros:
make(string, obligatorio)model(string, obligatorio)year,trim,color,transparent,angle,photoType,size,license,format(todos opcionales)
-
Ejemplos de prompts:
Muéstrame fotos de una Toyota Tacoma 2018 azul
Obtén imágenes de un Ford Mustang GT 2022 rojo
¿Cómo se ve un Tesla Model 3 2020 blanco?
-
Salida: Markdown con hasta 5 imágenes (enlaces, miniaturas, detalles)
7. get-vehicle-recalls 🚨
-
Descripción: Obtén información de retiros (recalls) del vehículo por VIN
-
Parámetros:
vin(string, obligatorio): VIN de 17 caracteres
-
Ejemplos de prompts:
¿Tiene
1C4JJXR64PW696340algún retiro abierto?Acabo de comprar el VIN
1C4JJXR64PW696340: ¿debería preocuparme por los retiros?Verifica retiros de seguridad en
WBAFR7C57CC811956 -
Salida: Markdown con detalles del retiro (fecha, descripción, riesgo, remedio, estado, etc.)
8. recognize-plate-image 🏷️
-
Descripción: Reconoce y extrae placas de matrícula de la URL de una imagen de vehículo
-
Parámetros:
imageUrl(string, obligatorio): URL directa a una imagen de la placa de un vehículo
-
Ejemplos de prompts:
¿Cuál es el número de placa en esta imagen?
https://api.carsxe.com/img/apis/plate_recognition.JPGLee la placa de esta foto:
[image URL] -
Salida: Markdown con placas detectadas, puntuaciones de confianza, cuadros delimitadores, tipo de vehículo, etc.
9. vin-ocr 🔍
-
Descripción: Extrae el VIN de una imagen de vehículo usando OCR
-
Parámetros:
imageUrl(string, obligatorio): URL directa a una imagen del VIN de un vehículo
-
Ejemplos de prompts:
Extrae el VIN de esta imagen:
https://user-images.githubusercontent.com/5663423/30922082-64edb4fa-a3a8-11e7-873e-3fbcdce8ea3a.png¿Cuál es el VIN en esta foto?
https://res.cloudinary.com/carsxe/image/upload/q_auto/f_auto/v1713204144/base/images/vin-ocr/vin.jpg -
Salida: Markdown con VIN detectado, confianza, cuadro delimitador y candidatos
10. get-year-make-model 📅
-
Descripción: Obtén información completa del vehículo por año, marca, modelo y acabado opcional
-
Parámetros:
year(string, obligatorio)make(string, obligatorio)model(string, obligatorio)trim(string, opcional)
-
Ejemplos de prompts:
¿Cuáles son las especificaciones de una Toyota Camry 2020?
Cuéntame sobre el acabado Sport del Honda Civic 2019
¿Qué colores estaban disponibles en la Ford F-150 2021?
-
Salida: Markdown con detalles del vehículo, colores, características, opciones y paquetes
11. decode-obd-code 🛠️
-
Descripción: Descodificar un código OBD y obtener información de diagnóstico
-
Parámetros:
code(cadena, obligatorio): Código OBD (p. ej., P0115)
-
Ejemplos de consultas:
La luz de revisión del motor está encendida con el código
P0115— ¿qué significa?Descodificar el código OBD
P0300Tengo un código
C1234en el tablero — ¿es grave? -
Salida: Markdown con código, diagnóstico y fecha
12. get-lien-theft 🔒
-
Descripción: Obtener información sobre gravámenes y robo de un vehículo por VIN
-
Parámetros:
vin(cadena, obligatorio): Número de identificación vehicular de 17 caracteres
-
Ejemplos de consultas:
¿Hay algún gravamen sobre
WBAFR7C57CC811956?Estoy comprando un auto usado con VIN
WBAFR7C57CC811956— verifica si está robadoVerifica que el título esté limpio para
WBAFR7C57CC811956 -
Salida: Markdown con información del acreedor prendario, registros de robo, fechas de recuperación y estado
🔗 Encadenamiento de herramientas — Ejemplos para usuarios avanzados
El verdadero poder del MCP de CarsXE proviene de encadenar herramientas en una sola conversación:
Escenario 1 — Debida diligencia previa a la compra:
-
Descodifica la placa
7XER187en California -
Ahora obtén su historial completo
-
¿Tiene algún retiro del mercado pendiente?
-
¿Cuánto vale si la compro hoy?
Escenario 2 — Viste un auto en la calle:
-
Lee la placa de esta imagen:
[photo URL] -
Busca esa placa en Texas
-
Muéstrame fotos de ese modelo de auto
Escenario 3 — Mecánico / taller de servicio:
-
Descodifica este VIN desde la foto del tablero:
[image URL] -
Obtén sus especificaciones completas
-
Mi cliente dice que el código de revisión del motor es P0300 — ¿qué significa para este vehículo?
🔐 OAuth 2.1 (conector personalizado de Claude.ai)
El servidor alojado en https://mcp.carsxe.com/mcp admite dos métodos de autenticación:
- Clave API (sin cambios) — encabezado
X-API-Key,Authorization: Bearer <api-key>o parámetro de consulta?key=. Utilizado por Claude Desktop /mcp-remotey clientes locales. - OAuth 2.1 — utilizado por clientes MCP alojados, como el conector personalizado de Claude.ai. Al hacer clic en Conectar en Claude.ai se ejecuta un flujo estándar de Código de Autorización + PKCE: registro dinámico de clientes (RFC 7591), inicio de sesión en el navegador en la página de consentimiento de CarsXE y luego intercambio de tokens. Los tokens de acceso (
mcp_at_*, 1 h) se asignan a la clave API del usuario de CarsXE; los tokens de actualización (mcp_rt_*, 90 días) se rotan en cada renovación.
Cómo está conectado (solo implementación en GCP)
mcp.carsxe.com es el emisor de OAuth, pero la lógica del servidor de autorización vive en la aplicación web de CarsXE junto a los datos de usuario/clave API:
| Ruta en mcp.carsxe.com | Comportamiento |
|---|---|
GET /.well-known/oauth-authorization-server | Metadatos RFC 8414, servidos localmente |
GET /.well-known/oauth-protected-resource | Metadatos de recursos MCP, servidos localmente |
POST /oauth/register | Proxy hacia {OAUTH_WEB_BASE}/api/auth/mcp/register |
GET /oauth/authorize | 302 hacia {OAUTH_WEB_BASE}/mcp-auth (página de consentimiento) |
POST /oauth/token | Proxy hacia {OAUTH_WEB_BASE}/api/auth/mcp/token |
Los tokens Authorization: Bearer mcp_at_* entrantes en /mcp se resuelven a la clave API del usuario mediante el punto de conexión de introspección interno de la aplicación web y se almacenan en caché en memoria durante 60 s. Las solicitudes sin credenciales reciben 401 con un desafío WWW-Authenticate, que es lo que incita a Claude.ai a iniciar el flujo.
Variables de entorno
| Variable | Predeterminado | Propósito |
|---|---|---|
OAUTH_ISSUER | https://mcp.carsxe.com | Base del emisor / punto de conexión en los metadatos de descubrimiento |
OAUTH_WEB_BASE | https://api.carsxe.com | Aplicación web de CarsXE que aloja la lógica de OAuth |
MCP_OAUTH_INTERNAL_SECRET | (sin definir) | Secreto compartido para la introspección de tokens. Debe coincidir con el MCP_OAUTH_INTERNAL_SECRET de la aplicación web. Cuando no está definido, los tokens portadores OAuth se rechazan, pero la autenticación con clave API sigue funcionando. |
La implementación de Cloudflare Workers (
src/index.ts) no sirve la superficie de OAuth — solo la implementación de GCP Cloud Run (src/index.gcp.ts) detrás demcp.carsxe.comlo hace.