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 — ya sea leyendo datos o realizando un cambio en tu nombre.
Ejemplos:
"¿Qué dispositivos están fuera de línea?"
"Muestra los últimos valores de
temperaturepara el dispositivoaws810"."¿Cuál fue la
temperaturepromedio de ayer deMachine ABC"."Crea un nuevo incidente para el dispositivo `aws810` con severidad P2."
"Actualiza la descripción del dispositivo `pump-04`."
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
Abre la Configuración de Claude Desktop
Inicia Claude Desktop → Configuración → Desarrollador.Editar configuración
Haz clic en Editar configuración para abrirclaude_desktop_config.json.Agrega la entrada del servidor MCP de Ubidots
Pega el fragmento a continuación en el JSON (combínalo con tumcpServersexistente 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
mcpServersya 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.
Guardar y recargar Claude
Guarda el archivo y reinicia Claude Desktop (o usa "Recargar" si está disponible).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
npxesté 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"bajomcpServers, 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 — incluyendo herramientas que crean o modifican datos, no solo los leen. 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, incidentes, etc.).
Esto es útil por tres 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.
Prevención de cambios no deseados: Dado que la mayoría de las entidades ahora admiten operaciones de escritura (crear o actualizar registros), se recomienda usar una ruta
/readonlypara cualquier caso de uso donde la IA no deba poder modificar tu cuenta — por ejemplo, un chatbot de reportes de solo lectura.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 |
| Todas las herramientas (lectura y escritura) para todas las entidades |
| Todas las herramientas, restringidas a operaciones de solo lectura |
| Todas las herramientas con alcance solo a dispositivos |
| Herramientas de solo lectura con alcance solo a dispositivos |
| Todas las herramientas con alcance solo a variables |
| Herramientas de solo lectura con alcance solo a variables |
| Todas las herramientas con alcance solo a grupos de dispositivos |
| Herramientas de solo lectura con alcance solo a grupos de dispositivos |
| Todas las herramientas con alcance solo a tipos de dispositivos |
| Herramientas de solo lectura con alcance solo a tipos de dispositivos |
| Todas las herramientas con alcance solo a organizaciones |
| Herramientas de solo lectura con alcance solo a organizaciones |
| Todas las herramientas con alcance solo a eventos (actualmente de solo lectura) |
| Igual que |
| Todas las herramientas con alcance solo a incidentes |
| Herramientas de solo lectura con alcance solo a incidentes |
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 a los datos de tu cuenta para las entidades que se indican a continuación. La mayoría de las entidades admiten tanto lectura como escritura — puedes consultar registros existentes, así como crearlos y actualizarlos. Eventos es actualmente de solo lectura.
Entidad | Herramientas de lectura | Herramientas de escritura |
Dispositivos |
|
|
Variables |
|
|
Tipos de Dispositivos |
|
|
Grupos de Dispositivos |
|
|
Organizaciones |
|
|
Eventos |
| — |
Incidentes |
|
|
Nota sobre Incidentes: La asignación y el estado de un incidente (reconocido, comentado) pueden actualizarse después de su creación, pero su severidad y descripción actualmente no pueden modificarse a través del MCP una vez creado.
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
Lectura de datos:
"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?"
Creación y actualización de datos:
"Crea un nuevo dispositivo llamado
pump-04bajo la organizaciónPlant North.""Actualiza la descripción del dispositivo
aws810a 'Compresor del ala norte'.""Crea un incidente P2 para el dispositivo
aws810sobre una falla de sensor.""Reconoce el incidente #1234 y deja un comentario indicando que estamos investigando."
"Muéstrame todos los incidentes activados que no están asignados a nadie."
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.

