Vera Conecta será el puente opcional entre una instalación local de Vera y los clientes MCP que viven en Internet. La instalación inicia una conexión saliente; la persona no abre puertos, no administra una IP pública y no instala Tailscale.
ChatGPT / Claude / otro cliente MCP
|
| HTTPS + OAuth o bearer revocable
v
https://conecta.mediafranca.net/v/<id-publico>/mcp
|
| Cloudflare Worker + Durable Object
v
WebSocket saliente persistente
|
v
Vera Desktop -> MCP local
M0 completo, M1 casi completo. Las cinco specs Allium (specs/*.allium) fijan
el contrato; cada una deja preguntas abiertas explícitas todavía sin decidir.
Probado extremo a extremo, sin memoria real:
installation-link.allium: emparejamiento de un solo uso, apertura del canal WebSocket hibernable, latido, desplazamiento de conexión, revocación por silencio o abandono, rotación de secreto y revocación de la instalación. Falta sóloDesktopRegeneraIdPublico, aplazada porque exige migrar estado entre Durable Objects y la propia spec no resuelve si conserva las autorizaciones de cliente.client-grants.allium: autorizar un cliente MCP por instalación, que reclame su credencial propia, y revocarlo — individualmente o en cascada al revocar la instalación completa.
Nada de esto todavía toca MCP en sí ni el grafo de Vera: sigue faltando
mcp-relay.allium, el endpoint /v/:id/mcp que un cliente MCP remoto (Claude,
Codex, etc.) usaría de verdad con la credencial que emite client-grants. /health
responde; las rutas que aún no tienen contrato probado (MCP, OAuth) contestan
501 deliberadamente.
No hay ningún ambiente desplegado: sólo se ha probado con wrangler dev y con
la suite sobre @cloudflare/vitest-pool-workers.
- Producto: Vera Conecta.
- Repositorio:
vera-conecta. - Producción:
https://conecta.mediafranca.net. - MCP por instalación:
https://conecta.mediafranca.net/v/<id-publico>/mcp. - Hospedaje: Cloudflare Workers + Durable Objects con WebSockets hibernables.
- Zona DNS: la cuenta y zona existentes de
mediafranca.neten Cloudflare. - Plan: Free durante desarrollo; Workers Paid antes de una prueba externa.
- Memoria: el relay nunca conserva páginas, bloques, adjuntos ni respuestas MCP.
- Alcance y producto
- Modelo de dominio y recorridos
- Arquitectura
- Contratos de transporte
- Seguridad y privacidad
- Cloudflare y despliegue
- Operación
- Brief para Allium
- Plan de implementación
- Fuentes técnicas
npm install
npm run typecheck
npm test
npm run devNo ejecutar npm run deploy:production ni asociar el dominio sin revisión de
seguridad y autorización explícita. Los secretos se cargan con wrangler secret put; jamás se escriben en Git, ejemplos, issues o logs.