Ir al contenido principal

Servidor MCP de Ubidots

Crea aplicaciones de IA que interactúen con tus datos

Escrito por Sergio M

Descripción general

El Protocolo de Contexto de Modelo (MCP) permite que las aplicaciones de IA se conecten de forma segura a APIs externas. En proyectos IoT, esto significa que tu aplicación de IA puede decidir automáticamente si necesita llamar a la API de Ubidots para responder a una consulta del usuario.

Ejemplos:

  • "¿Qué dispositivos están fuera de línea?"

  • "Muestra los últimos valores de temperature para el dispositivo aws810".

  • "¿Cuál fue la temperature promedio de ayer de Machine ABC".

  • "¿Cuál es el valor medio de la variable temperature en el dispositivo aws810".

En este artículo exploramos el uso del MCP de Ubidots desde:

  • Claude Desktop

  • API de Anthropic


Usar el servidor MCP de Ubidots desde Claude Desktop

Requisitos previos

  • Una cuenta de Ubidots y un token de API de Ubidots (con alcance para la organización que deseas usar).

  • Claude Desktop instalado (macOS/Windows/Linux).

Paso a paso

  1. Abre la Configuración de Claude Desktop
    Inicia Claude Desktop → ConfiguraciónDesarrollador.

  2. Editar configuración
    Haz clic en Editar configuración para abrir claude_desktop_config.json.

  3. Agrega la entrada del servidor MCP de Ubidots
    Pega el fragmento a continuación en el JSON (combínalo con tu mcpServers existente si ya existe).
    Reemplaza <YOUR UBIDOTS TOKEN> con tu token real.

    {
    "mcpServers": {
    "ubidots": {
    "command": "npx",
    "args": [
    "-y",
    "mcp-remote",
    "https://mcp.ubidots.com/mcp",
    "--header",
    "Authorization:${AUTH_HEADER}"
    ],
    "env": {
    "AUTH_HEADER": "Bearer <YOUR UBIDOTS TOKEN>"
    }
    }
    }
    }

    Notas

    • Si mcpServers ya existe, agrega solo el bloque "ubidots" dentro de él.

    • Mantén la sintaxis JSON válida (comas, llaves).

    • La URL anterior (/mcp) expone todas las herramientas disponibles. Consulta las rutas MCP con alcance definido a continuación para restringir el acceso por entidad o nivel de permiso.

  4. Guardar y recargar Claude
    Guarda el archivo y reinicia Claude Desktop (o usa "Recargar" si está disponible).

  5. Verifica la conexión


    En un nuevo chat de Claude, asegúrate de que el MCP esté habilitado y prueba esto:

    • "¿Qué dispositivos están en línea?"

    Si está configurado correctamente, Claude debería confirmar que la herramienta MCP está disponible y devolver datos en tiempo real desde Ubidots.

Solución de problemas

Claude no muestra la herramienta de Ubidots

  • Reinicia Claude después de editar la configuración.

  • Verifica la validez del JSON (usa un validador de JSON en línea si es necesario).

  • Asegúrate de que npx esté disponible en el PATH de tu sistema.

401 / No autorizado

  • Verifica que el encabezado sea exactamente: x-auth-token: <YOUR UBIDOTS TOKEN>.

  • Comprueba que el token no haya expirado ni sido revocado.

Errores de red

  • Confirma que tienes conexión a internet y que no estás detrás de un proxy o firewall que bloquee el HTTPS saliente.

  • Inténtalo de nuevo más tarde en caso de problemas de red transitorios.

Múltiples servidores MCP configurados

  • Asegúrate de que no haya claves duplicadas con el nombre ubidots.

  • Si renombraste el servidor, recuerda que el nombre que verás dentro de Claude coincidirá con esa clave.

Actualizar o eliminar la integración

  • Actualizar token: Abre claude_desktop_config.json, reemplaza el token en el encabezado, guarda y recarga Claude.

  • Deshabilitar: Elimina o comenta el bloque "ubidots" bajo mcpServers, guarda y recarga Claude.


Usar el servidor MCP de Ubidots con la API de Anthropic

Si bien Claude Desktop es ideal para pruebas, no refleja escenarios del mundo real, donde los usuarios querrán interactuar con un agente de IA a través de Slack, WhatsApp o un chat web dentro de tu aplicación basada en Ubidots.

En tales escenarios, usar una API de IA como la API de OpenAI o la API de Anthropic te permitirá añadir la capa de inteligencia necesaria a tu caso de uso.

A continuación se muestra una solicitud de ejemplo que usarías desde una aplicación de este tipo para interactuar tanto con las consultas de tus usuarios como con el MCP de Ubidots:

curl https://api.anthropic.com/v1/messages \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "content-type: application/json" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: mcp-client-2025-04-04" \
-d '{
"model": "claude-3-5-sonnet-20240620",
"max_tokens": 500,
"system": "You are a smart IoT assistant. If you need device data, use the attached MCP.",
"messages": [
{"role": "user", "content": "List my devices"}
],
"mcp_servers": [
{
"type": "url",
"name": "ubidots",
"url": "https://mcp.ubidots.com/mcp",
"authorization_token": "YOUR_UBIDOTS_TOKEN"
}
]
}'

Para obtener más información sobre el conector MCP de Anthropic, visita su documentación oficial.


Rutas MCP con alcance definido

De forma predeterminada, conectarse a https://mcp.ubidots.com/mcp expone todas las herramientas disponibles a la IA. Puedes reducir esto usando una ruta más específica — ya sea para restringir los permisos (solo lectura) o para limitar el alcance a una entidad específica (dispositivos, variables, etc.).

Esto es útil por dos razones:

  • Seguridad: Puedes garantizar que la IA solo tenga acceso de lectura, o que solo pueda interactuar con un subconjunto específico de tus datos.

  • Eficiencia de tokens: Exponer menos herramientas significa que se envía menos contexto al modelo de IA en cada solicitud, reduciendo el consumo de tokens de entrada.

Rutas disponibles

Ruta

Descripción

/mcp

Todas las herramientas (lectura y escritura) para todas las entidades

/mcp/readonly

Todas las herramientas, restringidas a operaciones de solo lectura

/mcp/_/devices

Todas las herramientas con alcance solo a dispositivos

/mcp/_/devices/readonly

Herramientas de solo lectura con alcance solo a dispositivos

/mcp/_/variables

Todas las herramientas con alcance solo a variables

/mcp/_/variables/readonly

Herramientas de solo lectura con alcance solo a variables

/mcp/_/device-groups

Todas las herramientas con alcance solo a grupos de dispositivos

/mcp/_/device-groups/readonly

Herramientas de solo lectura con alcance solo a grupos de dispositivos

/mcp/_/device-types

Todas las herramientas con alcance solo a tipos de dispositivos

/mcp/_/device-types/readonly

Herramientas de solo lectura con alcance solo a tipos de dispositivos

/mcp/_/organizations

Todas las herramientas con alcance solo a organizaciones

/mcp/_/organizations/readonly

Herramientas de solo lectura con alcance solo a organizaciones

/mcp/_/events

Todas las herramientas con alcance solo a eventos

/mcp/_/events/readonly

Herramientas de solo lectura con alcance solo a eventos

Ejemplo: acceso de solo lectura a dispositivos

En una configuración de Claude Desktop, simplemente reemplaza la URL:

"args": [
"-y",
"mcp-remote",
"https://mcp.ubidots.com/mcp/_/devices/readonly",
"--header",
"Authorization:${AUTH_HEADER}"
]

En una llamada a la API de Anthropic:

"mcp_servers": [
{
"type": "url",
"name": "ubidots",
"url": "https://mcp.ubidots.com/mcp/_/devices/readonly",
"authorization_token": "YOUR_UBIDOTS_TOKEN"
}
]


Preguntas frecuentes

¿Funciona con otros clientes MCP?

Sí. Cualquier cliente compatible con MCP puede conectarse a https://mcp.ubidots.com/mcp (o a cualquiera de las rutas con alcance definido) usando el mismo encabezado Authorization.

¿El servidor es local?
No. El servidor MCP de Ubidots está alojado en la nube, lo que elimina la necesidad de ejecutarlo localmente y habilita aplicaciones como bots de IA en WhatsApp.

¿Puedo usar múltiples cuentas de Ubidots?
Sí — crea entradas separadas (por ejemplo, ubidots-prod, ubidots-staging) con diferentes tokens.


Herramientas MCP

El servidor MCP de Ubidots proporciona acceso de lectura a los datos de tu cuenta y permite consultar información de las siguientes entidades:

  • Dispositivos

Incluye variables asociadas y tipo de dispositivo.

  • Variables

Accede a los metadatos y valores de las variables.

  • Tipos de dispositivos

Incluye dispositivos asociados y organización.

  • Grupos de dispositivos

Incluye dispositivos y, para cada uno, sus variables y tipo de dispositivo.

  • Organizaciones

Lee metadatos a nivel de organización.

  • Eventos

Lee datos de eventos.

Lista de funciones de agregación estadística disponibles en el servidor MCP

El servidor MCP puede calcular resultados agregados sobre las variables del usuario usando las siguientes operaciones:

  • Primero

  • Último

  • Mínimo

  • Máximo

  • Conteo

  • Suma

  • Media

  • Desviación estándar

  • Percentil 25

  • Percentil 50

  • Percentil 75


Ejemplos de consultas para comenzar

  • "Lista las organizaciones y muestra el número de dispositivos de cada una."

  • "Para el dispositivo aws810, lista las variables y muestra las últimas marcas de tiempo y valores."

  • "¿Cuál es la temperatura promedio a la que el aire acondicionado está funcionando en cada piso?"


Si encuentras problemas o tienes solicitudes de nuevas funciones para el servidor MCP de Ubidots, cuéntanos qué cliente estás usando, tu sistema operativo y una copia redactada de tu configuración de mcpServers para que podamos ayudarte más rápido.

¿Ha quedado contestada tu pregunta?