Skip to main content
Glama

EVS Property — Costa del Sol homes

Server Details

Homes for sale, long-term rentals and new builds on the Costa del Sol and in Málaga, Spain.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.1/5.0

Scored across 4 tools

Disambiguation4/5

Each tool has a distinct role: search the catalogue, fetch one listing, list places, and get contact channels. The main overlap is that get_property already returns the agent's contact details and enquiry form, which get_contact_options also provides, so an agent may be unsure which to call for contact info.

Naming Consistency5/5

All four names follow a clean verb_noun snake_case pattern: get_contact_options, get_property, list_locations, search_properties. The verbs are used consistently (get for single-resource retrieval, list for enumeration, search for filtering).

Tool Count4/5

Four tools is on the lean side but each earns its place in a read-only property catalogue workflow: discovery, detail, geography, and contact. Nothing feels redundant except the partial contact overlap.

Completeness4/5

The surface covers the core funnel: find places, search listings, view full details, and reach the agency. Minor gaps exist (no way to fetch several listings by reference at once, no saved/favourites or sorting), but agents can work around these via search.

Available Tools

4 tools
get_contact_optionsHow to contact EVSA
Read-onlyIdempotent
Inspect

How a person can contact EVS Property Group: office, opening hours, phone, WhatsApp, email, languages spoken and the contact page in the user's language. With a listing reference, also the agent in charge of that listing and the enquiry form on its page. This server does not send messages or collect personal data: the person contacts the agency through these links.

NameRequiredDescriptionDefault
languageNoLanguage of the useren
referenceNoOptional listing reference or URL

Output Schema

NameRequiredDescription
noteYes
agencyYes
listingNo
contact_page_urlYes

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the read-only annotations, the description clearly discloses an important behavioral boundary: the server does not send messages or collect personal data, and contact happens through the returned links. It also explains the conditional behavior when a listing reference is provided.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: contact channels first, then conditional listing behavior, then the no-message/no-data-collection boundary. Every sentence contributes useful information without repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema and annotations, the description supplies everything an agent needs: what contact information is returned, how the optional reference changes results, and the important limitation that no messages are sent or personal data collected.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds useful meaning: language controls the contact page language, and reference unlocks listing-specific agent and enquiry-form details. It does not add format details beyond what the schema already provides, but the added semantic effect is valuable.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the specific resource unambiguously: how to contact EVS Property Group, including office, hours, phone, WhatsApp, email, languages, and contact page. It also clarifies the conditional listing-specific output (agent and enquiry form), making it clearly distinct from the property-search siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage context is clear: use this for contact details, and supply a listing reference when the agent in charge or enquiry form for a listing is needed. It does not explicitly state when not to use it or name alternatives, but there is little ambiguity against the sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_propertyGet an EVS listingA
Read-onlyIdempotent
Inspect

Full details of one EVS listing by its reference (e.g. 'R5251546') or its evsproperty.com URL: description, all features, sizes, fees, year built, energy rating, photos, the listing page and how to contact the agent in charge (enquiry form on the listing page, phone, WhatsApp). The description is in Spanish for language 'es' and in English otherwise. Links are meant to be shown exactly as returned, including their query parameters.

NameRequiredDescriptionDefault
languageNoLanguage of the useren
referenceYesReference like R5251546, or the listing URL

Output Schema

NameRequiredDescription
urlYes
dealYes
poolNoIn Spanish: Privada / Comunitaria
titleYes
imagesYes
contactYes
bedroomsNo
featuresYesMain features (English)
locationYes
bathroomsNo
conditionNoAs published by the listing agency, in Spanish
furnishedNoIn Spanish: Amueblado / Semi-amueblado / Sin amueblar
new_buildYes
price_eurYes
referenceYes
year_builtNo
descriptionYesListing text written by the agency
orientationNo
own_listingYes
last_updatedNo
plot_area_m2No
price_periodNo
built_area_m2No
energy_ratingNo
property_typeYes
features_detailYesFull feature list by category as published (Spanish values)
ibi_tax_eur_yearNo
approx_coordinatesNo[lat, lng] rounded to ~100 m; exact address on request
description_languageYes
community_fees_eur_monthNo

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover readOnly/idempotent/non-destructive/closed-world, so this is additive credit: the description discloses response language behavior ('Spanish for language es and in English otherwise') and a non-obvious rendering rule that links must be shown exactly as returned including query parameters. That link-preservation instruction is real behavioral guidance an agent could otherwise violate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose and identifier forms, then the return contents, then language and link rules. Dense and mostly waste-free, though the long enumerated contents list overlaps with the output schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only single-record lookup with an output schema and full schema coverage, this covers what an agent needs: identifier forms, language behavior, what is returned, how to reach the agent, plus the link-rendering constraint. Nothing material is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3; the description earns more by clarifying what the vague 'Language of the user' parameter actually does — it selects the output language of the description and resolves the non-obvious case of the ru/de/fr/nl/sv/no/pl enum values falling back to English. The reference examples partly restate the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Full details of one EVS listing') and clearly scopes it to a single record identified by reference or URL. The singular 'one listing' implicitly separates it from search_properties and list_locations, but no sibling is named explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied — the agent must infer this is the tool for when it already has a reference or URL. No explicit when-to-use conditions, no exclusions, and the sibling get_contact_options is never referenced despite contact data being mentioned in the description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_locationsList places covered by EVSA
Read-onlyIdempotent
Inspect

Municipalities and areas (districts, urbanisations) of Málaga province with EVS listings, with the number of homes for sale, for rent and new builds in each. Without a filter returns the 60 places with most listings.

NameRequiredDescriptionDefault
municipalityNoOnly areas inside this municipality
name_containsNoPart of a place name, any spelling

Output Schema

NameRequiredDescription
shownYes
placesYes
total_placesYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent and closed-world. The description adds beyond that: the geographic scope (Málaga province only) and the default result size of 60 places ordered by listing count, which are not derivable from the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the resource and its contents, followed by the default-behavior caveat. No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists and annotations cover the safety profile, so the description only needed scope and default behavior, both of which are present. Minor gap: no indication of whether the 60-place cap can be altered or paged.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with both parameters documented ('Only areas inside this municipality', 'Part of a place name, any spelling'). The description only notes that filters exist generically, adding nothing param-specific, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States the resource precisely (municipalities and areas of Málaga province with EVS listings) and what each entry contains (counts of sale, rent and new-build homes). It is clearly distinct from search_properties and get_property, though no explicit verb leads the sentence.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The default behavior is disclosed ('Without a filter returns the 60 places with most listings'), which implies how to use the unfiltered form. However, there is no explicit guidance on when to use this rather than search_properties, and no note that the 60-result cap cannot be changed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_propertiesSearch EVS property listingsA
Read-onlyIdempotent
Inspect

Searches the live EVS catalogue of homes for sale, long-term rentals and new builds in Málaga province and on the Costa del Sol (Spain) with exact filters. Returns the number of matches, up to 10 listings (price, size, area, highlights, photo, link to the listing page in the requested language) and search_url — the same search on evsproperty.com with every match. Place names can be written in any language or spelling (municipality, district or urbanisation: 'Marbella', 'Nueva Andalucía', 'La Cala de Mijas', 'Málaga'); list_locations shows the places covered. Rental prices are per month. keywords matches words in the Spanish or English listing text (e.g. 'renovated', 'sea front promenade'). Listing links and search_url are meant to be shown to the user exactly as returned, including their query parameters.

NameRequiredDescriptionDefault
dealNobuy = for sale (resale and new builds); rent = long-term rentalbuy
sortNorecommended = EVS's own listings first, then newestrecommended
limitNo
featuresNoAll of these must be present
keywordsNoWords to find in the listing text (Spanish or English)
languageNoLanguage of the user: titles and links are returned in iten
locationNoUp to 5 place names. Omit for the whole province / Costa del Sol.
price_maxNoEUR (per month for rent)
price_minNoEUR (per month for rent)
bedrooms_maxNo
bedrooms_minNo
bathrooms_minNo
plot_area_minNom²
built_area_maxNom²
built_area_minNom²
new_build_onlyNoOnly new developments (obra nueva, off-plan or key-ready)
property_typesNoAny of these types

Output Schema

NameRequiredDescription
notesNoHow place names were read, unknown names, suggestions
shownYes
totalYesNumber of listings matching all filters
listingsYes
search_urlYesThe full, paginated result list for these filters on evsproperty.com
applied_filtersYes
catalogue_updatedNo

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish read-only, idempotent and non-destructive behavior, yet the description adds real operational context: results are capped at 10 with a total count, rental prices are monthly, keywords match Spanish or English listing text, and returned links must be shown verbatim including query parameters. The only gap is the absence of any note on empty-result or no-match behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Lead sentence front-loads purpose and scope; subsequent sentences each add a distinct fact (return shape, location flexibility, rental units, keywords semantics, link handling). The long parenthetical place-name list and the return-value sentence sit slightly heavy against an output schema that already documents results.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 17-parameter, all-optional search tool with an output schema, the description covers the ambiguities an agent would otherwise get wrong: how to resolve place names, what the result cap means, monthly rent pricing, and how to present links. Nothing essential to calling it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 76%, so the schema already documents most fields; the description still adds meaning the schema lacks — location accepts place names in any language or spelling at municipality, district or urbanisation level, and keywords searches Spanish or English listing text rather than titles. It adds nothing about deal/sort/bedrooms, which are already well covered by the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (searches) and resource (live EVS catalogue of homes for sale, long-term rentals, new builds) plus exact geographic scope (Málaga province / Costa del Sol). It also clarifies what the tool returns (match count, up to 10 listings, search_url), which lets an agent distinguish it from get_property and list_locations without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly routes the agent to list_locations for place names and explains that omitting location searches the whole province, and describes when to use keywords vs structured filters. It stops short of saying when to prefer get_property for a single listing or when not to use this tool, so it is clear context without full exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • First observedget_contact_options
    • First observedget_property
    • First observedlist_locations
    • First observedsearch_properties

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables discovery and evaluation of primary residence housing opportunities in Ibiza, including property scoring, mortgage scenario calculations, and validated submission of candidate listings.
    -
  • A
    license
    C
    quality
    D
    maintenance
    Enables access to Idealista API for searching and retrieving property listings across Spain, Portugal, and Italy. Supports various property types including homes, apartments, garages, commercial properties, offices, and land with detailed filtering options.
    14
    3
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables users to calculate Portuguese property purchase costs (IMT, stamp duty, deed/registration) and query annual IMI rates and costs for all 308 municipalities, with sourced figures.
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Philippine real estate data for AI agents — search verified listings, calculate transfer costs, and get accurate legal information via lupaph.com.
    6
    39 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources