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 de CarsXE

Un servidor de Protocolo de Contexto de Modelo (MCP) modular y extensible para consultar y analizar datos de vehículos de CarsXE, con una salida Markdown hermosa y amigable para chat, diseñada para LLMs y chatbots.

Productos


ℹ️ ¿Qué es el Servidor MCP de CarsXE?

El servidor MCP de CarsXE es una aplicación Node.js/TypeScript que expone un conjunto de herramientas para consultar datos completos de vehículos desde CarsXE. Está diseñado para una integración perfecta con LLMs (como Anthropic Claude, OpenAI GPT, etc.), chatbots y herramientas de desarrollo, proporcionando:

  • 🧩 Código limpio y modular para cada endpoint de CarsXE
  • 📝 Salida Markdown consistente y enriquecida para entornos de chat/LLM
  • 🛡️ Manejo robusto de errores y mensajes amigables para el usuario
  • 🔌 Fácil extensibilidad para nuevos endpoints y funcionalidades

💡 ¿Por qué usar CarsXE con MCP?

Conectar CarsXE a tu editor de IA o cliente de chat a través de MCP te brinda una experiencia de datos de vehículos súper potenciada, directamente dentro de las herramientas que ya usas:

BeneficioDescripción
Pregunta en lenguaje naturalNo necesitas conocer endpoints o parámetros de API — solo describe lo que quieres
Respuestas contextualesLa IA combina datos de vehículos en vivo con tu pregunta para respuestas personalizadas y accionables
Sin cambiar de pestañaObtén especificaciones, historial, retiros y valores del VIN sin salir de tu editor o chat
Encadena solicitudes sin esfuerzoDecodifica una placa → obtén especificaciones completas → verifica retiros → obtén valor de mercado, todo en una sola conversación
Datos siempre en vivoCada consulta accede a la API de CarsXE en tiempo real — sin caché obsoleto ni resultados desactualizados
Funciona en tu editor favoritoClaude 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 del vehículo, historial, imágenes, retiros, valor de mercado y más
  • 🏷️ Decodifica placas y VINs internacionales (incluyendo OCR desde imágenes)
  • 🛠️ Decodifica códigos OBD (Diagnóstico a Bordo)
  • 🎨 Todos los endpoints devuelven Markdown elegante, agrupado y rico en emojis
  • 🧩 Los hosts de ChatGPT / Aplicaciones MCP pueden renderizar tarjetas de vehículo, valor de mercado y retiros mediante herramientas de renderizado dedicadas
  • 🧑‍💻 Código modular: tipos, lógica de API y formateadores están separados para facilitar el mantenimiento
  • 🧪 Fácil de ejecutar, probar y extender

⚙️ 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 de API real de CarsXE en cada configuración a continuación.


Cursor Marketplace / Grok Bot

Después de la publicación, instala CarsXE desde el Cursor Marketplace (Grok Bot usa el mismo catálogo). Luego abre Plugins → Configurar y establece CARSXE_API_KEY desde el panel de desarrollador de CarsXE. No confirmes ni pegues una clave real en el repositorio.

El enlace profundo de Cursor a continuación sigue disponible como respaldo.


Claude Desktop

1️⃣ Descargar e instalar Claude Desktop

2️⃣ Configurar Claude Desktop para usar el Servidor MCP de CarsXE

a. Abrir la Configuración de Claude Desktop

  • Inicia la aplicación Claude Desktop
  • Haz clic en Claude en la barra de menú
  • Selecciona Configuración
  • En la ventana de Configuración, ve a la pestaña Desarrollador (puede que necesites desplazarte o expandir opciones avanzadas)
  • Haz clic en Editar Configuración (o Abrir Archivo de Configuración)

b. Editar el Archivo de Configuración

  • Esto abrirá el archivo claude_desktop_config.json en 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_KEY con tu clave de API real de CarsXE

  • Consejo: Puedes agregar múltiples servidores MCP bajo "mcpServers" si usas más de uno.

  • Guarda el archivo de configuración y cierra tu editor.

c. Reiniciar Claude Desktop

  • Cierra y vuelve a abrir la aplicación Claude Desktop para aplicar la nueva configuración.

    Puede tomar un breve retraso para que los cambios surtan efecto.

3️⃣ Verificar que el Servidor MCP de CarsXE esté Disponible

  • Después de reiniciar, abre Claude Desktop.
  • Ve a la sección de herramientas o plugins (generalmente en la barra de búsqueda o bajo un menú de herramientas).
  • Deberías ver CarsXE listado como un servidor/herramienta MCP disponible.
  • Intenta 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 con una suscripción activa.


Cursor

Respaldo si la publicación en el marketplace aún no está disponible:

Instalar CarsXE MCP para Cursor

El diálogo de instalación se abrirá prellenado con:

CampoValor
NombreCarsXE
TipostreamableHttp
URLhttps://mcp.carsxe.com/mcp
EncabezadoX-API-Key: YOUR_API_KEY

Reemplaza YOUR_API_KEY con tu clave de API de CarsXE real, luego haz clic en Instalar.


Visual Studio Code (GitHub Copilot)

Instalar CarsXE MCP para VS Code

Después de hacer clic en instalar, deberás agregar tu clave de API manualmente:

  1. Abre la Paleta de Comandos (Ctrl+Shift+P / Cmd+Shift+P)
  2. Ejecuta MCP: Listar Servidores
  3. Encuentra CarsXE en la lista y haz clic en él
  4. Haz clic en Mostrar Configuración
  5. Reemplaza YOUR_API_KEY con tu clave de API de CarsXE real:
   "CarsXE": {
     "type": "http",
     "url": "https://mcp.carsxe.com/mcp",
     "headers": {
       "X-API-Key": "YOUR_ACTUAL_KEY_HERE"
     }
   }
  1. 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.enabled en la configuración de VS Code).


Windsurf

1️⃣ Abrir la Configuración de MCP

  • Ve a Configuración de Windsurf → MCP (o presiona Ctrl+, y busca MCP)
  • Haz clic en "Editar Configuración" para abrir ~/.codeium/windsurf/mcp_config.json

2️⃣ Agregar el Servidor CarsXE

{
  "mcpServers": {
    "carsxe": {
      "command": "npx",
      "args": [
        "mcp-remote@latest",
        "https://mcp.carsxe.com/mcp",
        "--header",
        "X-API-Key: YOUR_API_KEY"
      ]
    }
  }
}

3️⃣ Reiniciar 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 el formato de configuración exacto.


🖼️ UI de ChatGPT / Aplicaciones MCP (datos → renderizado)

Los hosts que implementan Aplicaciones MCP (incluyendo ChatGPT) pueden mostrar tarjetas de vehículo en línea. CarsXE mantiene las herramientas de obtención como herramientas de datos y monta la UI solo desde herramientas de renderizado dedicadas, para que ChatGPT no vuelva a montar un iframe en cada búsqueda.

Flujo de llamada recomendado:

  1. Llama a una herramienta de datos (get_vehicle_specs, get_market_value, o get_vehicle_recalls). Devuelve Markdown más structuredContent — sin _meta.ui.resourceUri.
  2. El modelo puede refinar ese resultado estructurado.
  3. Llama a la herramienta de renderizado correspondiente (render_vehicle_card, render_market_value, o render_recalls) con esos campos.
  4. El host carga el recurso HTML ui://carsxe/… (text/html;profile=mcp-app) y renderiza la tarjeta una vez.

Las tarjetas usan tokens publicados de @carsxe/design-system (--primary #065774, --background #F9F9F9, --card #FFFFFF, cromo rounded-2xl) y los activos oficiales de Logo https://ui.carsxe.com/logo-light.png / logo-dark.png.

La autenticación no cambia: MCP aún requiere una clave de API u OAuth. x402 sigue siendo solo REST.

Vista previa de las tarjetas localmente (sin clave de API, datos simulados):

npm run preview:ui

Luego abre previews/vehicle-card.html, previews/market-value.html y previews/recalls.html en un navegador.


🛠️ Herramientas Disponibles y Prompts de Ejemplo

A continuación se muestra una lista de todas las herramientas disponibles de CarsXE, sus parámetros y prompts de ejemplo. Estos prompts funcionan en cualquier cliente conectado a MCP.

1. get_vehicle_specs 🚙

  • Descripción: Obtén especificaciones completas del vehículo por VIN (Especificaciones del Vehículo)

  • Parámetros:

    • vin (cadena, requerido): Número de Identificación del Vehículo de 17 caracteres
  • Prompts de Ejemplo:

    ¿Cuáles son las especificaciones completas para el VIN WBAFR7C57CC811956?

    ¿Es un V6 o V8? VIN: WBAFR7C57CC811956

    ¿Qué nivel de equipamiento es WBAFR7C57CC811956?

  • Salida: Especificaciones del vehículo en formato Markdown (año, marca, modelo, motor, dimensiones, colores, equipamiento, etc.)


2. decode_license_plate 🏷️

  • Descripción: Decodifica la placa de un vehículo para obtener el VIN e información básica (Decodificador de Placas)

  • Parámetros:

    • plate (cadena, requerido): Número de placa
    • state (cadena, opcional): Abreviatura del estado (ej., CA)
    • country (cadena, requerido, predeterminado: US): Código de país
  • Prompts de Ejemplo:

    ¿Qué auto tiene la placa 7XER187 en California?

    Decodifica la placa 7XER187 estado CA

    Busca la placa ABC1234 en Texas

  • Salida: Resumen en Markdown de la información del vehículo decodificada (VIN, marca, modelo, año, etc.)


3. decode_international_vin 🌍

  • Descripción: Decodifica un VIN internacional para obtener información detallada (Decodificador VIN Internacional)

  • Parámetros:

    • vin (cadena, requerido): VIN de 17 caracteres
  • Prompts de Ejemplo:

    Decodifica este VIN europeo: WF0MXXGBWM8R43240

    ¿Qué auto es WAUZZZ8K9AA123456? Es un VIN alemán.

  • Salida: Markdown con detalles del vehículo internacional (fabricante, especificaciones, emisiones, etc.)


4. get_market_value 💰

  • Descripción: Obtén el valor de mercado estimado de un vehículo por VIN (Valor de Mercado del Vehículo)

  • Parámetros:

    • vin (cadena, requerido): VIN de 17 caracteres
    • state (cadena, opcional): Abreviatura del estado de EE. UU.
    • mileage (número, opcional): Kilometraje actual del vehículo para ajustar el valor de mercado
    • condition (cadena, opcional): Condición general del vehículo — excellent, clean, average o rough
  • Prompts de Ejemplo:

    ¿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 WBAFR7C57CC811956 en Florida con 45,000 millas en condición limpia?

  • Salida: Markdown con desglose del valor de mercado (precio minorista, intercambio, MSRP, etc.)


5. get_vehicle_history 🕓

  • Descripción: Obtén un informe completo del historial del vehículo por VIN (Historial del Vehículo)

  • Parámetros:

    • vin (cadena, requerido): VIN de 17 caracteres
    • format (cadena, opcional): Formato de respuesta (json o xml)
  • Prompts de Ejemplo:

    ¿Ha estado WBAFR7C57CC811956 alguna 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 (Imágenes de Vehículos)

  • Parámetros:

    • make (cadena, obligatorio)
    • model (cadena, obligatorio)
    • year, trim, color, transparent, angle, photoType, size, license, format (todos opcionales)
  • Ejemplos de Prompts:

    Muéstrame fotos de una Toyota Tacoma azul 2018

    Obtén imágenes de un Ford Mustang GT rojo 2022

    ¿Cómo se ve un Tesla Model 3 blanco 2020?

  • Salida: Markdown con hasta 5 imágenes (enlaces, miniaturas, detalles)


7. get_vehicle_recalls 🚨

  • Descripción: Obtén información de retiros de vehículos por VIN (Retiros de Vehículos)

  • Parámetros:

    • vin (cadena, obligatorio): VIN de 17 caracteres
  • Ejemplos de Prompts:

    ¿Tiene 1C4JJXR64PW696340 algún retiro abierto?

    Acabo de comprar el VIN 1C4JJXR64PW696340 — ¿debería preocuparme por retiros?

    Verifica retiros de seguridad para WBAFR7C57CC811956

  • Salida: Markdown con detalles del retiro (fecha, descripción, riesgo, remedio, estado, etc.)


8. read_license_plate_from_image 🏷️

  • Descripción: Reconoce y extrae la(s) placa(s) de una imagen de vehículo a partir de una URL (Decodificador de Placas de Vehículos)

  • Parámetros:

    • imageUrl (cadena, 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://imagedelivery.net/moyiiSImjJPI_EZVxNMBBw/f49aed53-d736-4370-f3f4-97418841c800/public

    Lee la placa de esta foto: [image URL]

  • Salida: Markdown con placas detectadas, puntuaciones de confianza, cuadros delimitadores, tipo de vehículo, etc.


9. extract_vin_from_image 🔍

  • Descripción: Extrae el VIN de una imagen de vehículo usando OCR

  • Parámetros:

    • imageUrl (cadena, 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 (Especificaciones de Vehículos)

  • Parámetros:

    • year (cadena, obligatorio)
    • make (cadena, obligatorio)
    • model (cadena, obligatorio)
    • trim (cadena, opcional)
  • Ejemplos de Prompts:

    ¿Cuáles son las especificaciones de un Toyota Camry 2020?

    Cuéntame sobre el acabado Sport del Honda Civic 2019

    ¿Qué colores estaban disponibles en el Ford F-150 2021?

  • Salida: Markdown con detalles del vehículo, colores, características, opciones y paquetes


11. decode_obd_code 🛠️

  • Descripción: Decodifica un código OBD y obtén información de diagnóstico

  • Parámetros:

    • code (cadena, obligatorio): Código OBD (ej., P0115)
  • Ejemplos de Prompts:

    Mi luz de check engine está encendida con el código P0115 — ¿qué significa?

    Decodifica el código OBD P0300

    Tengo un código C1234 en mi tablero — ¿es grave?

  • Salida: Markdown con código, diagnóstico y fecha


12. check_lien_and_theft 🔒

  • Descripción: Obtén información de gravámenes y robos para un vehículo por VIN

  • Parámetros:

    • vin (cadena, obligatorio): Número de Identificación del Vehículo de 17 caracteres
  • Ejemplos de Prompts:

    ¿Hay algún gravamen sobre WBAFR7C57CC811956?

    Estoy comprando un auto usado con VIN WBAFR7C57CC811956 — verifica si está robado

    Verifica que el título esté limpio para WBAFR7C57CC811956

  • Salida: Markdown con información del titular del gravamen, registros de robo, fechas de recuperación y estado


13. get_recalls_by_ymm 🚨

  • Descripción: Obtén información de retiros de seguridad por año, marca y modelo (sin necesidad de VIN) (Retiros de Vehículos)

  • Parámetros:

    • year (cadena, obligatorio): Año del modelo de 4 dígitos
    • make (cadena, obligatorio)
    • model (cadena, obligatorio)
  • Ejemplos de Prompts:

    ¿Hay retiros en un Toyota Corolla 2026?

    Verifica retiros de seguridad para un Honda Civic 2019

    ¿Qué retiros afectan a los Ford F-150 2020?

  • Salida: Markdown con números de campaña de NHTSA, componentes, riesgo y remedios


14. submit_recalls_batch 📦

  • Descripción: Envía una verificación de retiros por lotes asíncrona para hasta 10,000 VINs (Retiros de Vehículos)

  • Parámetros:

    • vins (string[] o cadena separada por comas, opcional)
    • csv (cadena, opcional): CSV en línea de VINs
    • csvUrl (cadena, opcional): URL HTTPS a un CSV de VINs
    • webhookUrl (cadena, opcional): webhook HTTPS cuando el lote termine
  • Ejemplos de Prompts:

    Envía un lote de retiros para los VINs 1HGBH41JXMN109186, 5YJSA1E26HF000001 y 1C4JJXR64PW696340

    Inicia una verificación de retiros por lotes desde esta URL CSV: https://example.com/vins.csv

  • Salida: Markdown con batchId y estado. Consulta get_recalls_batch_status a continuación.


15. get_recalls_batch_status 📦

  • Descripción: Verifica el estado de un lote de retiros previamente enviado (Retiros de Vehículos)

  • Parámetros:

    • batchId (cadena, obligatorio)
  • Ejemplos de Prompts:

    ¿Cuál es el estado del lote de retiros brb_mnablbn7_wvbaqv?

  • Salida: Markdown con estado, conteos de VIN procesados y tasa de coincidencia


16. get_recalls_batch_results 📦

  • Descripción: Obtén los resultados completos de retiros por lotes como JSON (después de que el estado sea completed o partial) (Retiros de Vehículos)

  • Parámetros:

    • batchId (cadena, obligatorio)
  • Ejemplos de Prompts:

    Obtén los resultados de retiros para el lote brb_mnablbn7_wvbaqv

  • Salida: Resumen en Markdown por VIN (truncado para lotes grandes)


17. download_recalls_batch 📦

  • Descripción: Descarga los resultados completos de retiros por lotes como CSV (Retiros de Vehículos)

  • Parámetros:

    • batchId (cadena, obligatorio)
  • Ejemplos de Prompts:

    Descarga el CSV para el lote de retiros brb_mnablbn7_wvbaqv

  • Salida: Vista previa en Markdown del CSV


18. get_ymm_options 📋

  • Descripción: Lista opciones en cascada de año, marca, modelo, acabado o variante para menús desplegables (Especificaciones de Vehículos)

  • Parámetros:

    • dimension (cadena, opcional): years | makes | models | trims | variants
    • year, make, model, trim (todos filtros opcionales)
  • Ejemplos de Prompts:

    ¿Para qué años tiene datos de vehículos CarsXE?

    Lista los modelos de Toyota

    ¿Qué variantes de Tacoma estaban disponibles en 2026?

  • Salida: Lista en Markdown de la dimensión inferida o solicitada


19. get_ownership_by_vin 👤

  • Descripción: Enterprise — busca al(los) propietario(s) registrado(s) de un VIN

  • Parámetros:

    • vin (cadena, obligatorio): VIN de 17 caracteres
    • include (cadena, opcional): demographics,emails,phones,vehicle_history
  • Ejemplos de Prompts:

    ¿Quién es el propietario registrado del VIN 1FT8X3BT0BEA61538?

  • Salida: Markdown con propietarios, información de contacto, demografía e historial del vehículo. Se factura por registro de propietario.


20. get_ownership_by_person 👤

  • Descripción: Enterprise — busca una persona por nombre, dirección y código postal

  • Parámetros:

    • firstName, lastName, address, zip (obligatorios)
    • include (cadena, opcional)
  • Ejemplos de Prompts:

    Busca a John Sample en 123 Example St, CP 90210

  • Salida: Markdown con personas coincidentes, información de contacto y vehículos vinculados


21. get_ownership_by_address 👤

  • Descripción: Enterprise — busca residentes en una dirección + código postal

  • Parámetros:

    • address, zip (obligatorios)
    • include, variant (opcionales; prefiere include)
  • Ejemplos de Prompts:

    ¿Quién vive en 123 Example St en el CP 90210?

  • Salida: Markdown con residentes y vehículos vinculados


22. get_ownership_by_zip 👤

  • Descripción: Enterprise — busca personas en un código postal de 5 dígitos con filtros opcionales

  • Parámetros:

    • zip (cadena, obligatorio)
    • gender, minAge, maxAge, income, page, limit, include, variant (opcionales)
  • Ejemplos de Prompts:

    Encuentra personas en el CP 90210 mayores de 45 años

    Busca en el CP 49646 mujeres con código de ingreso F

  • Salida: Página en Markdown de registros coincidentes. Se factura por registro devuelto (límite predeterminado 15, máximo 100).


23. render_vehicle_card 🖼️

  • Descripción: Renderiza una tarjeta visual de identidad VIN + especificaciones clave. Siempre llama a get_vehicle_specs primero y pasa su structuredContent. (Especificaciones de Vehículos)

  • Parámetros: vin (obligatorio) más año, marca, modelo, acabado, estilo, motor, transmisión, tracción, combustible, MPG, asientos, MSRP y país de fabricación opcionales

  • Ejemplos de Prompts:

    Obtén especificaciones para el VIN WBAFR7C57CC811956, luego muestra la tarjeta del vehículo.

  • Salida: Tarjeta iframe de MCP Apps / ChatGPT. El respaldo de texto resume el vehículo.


24. render_market_value 🖼️

  • Descripción: Renderiza bandas de valor minorista y de intercambio. Siempre llama a get_market_value primero y pasa su structuredContent. (Valor de Mercado del Vehículo)

  • Ejemplos de Prompts:

    ¿Cuánto vale el VIN WBAFR7C57CC811956 en California? Luego muestra la tarjeta de valor de mercado.

  • Salida: Tarjeta iframe de MCP Apps / ChatGPT. El respaldo de texto resume la valoración.


25. render_recalls 🖼️

  • Descripción: Renderiza una lista de retiros abiertos. Siempre llama a get_vehicle_recalls primero y pasa su structuredContent. (Retiros de Vehículos)

  • Ejemplos de Prompts:

    Verifica retiros para el VIN 1C4JJXR64PW696340 y muestra la tarjeta de retiros.

  • Salida: Tarjeta iframe de MCP Apps / ChatGPT. El respaldo de texto informa el número de retiros.


🔗 Encadenamiento de Herramientas — Ejemplos para Usuarios Avanzados

El verdadero poder de CarsXE MCP proviene de encadenar herramientas en una sola conversación:

Escenario 1 — Debida diligencia previa a la compra:

  1. Decodifica la placa 7XER187 en California

  2. Ahora obtén su historial completo

  3. ¿Tiene algún retiro abierto?

  4. ¿Cuánto vale si lo compro hoy?

Escenario 2 — Viste un auto en la calle:

  1. Lee la placa de esta imagen: [photo URL]

  2. Busca esa placa en Texas

  3. Muéstrame fotos de ese modelo de auto

Escenario 3 — Mecánico / taller de servicio:

  1. Decodifica este VIN de la foto del tablero: [image URL]

  2. Obtén sus especificaciones completas

  3. Mi cliente dice que el código de check engine es P0300 — ¿qué significa para este vehículo?

Escenario 4 — Escaneo de retiros de flota sin VINs:

  1. Lista los modelos de Toyota para 2020

  2. Verifica retiros para un Toyota Camry 2020

  3. Envía un lote de retiros para estos VINs de inventario: [list]

  4. Verifica el estado del lote, luego muestra los resultados


🔐 OAuth 2.1 (conector personalizado de Claude.ai)

El servidor alojado en https://mcp.carsxe.com/mcp admite dos métodos de autenticación:

  1. Clave API (sin cambios) — encabezado X-API-Key, Authorization: Bearer <api-key> o parámetro de consulta ?key=. Utilizado por Claude Desktop / mcp-remote y clientes locales.
  2. 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 cliente (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 de CarsXE del usuario; los tokens de actualización (mcp_rt_*, 90 d) se rotan en cada actualización.

Las solicitudes sin credenciales reciben 401 con un desafío WWW-Authenticate, que es lo que solicita a Claude.ai iniciar el flujo.

Variables de entorno

VariableValor por defectoPropósito
OAUTH_ISSUERhttps://mcp.carsxe.comEmisor / base del endpoint en los metadatos de descubrimiento
OAUTH_WEB_BASEhttps://api.carsxe.comAplicación web de CarsXE que aloja la lógica de OAuth
MCP_OAUTH_INTERNAL_SECRET(sin definir)Se define en el entorno del host, nunca se confirma. Cuando no está definido, los tokens de portador OAuth se rechazan, pero la autenticación por clave de API sigue funcionando.

El despliegue de Cloudflare Workers (src/index.ts) no sirve la superficie de OAuth — solo el despliegue de GCP Cloud Run (src/index.gcp.ts) detrás de mcp.carsxe.com lo hace.