accueil / serveurs / Recherche & Web / app.evlek/mcp-server
app.evlek/mcp-server
serveur MCP (Model Context Protocol) · evlek-mcp 3.1.4
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que app.evlek/mcp-server est sûr ?
Au dernier audit MCP Hub, le serveur MCP « app.evlek/mcp-server » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 8 outils
- compare_listings≈ 1720 tokens
Compare 2 to 4 public Evlek listings side by side in the user's language: price, price per m² (only when the built area is believable), rooms, bathrooms, built area and plot area (always separate), location, furnishing, key features and data-quality notes, plus a few descriptive highlights (lowest price, largest indoor area, most recently listed). `ids` takes listing ids (UUID), listing numbers (EVL-100464) or evlek.app listing links, in any mix; the order you give is kept. Sale and rent listings are never ranked against each other: a mixed request is shown in two groups with a warning. A reference that is unknown or no longer public is listed in `missingIds` with code NOT_FOUND (this is not an error). Descriptive facts only: no valuation and no recommendation. Pass the user's language as `locale` (tr, en, ru, de or ar).
Paramètres, retour & exemple (2)
Paramètresids· array · requis
2 to 4 listings, in any mix of ids, numbers and links. The order is kept.locale· string · optionnel · tr | en | ru | de | ar
Language of the answer and of the links. Pass the language the user writes in. Default en.
Exemple d'appel{"name": "compare_listings", "arguments": {"ids": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"code": "texte", "count": 1, "groups": [], "issues": [], "locale": "tr", "missing": 1, "compared": [], "insights": [], "warnings": [], "retryable": true, "dataSource": "texte", "isEstimate": true}} - convert_currency≈ 944 tokens
Converts an amount between GBP, EUR, USD and TRY with the exchange rates Evlek stores (refreshed daily) and returns all four equivalents. Currency conversion only: no payment plan, deposit or instalment schedule, tax, fee or acquisition-cost estimate, no advice. Rates older than 24 hours are flagged as stale; beyond 72 hours (or when none are stored) no conversion is produced (FX_UNAVAILABLE).
Paramètres, retour & exemple (3)
Paramètresamount· number · requis
Amount to convert: a property price, a monthly rent, any amount from 1 up. Not a deposit or an instalment plan.locale· string · optionnel · tr | en | ru | de | ar
Language of the answer and the number format. Pass the language the user writes in. Default en.currency· string · optionnel · GBP | EUR | USD | TRY
Currency of the amount. Default GBP. Lower case, symbols (£ € $ ₺) and names (pound, euro, dollar, lira) are read.
Exemple d'appel{"name": "convert_currency", "arguments": {"amount": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"fx": {}, "code": "texte", "stale": true, "issues": [], "reason": "unavailable", "amounts": {}, "priceGBP": 1, "warnings": [], "retryable": true, "dataSource": "texte", "rateAgeHours": 1, "contentLocale": "tr"}} - fetch≈ 1791 tokens
Fetch the full detail of one Evlek listing: title, price, location, rooms, areas, amenities, data-quality notes and the canonical link. The id is the listing id (UUID) from a search result, a listing number such as EVL-100464, or an evlek.app listing link; the answer language follows the link (English otherwise). A listing that is not available (it does not exist, is not public, or was removed) always gets the same answer. Same data as get_listing: this fixed id-only form exists for the ChatGPT/OpenAI connector contract. Use when: an id from search is known. Don't use for: discovery (use search first) or another answer language (use get_listing).
Paramètres, retour & exemple (1)
Paramètresid· string · requis
Evlek listing id (UUID) from search, a listing number such as EVL-100464, or an evlek.app listing link
Exemple d'appel{"name": "fetch", "arguments": {"id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"id": "texte", "url": "texte", "code": "texte", "text": "texte", "found": true, "title": "texte", "locale": "tr", "listing": {}, "metadata": {}, "photoUrls": [], "requested": "texte", "retryable": true}} - get_listing≈ 2706 tokens
Get the full details of ONE public Evlek listing (sale or long-term rent) in the user's language. `ref` is the listing id (UUID), the listing number (EVL-100464 or just 100464) or an evlek.app listing link in any language. Returns the price, rooms, bathrooms, built area and plot area (always separate), the approximate location, features, the office name, dates, data-quality notes, photos with captions where they exist, AI virtual-staging before/after images when the office approved them (always labelled as AI-generated) and the canonical link. Contact details are never included: send the user to the link. A listing that is unknown or no longer public answers found:false with code NOT_FOUND (this is not an error). Pass the user's language as `locale` (tr, en, ru, de or ar).
Paramètres, retour & exemple (2)
Paramètresref· string · requis
The listing: its id (UUID), its listing number (EVL-100464 or 100464) or an evlek.app listing link in any language.locale· string · optionnel · tr | en | ru | de | ar
Language of the answer and of the links. Pass the language the user writes in. Default en.
Exemple d'appel{"name": "get_listing", "arguments": {"ref": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"id": "texte", "ref": "texte", "url": "texte", "area": {}, "city": "texte", "code": "texte", "dates": {}, "floor": 1, "found": true, "media": {}, "price": {}, "rooms": {}}} - list_locations≈ 2856 tokens
List the places Evlek knows in Northern Cyprus (6 cities, districts, villages, sub-areas, landmarks, the Karpaz region) with their public sale and long-term rent listing counts. Call it first when unsure how a place is spelled: every name and id returned is accepted by the other tools. Pass `city` (any spelling or language) for one place in detail. Names are Turkish or Latin; Russian, German and Arabic spellings are accepted as input but not listed.
Paramètres, retour & exemple (4)
Paramètrescity· string · optionnel
One place in detail: any spelling or language of a city, district or village ("Kyrenia", "Alsancak"). Omit to list every city.locale· string · optionnel · tr | en | ru | de | ar
Language of the answer. Pass the language the user writes in. Default en.includeEmpty· boolean · optionnel
Also list places that have no public listing right now. Default false.includeAliases· boolean · optionnel
Also list accepted alternative spellings of each place (at most 6, Latin script). Default false.
Exemple d'appel{"name": "list_locations", "arguments": {"city": "texte", "locale": "tr", "includeEmpty": true, "includeAliases": true}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"code": "texte", "notes": [], "place": {}, "scope": {}, "cities": [], "issues": [], "totals": {}, "registry": {}, "warnings": [], "ambiguous": true, "retryable": true, "outOfScope": {}}} - market_stats≈ 1411 tokens
Market statistics for Northern Cyprus from asking prices of active public listings (not sales, valuations or forecasts). No city = the island by city; one city = its districts; several = side by side; city + district = a district profile. Sale and rent are reported separately. Each figure has activeCount (public listings in scope) and sampleCount (the cleaned sample behind the statistic); below 10 sampled listings it is withheld. Pass locale.
Paramètres, retour & exemple (5)
Paramètrescity· array · optionnel
City names in any language, e.g. ["Girne"]. One gives its districts, two or more are compared (max 6). Omit for the whole island.locale· string · optionnel · tr | en | ru | de | ar
Language of the answer text, number formats and links (default en). Pass the language the user is writing in.district· string · optionnel
A district, village or region (Alsancak, Long Beach, Karpaz) for a profile. The city is inferred when the name is unambiguous.transaction· string · optionnel · sale | rent
'sale' or 'rent' (long-term). Omit for both: they are reported separately and never mixed.propertyType· array · optionnel
Limit to property types or groups, e.g. ["apartment"] or ["house"]. Price statistics cover residential types only.
Exemple d'appel{"name": "market_stats", "arguments": {"city": [], "locale": "tr", "district": "texte", "transaction": "sale", "propertyType": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"asOf": "texte", "code": "texte", "mode": "overview", "type": "sale", "cities": [], "issues": [], "locale": "texte", "totals": {}, "dataAsOf": "texte", "district": {}, "warnings": [], "dataSource": "live_active_listings"}} - search≈ 3582 tokens
Use only for research and citation lookups (deep research). To show listings to the user, use search_listings instead. Search live Northern Cyprus (KKTC/TRNC) property listings on Evlek with a free-text query in Turkish, English, Russian, German or Arabic. Returns matching listings as id/title/url for the fetch tool, newest first (sale and rent as two groups when the query names neither). The answer language follows the language of the query. Same data as search_listings: this fixed form exists for the ChatGPT/OpenAI connector contract. Use when: the caller only has a free-text query ("2+1 apartment in Kyrenia under 150000 pounds", "EVL-100464"). Don't use for: structured filters, paging or another answer language: use search_listings.
Paramètres, retour & exemple (1)
Paramètresquery· string · requis
Free-text property search query
Exemple d'appel{"name": "search", "arguments": {"query": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"code": "texte", "query": "texte", "shown": 1, "split": true, "total": 1, "groups": [], "issues": [], "locale": "tr", "lookup": {}, "assumed": [], "fxRates": {}, "message": "texte"}} - search_listings≈ 4505 tokens
Use this when the user wants to find or see property listings; results are shown with real photos in the Evlek widget. Search live Evlek property listings for sale and long-term rent in Northern Cyprus (KKTC/TRNC; prices in GBP unless a currency is given; 2+1 means bedrooms 2) with structured filters: transaction, city, district, property type, bedrooms, price, areas, amenities, nearby university. Pass the user's language as `locale` (tr|en|ru|de|ar): the text, amenity names, number formats and links follow it. Returns at most 10 listings per call, each as one readable line (type, place, price, rooms, area, a deterministic sentence, data notes, canonical link) plus a structured card; continue with the `nextCursor` of a group. Without `transaction`, listings for sale and for rent come as two separate groups, each with its own cursor that is only valid together with that group's transaction. Place names in any language are resolved; an unknown place returns suggestions instead of results. An amenity that cannot be filtered on is reported as not applied. For one listing use `get_listing`. Returns advertised asking-price and listing facts only: not a valuation, verification of property-specific claims, forecast, ranking or recommendation.
Paramètres, retour & exemple (25)
Paramètresbbox· object · optionnel
Map rectangle in Northern Cyprus, WGS84 degrees: {west, south, east, north}. For "this map area" only; otherwise use city and district.city· array · optionnel
City names in any language, e.g. ["Girne"] or ["Kyrenia", "Famagusta"]; ANY match counts. Towns and villages go in `district`.sort· string · optionnel · newest | price-low | price-high | price-per-sqm-asc | area-large | area-small | nearest-uni
Order, default 'newest'. price-low = cheapest first, price-high = dearest first (both need transaction); others: see schema description.limit· integer · optionnel
Number of listings to return, 1-10 (default 8, maximum 10). Ask for more with `cursor`, never with a larger limit.cursor· string · optionnel
Pass the previous `nextCursor` with the SAME filters, sort and transaction. Opaque: never build or edit it. Requires `transaction`.locale· string · optionnel · tr | en | ru | de | ar
Language of the response text, feature names, number formats and links: tr, en, ru, de, ar (default en). Pass the language the user is writing in.areaMax· number · optionnel
Maximum closed (built, indoor) area in m², inclusive.areaMin· number · optionnel
Minimum CLOSED (built, indoor) area in m², inclusive. For plots and gardens use landAreaMin instead.bedrooms· object · optionnel
Bedrooms as an object: {"exact": 3}, {"min": 2} or {"min": 2, "max": 4}; integers 0-20. Use exact for "a 3-bedroom".currency· string · optionnel · GBP | EUR | USD | TRY
Currency of priceMin and priceMax: GBP (default), EUR, USD or TRY. Converted to GBP on the server at the current Evlek rate.district· array · optionnel
Districts, towns or villages in any language, e.g. ["Alsancak"]; ANY match counts. With city ["Girne"], ["Merkez"] means Girne Merkez.features· array · optionnel
Amenities the listing must have (ALL must match), any language, e.g. ["pool", "sea view", "elevator"]. Others are reported as not filterable.priceMax· number · optionnel
Maximum price, inclusive, in `currency` ("under 300000" → 300000): the asking price for sale, the monthly rent for rent. Requires `transaction`.priceMin· number · optionnel
Minimum price, inclusive, in `currency`: the asking price for sale, the monthly rent for rent. Requires `transaction`.furnished· boolean · optionnel
true = furnished listings only, false = unfurnished only. Omit for both.noDeposit· boolean · optionnel
Rentals only: true = no security deposit is required.landAreaMax· number · optionnel
Maximum plot (land) area in m², inclusive.landAreaMin· number · optionnel
Minimum plot (land) area in m², inclusive: villas, houses, bungalows and land.transaction· string · optionnel · sale | rent
'sale' or 'rent' (long-term). REQUIRED with priceMin, priceMax, a price sort or cursor. Omit only to browse both together.availableNow· boolean · optionnel
Rentals only: true = can be moved into immediately. Without `transaction` the search is limited to rent.bathroomsMin· integer · optionnel
Minimum number of bathrooms, inclusive (1-20).contractType· string · optionnel · monthly | semester | yearly | cash | installment
Contract type. Rentals: 'monthly', 'semester' or 'yearly'. Sales: 'cash' or 'installment'. Must fit `transaction`.propertyType· array · optionnel
Property types, ANY match: single types or groups (house, land, commercial), e.g. ["apartment", "penthouse"] or ["house"].billsIncluded· boolean · optionnel
Rentals only: true = the rent includes utility bills. Without `transaction` the search is limited to rent.nearUniversity· object · optionnel
Listings close to one university, e.g. {"code": "NEU", "maxMeters": 1000}. Useful for student housing.
Exemple d'appel{"name": "search_listings", "arguments": {"bbox": {}, "city": [], "sort": "newest", "limit": 1, "cursor": "texte", "locale": "tr"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"code": "texte", "refs": [], "shown": 1, "split": true, "total": 1, "groups": [], "issues": [], "locale": "tr", "fxRates": {}, "listings": [], "topMatch": {}, "warnings": []}}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».