{
    "name": "Amoblados.co MCP Server",
    "version": "2.2.0",
    "status": "online",
    "protocol_version": "2024-11-05",
    "transports": [
        "streamable-http-post",
        "sse"
    ],
    "mcp_endpoint": "https://mcp.amoblados.co/",
    "capabilities": {
        "tools": {
            "listChanged": false
        },
        "resources": {
            "listChanged": false
        },
        "prompts": {
            "listChanged": false
        }
    },
    "tools": [
        {
            "name": "search_crm_clients",
            "description": "Busca prospectos y clientes en el CRM de amoblados.co por nombre, teléfono, email o ciudad.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "query": {
                        "type": "string",
                        "description": "Nombre, teléfono, email o ciudad del cliente"
                    }
                },
                "required": [
                    "query"
                ]
            }
        },
        {
            "name": "get_crm_triage_queue",
            "description": "Carga la lista de prospectos activos en el CRM para revisión individual uno a uno.",
            "inputSchema": {
                "type": "object",
                "properties": {}
            }
        },
        {
            "name": "update_crm_client_canvas",
            "description": "Actualiza el estado de un cliente y la nota visible en la tarjeta del Kanban/Canvas UI del CRM.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "client_id": {
                        "type": "integer",
                        "description": "ID del cliente en el CRM"
                    },
                    "status": {
                        "type": "string",
                        "description": "Nuevo estado (ej. Solicitud recibida, En negociación, Descarte)"
                    },
                    "notes": {
                        "type": "string",
                        "description": "Texto de la nota visible en la tarjeta del Canvas"
                    }
                },
                "required": [
                    "client_id",
                    "status",
                    "notes"
                ]
            }
        },
        {
            "name": "add_client_note",
            "description": "Agrega una nota de seguimiento o resumen de avance en la ficha del cliente.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "client_id": {
                        "type": "integer",
                        "description": "ID del cliente"
                    },
                    "text": {
                        "type": "string",
                        "description": "Texto detallado de la nota"
                    }
                },
                "required": [
                    "client_id",
                    "text"
                ]
            }
        },
        {
            "name": "schedule_crm_event",
            "description": "Agenda un evento de calendario (llamada, visita, cita, tarea) en la agenda del CRM.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "client_id": {
                        "type": "integer",
                        "description": "ID del cliente"
                    },
                    "client_name": {
                        "type": "string",
                        "description": "Nombre del cliente"
                    },
                    "event_type": {
                        "type": "string",
                        "description": "Tipo: llamada, cita, visita, tarea"
                    },
                    "title": {
                        "type": "string",
                        "description": "Título del evento"
                    },
                    "description": {
                        "type": "string",
                        "description": "Descripción corta"
                    },
                    "start_time": {
                        "type": "string",
                        "description": "Fecha y hora inicio YYYY-MM-DDTHH:MM"
                    }
                },
                "required": [
                    "client_id",
                    "client_name",
                    "event_type",
                    "title",
                    "start_time"
                ]
            }
        },
        {
            "name": "get_property_matches",
            "description": "Calcula automáticamente los inmuebles amoblados compatibles para un cliente determinado.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "client_id": {
                        "type": "integer",
                        "description": "ID del cliente"
                    }
                },
                "required": [
                    "client_id"
                ]
            }
        },
        {
            "name": "discard_crm_client",
            "description": "Registra el descarte justificado de un cliente en el CRM (Fuera de presupuesto, pago por días, sin respuesta).",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "client_id": {
                        "type": "integer",
                        "description": "ID del cliente"
                    },
                    "reason": {
                        "type": "string",
                        "description": "Razón de descarte estandarizada"
                    }
                },
                "required": [
                    "client_id",
                    "reason"
                ]
            }
        },
        {
            "name": "create_property_capture_sample",
            "description": "Guarda un requerimiento de cliente como nota muestra para captación de nuevos propietarios.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "client_id": {
                        "type": "integer",
                        "description": "ID del cliente"
                    },
                    "city": {
                        "type": "string",
                        "description": "Ciudad y zona"
                    },
                    "budget": {
                        "type": "string",
                        "description": "Presupuesto mensual COP"
                    },
                    "rooms": {
                        "type": "integer",
                        "description": "Número de habitaciones"
                    }
                },
                "required": [
                    "client_id",
                    "city",
                    "budget"
                ]
            }
        },
        {
            "name": "buscar_inmuebles_texto",
            "description": "Búsqueda libre de inmuebles amoblados por palabras clave (ej. villa country, mallorquín, prado, piscina, o enlace/slug de la propiedad).",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "query": {
                        "type": "string",
                        "description": "Texto de búsqueda, palabras clave, nombre o enlace/slug del inmueble"
                    },
                    "ciudad": {
                        "type": "string",
                        "description": "Ciudad (ej. Barranquilla, Cali, Bogotá)"
                    }
                },
                "required": [
                    "query"
                ]
            }
        },
        {
            "name": "get_property_availability",
            "description": "Consulta el catálogo de inmuebles amoblados disponibles en Barranquilla filtrando por sector, presupuesto y capacidad.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "sector": {
                        "type": "string",
                        "description": "Sector, barrio o zona deseada (ej. Norte, Alto Prado, Villa Country, Riomar, El Prado, 51B)"
                    },
                    "location": {
                        "type": "string",
                        "description": "Alias de sector/zona"
                    },
                    "precio_max": {
                        "type": "integer",
                        "description": "Presupuesto máximo mensual COP"
                    },
                    "max_price": {
                        "type": "integer",
                        "description": "Alias de precio_max"
                    },
                    "capacidad_min": {
                        "type": "integer",
                        "description": "Número mínimo de huéspedes o personas"
                    },
                    "rooms": {
                        "type": "integer",
                        "description": "Número de habitaciones"
                    },
                    "ciudad": {
                        "type": "string",
                        "description": "Ciudad (por defecto Barranquilla)"
                    }
                }
            }
        },
        {
            "name": "get_detailed_property_file",
            "description": "Obtiene la ficha técnica completa de un inmueble específico en amoblados.co.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "property_id": {
                        "type": "integer",
                        "description": "ID del inmueble en amoblados.co"
                    }
                },
                "required": [
                    "property_id"
                ]
            }
        },
        {
            "name": "publish_new_property",
            "description": "Publica o crea un nuevo apartamento amoblado en amoblados.co registrando el CPT Houzez.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "title": {
                        "type": "string",
                        "description": "Título de la propiedad"
                    },
                    "description": {
                        "type": "string",
                        "description": "Descripción detallada"
                    },
                    "price_cop": {
                        "type": "string",
                        "description": "Precio mensual COP"
                    },
                    "bedrooms": {
                        "type": "integer",
                        "description": "Número de habitaciones"
                    },
                    "bathrooms": {
                        "type": "integer",
                        "description": "Número de baños"
                    },
                    "address": {
                        "type": "string",
                        "description": "Dirección o barrio/zona"
                    }
                },
                "required": [
                    "title",
                    "price_cop"
                ]
            }
        },
        {
            "name": "update_property_status",
            "description": "Cambia el estado de una propiedad (publish, draft, private, pending).",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "property_id": {
                        "type": "integer",
                        "description": "ID del inmueble"
                    },
                    "status": {
                        "type": "string",
                        "description": "Nuevo estado"
                    }
                },
                "required": [
                    "property_id",
                    "status"
                ]
            }
        },
        {
            "name": "get_allies_directory",
            "description": "Retorna el directorio directo de aliadas y proveedores frecuentes con teléfonos confirmados.",
            "inputSchema": {
                "type": "object",
                "properties": {}
            }
        },
        {
            "name": "notify_property_owner_match",
            "description": "Envía una alerta automática por WhatsApp al propietario de un inmueble que coincide con un cliente.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "client_id": {
                        "type": "integer",
                        "description": "ID del cliente"
                    },
                    "property_id": {
                        "type": "integer",
                        "description": "ID de la propiedad"
                    }
                },
                "required": [
                    "client_id",
                    "property_id"
                ]
            }
        },
        {
            "name": "send_whatsapp_message",
            "description": "Envía un mensaje de WhatsApp a cualquier número telefónico vía Evolution API.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "phone": {
                        "type": "string",
                        "description": "Número destino E.164 (ej. 573107285886)"
                    },
                    "message": {
                        "type": "string",
                        "description": "Texto del mensaje"
                    }
                },
                "required": [
                    "phone",
                    "message"
                ]
            }
        },
        {
            "name": "obtener_status_crm",
            "description": "Obtiene estadísticas globales del CRM, versión y lista de ciudades activas.",
            "inputSchema": {
                "type": "object",
                "properties": {}
            }
        },
        {
            "name": "crear_cliente",
            "description": "Crea un nuevo cliente en el CRM con nombre, teléfono, ciudad y requerimiento.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "nombre_cliente": {
                        "type": "string",
                        "description": "Nombre completo del cliente"
                    },
                    "telefono": {
                        "type": "string",
                        "description": "Teléfono o WhatsApp"
                    },
                    "ciudad": {
                        "type": "string",
                        "description": "Ciudad (Bogotá, Cali, Medellín, etc.)"
                    },
                    "descripcion_requerimiento": {
                        "type": "string",
                        "description": "Detalle de lo que busca el cliente"
                    },
                    "email": {
                        "type": "string",
                        "description": "Correo electrónico"
                    },
                    "estado": {
                        "type": "string",
                        "description": "Estado inicial (defecto: Solicitud recibida)"
                    }
                },
                "required": [
                    "nombre_cliente",
                    "telefono",
                    "ciudad",
                    "descripcion_requerimiento"
                ]
            }
        },
        {
            "name": "analizar_cliente",
            "description": "Dispara el análisis inteligente en background para clasificar presupuesto, urgencia y zonas del cliente.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "cliente_id": {
                        "type": "integer",
                        "description": "ID del cliente a analizar"
                    }
                },
                "required": [
                    "cliente_id"
                ]
            }
        },
        {
            "name": "listar_proveedores",
            "description": "Lista y filtra propietarios/anfitriones por ciudad, estado o término de búsqueda.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "ciudad": {
                        "type": "string",
                        "description": "Ciudad"
                    },
                    "estado": {
                        "type": "string",
                        "description": "Estado (Prospecto, Activo)"
                    },
                    "buscar": {
                        "type": "string",
                        "description": "Término de búsqueda"
                    }
                }
            }
        },
        {
            "name": "obtener_proveedor",
            "description": "Obtiene la ficha técnica completa de un anfitrión/propietario por ID o teléfono.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "description": "ID del proveedor"
                    },
                    "telefono": {
                        "type": "string",
                        "description": "Teléfono del proveedor"
                    }
                }
            }
        },
        {
            "name": "crear_proveedor",
            "description": "Registra un nuevo propietario/anfitrión en la base de datos del CRM.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "nombre_propietario": {
                        "type": "string",
                        "description": "Nombre del anfitrión"
                    },
                    "telefono": {
                        "type": "string",
                        "description": "Teléfono o WhatsApp"
                    },
                    "ciudad": {
                        "type": "string",
                        "description": "Ciudad"
                    },
                    "email": {
                        "type": "string",
                        "description": "Email"
                    },
                    "notas": {
                        "type": "string",
                        "description": "Notas del inmueble"
                    }
                },
                "required": [
                    "nombre_propietario",
                    "telefono",
                    "ciudad"
                ]
            }
        },
        {
            "name": "actualizar_proveedor",
            "description": "Actualiza datos, notas o estado de un anfitrión/propietario existente.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "description": "ID del proveedor"
                    },
                    "ciudad": {
                        "type": "string",
                        "description": "Ciudad"
                    },
                    "estado": {
                        "type": "string",
                        "description": "Nuevo estado"
                    },
                    "notas": {
                        "type": "string",
                        "description": "Notas adicionales"
                    }
                },
                "required": [
                    "id"
                ]
            }
        },
        {
            "name": "analizar_proveedor",
            "description": "Genera un diagnóstico de nivel de interacción y atención del proveedor.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer",
                        "description": "ID del proveedor"
                    },
                    "telefono": {
                        "type": "string",
                        "description": "Teléfono del proveedor"
                    }
                }
            }
        },
        {
            "name": "listar_inmuebles",
            "description": "Consulta el catálogo de inmuebles del CRM por ciudad, capacidad y precio máximo.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "ciudad": {
                        "type": "string",
                        "description": "Ciudad"
                    },
                    "precio_max": {
                        "type": "integer",
                        "description": "Precio máximo mensual COP"
                    },
                    "capacidad_min": {
                        "type": "integer",
                        "description": "Huéspedes mínimos"
                    },
                    "buscar": {
                        "type": "string",
                        "description": "Término de búsqueda"
                    }
                }
            }
        },
        {
            "name": "enviar_email",
            "description": "Envía un correo electrónico a un cliente y lo registra en su bitácora.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "para": {
                        "type": "string",
                        "description": "Email destino"
                    },
                    "asunto": {
                        "type": "string",
                        "description": "Asunto del correo"
                    },
                    "cuerpo": {
                        "type": "string",
                        "description": "Contenido del correo"
                    },
                    "cliente_id": {
                        "type": "integer",
                        "description": "ID del cliente opcional"
                    }
                },
                "required": [
                    "para",
                    "asunto",
                    "cuerpo"
                ]
            }
        },
        {
            "name": "obtener_matriz_cruce_cliente",
            "description": "Consulta el historial y matriz de Cruces Activos de un cliente (proveedores notificados, disponibilidad y estado).",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "cliente_id": {
                        "type": "integer",
                        "description": "ID del cliente en el CRM"
                    }
                },
                "required": [
                    "cliente_id"
                ]
            }
        },
        {
            "name": "obtener_matriz_cruce_proveedor",
            "description": "Consulta la lista de clientes presentados y cruces pendientes de un anfitrión o proveedor.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "proveedor_id": {
                        "type": "integer",
                        "description": "ID del anfitrión/proveedor"
                    }
                },
                "required": [
                    "proveedor_id"
                ]
            }
        },
        {
            "name": "actualizar_estado_cruce",
            "description": "Actualiza el estado (enviado, respuesta_anfitrion, cita_agendada, cerrado, descartado) y disponibilidad (pendiente, disponible, ocupado) de un cruce.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "cruce_id": {
                        "type": "integer",
                        "description": "ID del cruce en wp_crm_cruces"
                    },
                    "estado_cruce": {
                        "type": "string",
                        "description": "Nuevo estado del cruce"
                    },
                    "disponibilidad": {
                        "type": "string",
                        "description": "pendiente, disponible u ocupado"
                    },
                    "notas": {
                        "type": "string",
                        "description": "Notas u observaciones del anfitrión"
                    },
                    "tarifa_propuesta": {
                        "type": "integer",
                        "description": "Tarifa mensual COP negociada"
                    }
                },
                "required": [
                    "cruce_id"
                ]
            }
        },
        {
            "name": "obtener_radar_conversaciones",
            "description": "Obtiene el historial de chat real (SendPulse y Evolution WhatsApp) para un cliente o anfitrión por su teléfono.",
            "inputSchema": {
                "type": "object",
                "properties": {
                    "telefono": {
                        "type": "string",
                        "description": "Número de teléfono (ej. 573208566851 o 3208566851)"
                    }
                },
                "required": [
                    "telefono"
                ]
            }
        }
    ]
}