orkasa

El conector

Permisos y alcance

Qué puede llegar a ver un asistente, qué no se expone nunca, y por qué.

El techo del conector

Un conector MCP es la única credencial que un corredor entrega sin leer un contrato: pega una URL en Claude y pulsa « Autorizar ». Por eso el techo no lo pone el vocabulario completo de la API, sino lo que las nueve herramientas llaman de verdad:

leads:read      leads:write
operations:read operations:write
properties:read
viewings:read   viewings:write
offers:read     offers:write
documents:read
signatures:read
agents:read

Un permiso que nadie consume es un permiso que solo puede ser abusado.

Lo que no se expone, y por qué

No hay properties:write. Crear un anuncio es el flujo Publicar: la compuerta del mandato, la mejora de las fotos, la adaptación por portal. Una propiedad sacada de una frase sería un borrador con aspecto de anuncio.

No hay documents:write ni signatures:write. Nada que ponga una firma delante de un cliente arranca de la suposición de un asistente.

El criterio no es « ¿sabe hacerlo la API? » sino « ¿basta una frase para quererlo? ». Agendar una visita a las cuatro, sí. Mandar un mandato, no.

Un permiso declarado no siempre alcanza

Cuando una herramienta compone varias familias de datos, su permiso declarado se queda corto — y entonces comprueba los demás por su cuenta.

buscar está guardada por leads:read pero devuelve también propiedades: verifica properties:read ella misma. ver_expediente hace lo mismo sección por sección, y dice en permisos_faltantes lo que quitó.

Sin ese campo, una sección vacía por falta de permiso sería indistinguible de una sección realmente vacía, y el asistente contestaría « no tiene visitas » sobre un expediente que tiene tres.

Dos fronteras, en dos sitios distintos

La agencia la sostienen las políticas de la base de datos, reforzadas por un filtro explícito de agencia en cada consulta. El conector corre con credenciales de servicio, así que la política no es la frontera aquí: lo es ese filtro.

El agente, dentro de la agencia, no lo sostiene ninguna política: es una regla de producto, la misma que aplica la aplicación al mostrar las pantallas. El conector la aplica al pie de la letra:

se filtra por
clientesagente asignado
propiedadesagente de la ficha
visitasagente de la visita
operacionespor los clientes asignados, dentro de la consulta

Un dueño o un administrador no está restringido; un captador, un cerrador o un asistente ve su propio carnet. Sin esto, un asistente conectado con el consentimiento de un captador leía todo el pipeline de la agencia — más de lo que la aplicación le enseña a esa misma persona, que es peor de explicar que un error.

Una clave de API (ork_live_…) sigue siendo de alcance agencia: no tiene autor, la emite el corredor para su agencia, y eso es lo que promete la v1 desde el principio. Ver Claves de API.

mi_jornada y agenda aceptan además un alcance: un responsable puede pedir toda la casa, un agente restringido no. El parámetro nunca amplía más allá del rol.