Ideal para: negocios que necesitan guardar en su sitio web información que no encaja en ningún otro módulo — reservas de clases, inscripciones a un taller, registros de mantenimiento, listas de espera — y que cada visitante pueda crear y consultar lo suyo.
1. ¿Qué es el módulo de Datos?
Datos te da una base de datos propia dentro de MGPanel. Si Funciones son tus endpoints, Datos es tu base de datos: guarda información desde tu sitio web y decide quién puede leerla o escribirla, sin contratar Firebase ni Supabase y sin montar un servidor.
- Si diriges el negocio: puedes ofrecer áreas privadas a tus clientes sin depender de un programador para cada cambio.
- Si programas el sitio: tienes una API lista y un SDK de JavaScript ya cargado en la página.
- Si usas un agente de IA: puede consultar y crear registros por ti desde Claude, ChatGPT o Cursor.
Cuándo NO usar Datos
2. Dónde encuentro el módulo
- Ingresa al panel y ve a Sitio Web → Datos (
/data). - Verás una tabla con tus colecciones, cuántos documentos tiene cada una, quién puede hacer qué y si están cifradas.
- Las tarjetas de arriba resumen el total de colecciones, documentos, cuántas están cifradas y cuántas están abiertas en internet.
3. Conceptos en dos minutos
- Colección: un conjunto de registros del mismo tipo. Por ejemplo
reservas. - Documento: cada registro dentro de una colección. Por ejemplo una reserva concreta.
- Campos filtrables: los campos por los que podrás buscar u ordenar. Se declaran al crear la colección (máximo 5). El resto del contenido se guarda igual, pero no se puede filtrar por él.
- Reglas: qué puede hacer un visitante de tu sitio con esa colección. Se definen por operación.
4. Crear una colección (paso a paso)
4.1 Abre el formulario
- Pulsa “Nueva colección” arriba a la derecha.
- Ponle un nombre (lo verás en el panel) y un identificador en minúsculas y sin espacios: es el que usarás en el código, por ejemplo
reservas.
4.2 Elige quién podrá usarla
En vez de configurar reglas una por una, elige un preset. Siempre puedes afinarlo después.
| Preset | Qué permite |
|---|---|
| Privada total | Nadie accede desde el sitio web. Solo tú, desde el panel o por API. |
| Área privada del cliente | Cada visitante con sesión crea, ve y edita solo lo suyo. Nadie borra. |
| Buzón | Cualquiera puede enviar, nadie puede leer desde el sitio. |
| Catálogo público | Cualquiera puede leer desde el sitio. Solo tú escribes. |
Toda colección nace cerrada
4.3 Elige el cifrado
- Sin cifrar: el contenido se guarda tal cual.
- Cifrado en el servidor (recomendado): protege el contenido si alguien obtuviera una copia de la base de datos. Tú lo sigues viendo con normalidad en el panel.
El cifrado no se puede cambiar una vez que la colección tiene documentos: los ya guardados quedarían ilegibles.
4.4 Declara los campos filtrables
Añade hasta cinco campos indicando su tipo (texto, número, sí/no o fecha). Solo por estos podrás filtrar y ordenar. Puedes cambiarlos después.
5. Usar la colección desde tu sitio web
Abre la colección y ve a la pestaña “Código para tu web”. Ahí tienes un fragmento listo para pegar en el JavaScript de tu sección: funciona tal cual, sin cambiar ninguna URL.
// Leer
const reservas = await mgData.list('reservas', {
where: [{ field: 'estado', op: 'eq', value: 'activa' }]
});
// Crear
await mgData.create('reservas', {
clase: 'Reformer 7am',
fecha: '2026-09-26',
estado: 'activa'
});El objeto mgData ya está disponible en todas las páginas de tu sitio en cuanto activas el módulo. Sus métodos son:
mgData.list(coleccion, opciones)— lista registros, con filtros opcionales.mgData.get(coleccion, id)— un registro concreto.mgData.create(coleccion, datos)— crea un registro.mgData.update(coleccion, id, datos)— reemplaza su contenido.mgData.remove(coleccion, id)— lo elimina.mgData.isSignedIn()— indica si el visitante tiene sesión iniciada.mgData.watch(coleccion, callback)— relee cada pocos segundos y avisa cuando algo cambia.
5.1 Filtros disponibles
Solo se puede filtrar por los campos que declaraste. Los operadores admitidos son:
eq,ne— igual, distinto.gt,gte,lt,lte— mayor y menor.in,nin— está o no está en una lista.exists— el campo existe.starts_with— empieza por (solo en campos de texto).
6. Ejemplo completo: reservas de clases
Un estudio quiere que sus alumnos reserven clases desde la web y que cada uno vea solo las suyas.
- Crea la colección
reservascon el preset Área privada del cliente y cifrado en el servidor. - Declara los campos filtrables:
fecha(fecha),clase(texto) yestado(texto). - Crea una página nueva —por ejemplo
mis-clases— y marca “Requiere inicio de sesión” en sus ajustes. - Pega el código de abajo en el JavaScript de la sección.
// Muestra las reservas del alumno y permite crear una nueva
async function pintarReservas() {
const reservas = await mgData.list('reservas');
document.getElementById('mis-reservas').innerHTML = reservas
.map(r => '<li>' + r.data.clase + ' — ' + r.data.fecha + '</li>')
.join('');
}
document.getElementById('form-reserva').addEventListener('submit', async (e) => {
e.preventDefault();
await mgData.create('reservas', {
clase: document.getElementById('clase').value,
fecha: document.getElementById('fecha').value,
estado: 'activa'
});
pintarReservas();
});
pintarReservas();El alumno se registra desde /login de tu sitio. No hace falta que configures nada más: la sesión del sitio le da identidad automáticamente, y cada alumno verá únicamente sus propias reservas.
7. Seguridad
- Toda colección nace cerrada: ninguna operación está permitida desde el sitio hasta que tú la abras.
- “Solo su dueño” es real: cuando una regla es de tipo dueño, pedir el registro de otro visitante no devuelve un error de permiso — devuelve que no existe. Nadie puede leer lo del vecino.
- El panel avisa en rojo antes de guardar si una operación va a quedar abierta en internet, y marca esas colecciones en el listado.
- Solo tu dominio: las llamadas desde el sitio de otra cuenta se rechazan, aunque sea otro sitio hecho en MGPanel.
- Los datos de sistema los pone el servidor: el dueño de un registro y sus fechas no se pueden falsear desde el navegador.
Antes de poner algo en “Cualquiera (público)”
8. Límites de tu plan
| Límite | Plan Gratis | Plan Avanzado |
|---|---|---|
| Colecciones | 3 | 25 |
| Documentos | 2.000 | 50.000 |
| Tamaño por documento | 256 KB | 256 KB |
| Campos filtrables por colección | 5 | 5 |
Puedes consultar tu consumo actual en las tarjetas de la parte superior del módulo.
9. Conectar con un agente de IA
Datos está disponible por MCP: Claude, ChatGPT, Cursor o Gemini pueden crear colecciones, consultar registros y añadirlos por ti.
- Ve a Configuración → API y crea una llave con el permiso Datos marcado.
- Conéctala a tu agente como explica la guía de API y conexión con agentes de IA.
- Con esa llave, el agente ve todos los registros, también los de cada visitante: las reglas gobiernan tu sitio web, no el panel.
10. Buenas prácticas
- Empieza cerrado: deja la colección privada, prueba desde el panel y abre solo lo que necesites.
- Declara pocos campos filtrables: solo aquellos por los que de verdad vas a buscar.
- Usa el módulo nativo cuando exista: si lo que guardas son clientes o productos, su módulo te dará mucho más.
- Cifra lo sensible: si guardas datos personales, deja el cifrado en el servidor activado.
11. Ayuda y soporte
- Pregunta a Emyi dentro del panel para resolver dudas rápidas sobre el módulo.
- Escribe a [email protected] si algo no funciona como esperas.
📌 Resumen express:
- Entra a Sitio Web → Datos y pulsa “Nueva colección”.
- Elige un preset: Área privada del cliente es el más común.
- Declara los campos por los que vas a filtrar.
- Copia el código de la pestaña “Código para tu web” y pégalo en tu página.
- Si la página debe ser privada, márcala con “Requiere inicio de sesión”.

