CasaNest

Search public property listings in Portugal, compare homes and read INE housing statistics.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
93%
Integridad del esquema
81%
Calidad de los nombres
95%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (1)

  • LOWTool 'compare_properties' description lacks action verben compare_properties

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~1,116Tokens (definiciones de herramientas)
~2.0 KBTamaño de respuesta típico
Impacto moderado en la atención (0.87% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "catalogue": {
      "url": "https://casanest.eu/mcp"
    }
  }
}

Puntos de conexión remotos

https://casanest.eu/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (4)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢search_properties(purpose, district, municipality, property_type, typology, ...)

Search currently published properties in Portugal by exact structured filters. Requires purpose; municipality requires district. Rental budgets require month/week/night. Up to 20 results, cursor tied to filters. No results means no matches; do not widen filters without asking.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "purpose": {
      "type": "string",
      "enum": [
        "sale",
        "rent",
        "vacation",
        "exchange"
      ]
    },
    "district": {
      "description": "Portuguese district slug, e.g. leiria. Does not mean municipality.",
      "type": "string",
      "minLength": 1,
      "maxLength": 160,
      "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
    },
    "municipality": {
      "description": "Municipality slug; requires its district, e.g. district=leiria, municipality=leiria.",
      "type": "string",
      "minLength": 1,
      "maxLength": 160,
      "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
    },
    "property_type": {
      "type": "string",
      "enum": [
        "apartment",
        "room",
        "house",
        "land",
        "shop",
        "office",
        "warehouse",
        "garage",
        "building",
        "farm",
        "other"
      ]
    },
    "typology": {
      "type": "string",
      "enum": [
        "t0",
        "t1",
        "t2",
        "t3",
        "t4",
        "t5",
        "t6plus"
      ]
    },
    "price_min": {
      "type": "number",
      "minimum": 0,
      "maximum": 10000000000
    },
    "price_max": {
      "type": "number",
      "minimum": 0,
      "maximum": 10000000000
    },
    "rent_period": {
      "description": "Required with a rent/vacation budget: prices in different periods are not comparable.",
      "type": "string",
      "enum": [
        "month",
        "week",
        "night"
      ]
    },
    "bedrooms_min": {
      "type": "integer",
      "minimum": 0,
      "maximum": 100
    },
    "net_area_min": {
      "type": "number",
      "minimum": 0,
      "maximum": 10000000
    },
    "features": {
      "maxItems": 18,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "elevator",
          "balcony",
          "terrace",
          "garage",
          "pool",
          "garden",
          "airConditioning",
          "storageRoom",
          "alarm",
          "security",
          "gatedCommunity",
          "centralHeating",
          "fireplace",
          "jacuzzi",
          "soundSystem",
          "wineCellar",
          "furnished",
          "accessibility"
        ]
      }
    },
    "locale": {
      "default": "pt",
      "type": "string",
      "enum": [
        "pt",
        "en"
      ]
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    },
    "cursor": {
      "type": "string",
      "maxLength": 240,
      "pattern": "^[A-Za-z0-9_-]+$"
    }
  },
  "required": [
    "purpose"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_property(id, locale)

Get current public details using the public id returned by search_properties. Draft, archived, sold, removed or unknown properties return not found. No private owner/contact/CRM data.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[1-9][0-9]{0,9}$"
    },
    "locale": {
      "default": "pt",
      "type": "string",
      "enum": [
        "pt",
        "en"
      ]
    }
  },
  "required": [
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢compare_properties(ids, locale)

Compare 2–4 distinct public property IDs using the same fields and explicit EUR/period/m2 units. Null is unknown. Fails if any requested property is no longer public.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "ids": {
      "minItems": 2,
      "maxItems": 4,
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[1-9][0-9]{0,9}$"
      }
    },
    "locale": {
      "default": "pt",
      "type": "string",
      "enum": [
        "pt",
        "en"
      ]
    }
  },
  "required": [
    "ids"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_area_statistics(district, municipality, locale)

Read INE median completed dwelling sale value per m2 for a Portuguese municipality, with period, source and license. Not asking prices, rents, a valuation or forecast. Requires both district and municipality slugs.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "district": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160,
      "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
    },
    "municipality": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160,
      "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
    },
    "locale": {
      "default": "pt",
      "type": "string",
      "enum": [
        "pt",
        "en"
      ]
    }
  },
  "required": [
    "district",
    "municipality"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada4 herramientas
verificadoversión no registrada4 herramientas