Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
npm:evlek-mcp (package_npm) — from npm
Changed the definition of "compare_listings", "fetch", "get_listing" and 2 more
⟨95 unchanged words⟩ "type":["string","null"]},"areaLabel":{"type":["string","null"]},"areaSqm":{"description":"The BUILT area in ⟨52 unchanged words⟩ "]},"areaSuspect":{"type":"boolean"},"areaText":{"type":["string","null"]},"bathrooms":{"type":["number", ⟨426 unchanged words⟩
⟨45 unchanged words⟩ ":["net","gross",null]},"areaLabel":{"type":["string","null"]},"areaSqm":{"type":["number","null"]},"areaSuspect":{"type":"boolean"},"areaText":{"type":["string","null"]},"bathrooms":{"type":["number","null" ⟨327 unchanged words⟩ "type":["number","null"]},"label":{"type":["string","null"]},"plotM2":{"type":["number","null" ⟨5 unchanged words⟩ array"},"suspect":{"type":"boolean"},"text":{"type":["string","null"]}},"type":"object"},"city": ⟨207 unchanged words⟩
⟨140 unchanged words⟩ "type":["object","null"]},"label":{"description":"Its name: 'Gross area', 'Net area', 'Area' (basis not stated), 'Plot area' (land). Never call a gross area indoor, net or living area.","type":["string","null"]},"plotM2":{"type":["number","null" ⟨6 unchanged words⟩ "},"suspect":{"type":"boolean"},"text":{"description":"The area as printed: \"85 m² (gross)\", \"85 m² (net)\", \"85 m²\" when the basis is not stated; on land the plot.","type":["string","null"]}},"type":"object"},"areaBasis":{" ⟨54 unchanged words⟩ "type":["string","null"]},"areaLabel":{"type":["string","null"]},"areaSqm":{"description":"The BUILT area in ⟨52 unchanged words⟩ "]},"areaSuspect":{"type":"boolean"},"areaText":{"type":["string","null"]},"bathrooms":{"type":["number", ⟨707 unchanged words⟩
⟨501 unchanged words⟩ ":["net","gross",null]},"areaLabel":{"type":["string","null"]},"areaSqm":{"type":["number","null"]},"areaSuspect":{"type":"boolean"},"areaText":{"type":["string","null"]},"bathrooms":{"type":["number","null" ⟨341 unchanged words⟩ ":["net","gross",null]},"areaLabel":{"type":["string","null"]},"areaSqm":{"type":["number","null"]},"areaSuspect":{"type":"boolean"},"areaText":{"type":["string","null"]},"bathrooms":{"type":["number", ⟨472 unchanged words⟩
⟨396 unchanged words⟩ ":["net","gross",null]},"areaLabel":{"type":["string","null"]},"areaSqm":{"type":["number","null"]},"areaSuspect":{"type":"boolean"},"areaText":{"type":["string","null"]},"bathrooms":{"type":["number", ⟨421 unchanged words⟩
Changed the definition of "compare_listings", "fetch" and "get_listing"
⟨53 unchanged words⟩ no price per m² is derived from it),; 'net'otherwise,only when the publisher stated the area is net (Evlek does not measure it); null whenunknown.the basis is not stated, or there is no built area.","enum":["net","gross",null ⟨27 unchanged words⟩ figure (a plot-looking number on a small home, a closed area too small for its rooms); otherwise shown even when areaSuspect is true. ⟨442 unchanged words⟩
Changed the definition of "compare_listings", "fetch", "get_listing" and 2 more
⟨36 unchanged words⟩ the request.","items":{"properties":{"areaBasis":{"description":"'gross' when areaSqm is a gross figure (not the indoor area; no price per m² is derived from it), 'net' otherwise, null when unknown.","enum":["net","gross",null],"type":["string","null"]},"areaSqm":{"description":"The BUILT area inm²;m², as the listing page shows it: null on land (see plotM2).Shownand when the page withholds the figure (a plot-looking number on a small home); otherwise shown even when areaSuspect is true. A gross figure says so in areaBasis.","type":["number","null"]} ⟨123 unchanged words⟩
Changed the definition of "search" and "search_listings"
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 ⟨88 unchanged words⟩
⟨1132 unchanged words⟩ :"object"},"type":"array"},"priceRange":{"properties":{"currency":{"type":"string"},"max":{"type":"number"},"min":{"type":"number"},"period":{"type":"string"},"scope":{"type":"string"}},"type":["object","null"]},"query":{"description":"The query as read ⟨170 unchanged words⟩
Changed the definition of "compare_listings", "convert_currency", "get_listing" and 3 more
Compare EvlekListingslistings
⟨6 unchanged words⟩ ,"readOnlyHint":true,"title":"Compare EvlekListingslistings"}
CurrencyConversion
Changed the definition of "compare_listings", "convert_currency", "fetch" and 5 more
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Compare Evlek Listings"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Currency Conversion (GBP/EUR/USD/TRY)"}
Added "compare_listings", "get_listing" and "market_stats"; removed "compare_cities", "compare_properties", "get_district_profile" and 4 more; changed the definition of "convert_currency", "fetch", "list_locations" and 2 more (12 tools before, 8 now)
Converts anentered property asking-priceamountacross GBP/EUR/USD/TRY whenbetweencompleteGBP,validEUR,fresh,USDdate-stampedandstoredTRYFXwith the exchange ratesare
Certificate recorded, valid to 2026-12-03
Authorization not required
First tool surface recorded: 12 tools (server version 2.1.2)
Showing the latest 11 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
⟨340 unchanged words⟩ no price per m² is derived from it),; 'net'otherwise,only when the publisher stated the area is net (Evlek does not measure it); null whenunknown.the basis is not stated, or there is no built area.","enum":["net","gross",null ⟨230 unchanged words⟩
⟨25 unchanged words⟩ no price per m² is derived from it),; 'net'otherwise,only when the publisher stated the area is net (Evlek does not measure it); null whenunknown.the basis is not stated, or there is no built area.","enum":["net","gross",null ⟨27 unchanged words⟩ figure (a plot-looking number on a small home, a closed area too small for its rooms); otherwise shown even when area.suspect is true. ⟨53 unchanged words⟩ no price per m² is derived from it),; 'net'otherwise,only when the publisher stated the area is net (Evlek does not measure it); null whenunknown.the basis is not stated, or there is no built area.","enum":["net","gross",null ⟨27 unchanged words⟩ figure (a plot-looking number on a small home, a closed area too small for its rooms); otherwise shown even when areaSuspect is true. ⟨723 unchanged words⟩
⟨38 unchanged words⟩ shape as search_listings).","properties":{"areaBasis":{"enum":["net","gross",null]},"areaSqm":{"type":["number","null" ⟨272 unchanged words⟩ "properties":{"area":{"properties":{"basis":{"description":"'gross' when closedM2 is a gross figure (not the indoor area; no price per m² is derived from it), 'net' otherwise, null when unknown.","enum":["net","gross",null],"type":["string","null"]},"closedM2":{"type":["number","null"]}, ⟨110 unchanged words⟩ ["number","null"]},"perSqmGbp":{"description":"GBP per m², by the listing page's own rule: null whenever the built area is flagged suspect, withheld, or gross (areaBasis 'gross'), and on land below 150 m².","type":["number","null"]}," ⟨78 unchanged words⟩
⟨9 unchanged words⟩ null"]},"area":{"properties":{"basis":{"description":"'gross' when closedM2 is a gross figure (not the indoor area; no price per m² is derived from it), 'net' otherwise, null when unknown.","enum":["net","gross",null],"type":["string","null"]},"closedM2":{"description":"The BUILT area in m², as the listing page shows it: null on land (see area.plotM2) and when the page withholds the figure (a plot-looking number on a small home); otherwise shown even when area.suspect is true. A gross figure says so in area.basis.","type":["number","null"]},"display ⟨26 unchanged words⟩ "boolean"}},"type":"object"},"areaBasis":{"description":"'gross' when areaSqm is a gross figure (not the indoor area; no price per m² is derived from it), 'net' otherwise, null when unknown.","enum":["net","gross",null],"type":["string","null"]},"areaSqm":{"description":"The BUILT area inm²;m², as the listing page shows it: null on land (see plotM2).Theand when the page withholds the figure (a plot-looking numberison a small home); otherwise shown even when areaSuspect is true. A gross figure says so in areaBasis.","type":["number","null"]} ⟨360 unchanged words⟩ "null"]},"perSqmGbp":{"description":"NullGBP per m², by the listing page's own rule: null whenever the built area is flaggedsuspect.suspect, withheld, or gross (areaBasis 'gross'), and on land below 150 m².","type":["number","null"]} ⟨20 unchanged words⟩ :"string"},"pricePerSqmGbp":{"description":"NullGBP per m², by the listing page's own rule: null whenever the built area is flaggedsuspect.suspect, withheld, or gross (areaBasis 'gross'), and on land below 150 m².","type":["number","null"]} ⟨265 unchanged words⟩
⟨496 unchanged words⟩ "listings":{"items":{"properties":{"areaBasis":{"enum":["net","gross",null]},"areaSqm":{"type":["number","null" ⟨343 unchanged words⟩ {"listings":{"items":{"properties":{"areaBasis":{"enum":["net","gross",null]},"areaSqm":{"type":["number","null ⟨478 unchanged words⟩
⟨391 unchanged words⟩ "listings":{"items":{"properties":{"areaBasis":{"enum":["net","gross",null]},"areaSqm":{"type":["number","null" ⟨427 unchanged words⟩
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 ⟨131 unchanged words⟩ filtered on is reported as not applied. Fora free-text request use `search`; forone listing use`fetch` or`get_listing`. Returns advertised asking-price and listing facts only ⟨11 unchanged words⟩
⟨5 unchanged words⟩ :false,"readOnlyHint":true,"title":"CurrencyConversionconversion (GBP/EUR/USD/TRY)"}
Get an EvlekListinglisting
{"properties":{"agencyName":{"description":"ChatGPT summary: office name.","type":["string","null"]},"area":{"properties":{"closedM2":{"type ⟨441 unchanged words⟩ "type":["number","null"]},"priceLabel":{"description":"ChatGPT summary: printed price.","type":"string"},"pricePerSqmGbp":{"description":"Null whenever the built ⟨9 unchanged words⟩ ["string","null"]},"propertyTypeLabel":{"type":["string","null"]},"ref":{"description":"ChatGPT summary: listing number.","type":["string","null"]}," ⟨248 unchanged words⟩
⟨6 unchanged words⟩ readOnlyHint":true,"title":"Get an EvlekListinglisting"}
List EvlekLocationslocations
⟨6 unchanged words⟩ ,"readOnlyHint":true,"title":"List EvlekLocationslocations"}
Northern CyprusMarketmarketStatisticsstatistics
⟨6 unchanged words⟩ ,"readOnlyHint":true,"title":"Northern CyprusMarketmarketStatisticsstatistics"}
Search Northern CyprusPropertypropertyListingslistings
⟨673 unchanged words⟩ in `locale`.","type":"boolean"},"priceRange":{"properties":{"currency":{"type":"string"},"max":{"type":"number"},"min":{"type":"number"},"period":{"type":"string"},"scope":{"type":"string"}},"type":["object","null"]},"refs":{"items":{"type":"string"},"type":"array"},"shown":{"description":"Listings in this response. ⟨2 unchanged words⟩ ,"split":{"type":"boolean"},"topMatch":{"properties":{"district":{"type":["string","null"]},"priceLabel":{"type":"string"},"ref":{"type":["string","null"]}},"type":"object"},"total":{"description":"Public listings matching the ⟨84 unchanged words⟩ ,"type":"array"}},"required":["listings","total"],"type":"object"}
⟨6 unchanged words⟩ readOnlyHint":true,"title":"Search Northern CyprusPropertypropertyListingslistings"}
⟨172 unchanged words⟩ "type":["string","null"]},"matchedFeatures":{"description":"The requested amenities this listing has, in request order (canonical keys); empty when none were requested.","items":{"type":"string"},"type":"array"},"monthlyRentGbp":{"type":["number","null" ⟨317 unchanged words⟩
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Fetch full Evlek listing detail"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Get an Evlek Listing"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"List Evlek Locations"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Northern Cyprus Market Statistics"}
⟨628 unchanged words⟩ "type":["string","null"]},"matchedFeatures":{"description":"The requested amenities this listing has, in request order (canonical keys); empty when none were requested.","items":{"type":"string"},"type":"array"},"monthlyRentGbp":{"type":["number","null" ⟨318 unchanged words⟩ null],"type":["string","null"]},"matchedFeatures":{"description":"The requested amenities this listing has, in request order (canonical keys); empty when none were requested.","items":{"type":"string"},"type":"array"},"monthlyRentGbp":{"type":["number", ⟨303 unchanged words⟩
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Search Evlek property listings"}
⟨702 unchanged words⟩ ":"number"},"limit":{"default":108,"description":"Number of listings to return, 1-10 (default108, maximum 10). Ask for more with ⟨372 unchanged words⟩
⟨523 unchanged words⟩ "type":["string","null"]},"matchedFeatures":{"description":"The requested amenities this listing has, in request order (canonical keys); empty when none were requested.","items":{"type":"string"},"type":"array"},"monthlyRentGbp":{"type":["number","null" ⟨231 unchanged words⟩
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Search Northern Cyprus Property Listings"}
{"properties":{"amount":{"description":"Amount to convert: a property price, a monthly rent, any amount from 1 up. Not a deposit or an instalment plan.","maximum":10000000000,"minimum":1,"type":"number"},"currency":{"description":"Currency of thepriceamount. Default GBP. Lower case, symbols (default£GBP€ $ ₺).and names (pound, euro, dollar, lira) are read.","enum":["GBP","EUR","USD","TRY"],"type":"string"},"pricelocale":{"description":"EnteredLanguagepropertyofasking-pricetheamount;answernotandathedepositnumberorformat.installment.Pass the language the user writes in. Default en.","maximumenum":100000000["tr","minimumen":1000,"ru","de","ar"],"type":"numberstring"}},"required":["priceamount"],"type":"object"}
⟨19 unchanged words⟩ ,"TRY"],"type":"object"},"assumedCurrency":{"description":"True when no currency was given and GBP was assumed.","type":"boolean"},"code":{"description":"Present on a soft refusal (FX_UNAVAILABLE) and on invalid arguments (INVALID_PARAMS).","type":"string"},"contentLocale":{"enum":["tr","en","ru","de","ar"],"type":"string"},"dataSource":{"type":"string"},"fx":{"properties":{"ageHours":{"description":"Whole hours since the rates were stored.","type":"number"},"asOf":{"description":"When the rates were stored (ISO 8601, UTC).","type":"string"},"base":{"enum":["GBP"],"type":"string"},"rates":{"description":"Units of each currency per 1 GBP, as stored.","properties":{"EUR":{"type":"number" ⟨18 unchanged words⟩ ":["stored_current_rates"],"type":"string"},"stale":{"description":"True when the rates are older than 24 hours (at most 72 hours: older ones are refused).","type":"boolean"}},"required":["base","source","asOf","rates","stale","ageHours"],"type":"object"},"inputCurrency":{"enum":["GBP","EUR","USD","TRY"],"type":"string"},"issues":{"items":{"properties":{"allowedValues":{"items":{"type":"string"},"type":"array"},"code":{"type":"string"},"field":{"type":"string"},"message":{"type":"string"},"suggestion":{"type":"string"}},"required":["code","field","message"],"type":"object"},"type":"array"},"priceGBP":{"description":"The amount in GBP (the same number as amounts.GBP).","type":"number"},"rateAgeHours":{"description":"FX_UNAVAILABLE with reason too_old: how old the stored rates are, in hours.","type":"number"},"reason":{"enum":["unavailable","too_old"],"type":"string"},"retryable":{"type":"boolean"},"stale":{"description":"True when the stored rates are older than 24 hours.","type":"boolean"},"usesStoredRate":{"type":"boolean"},"warnings":{"items":{"properties":{"code":{"type":"string"},"field":{"type":"string"},"message":{"type":"string"}},"required":["inputCurrencycode","priceGBPmessage"],"amountstype":"object"},"type":"array"}},"required":[],"type":"object"}
Fetch the full detail of one Evlek listing:bytitle, price, location, rooms, areas, amenities, data-quality notes and the canonical link. The id is the listing id (UUID) from a search):titleresult,description,aGBP-normalizedlistingpricenumber such as EVL-100464,locationor an evlek.app listing link; the answer language follows the link (English otherwise). A listing that is not available (it does not exist,sizeis not public,amenities.or was removed) always gets the same answer. Same data asget_listing_detail —get_listing: this fixed id-only form exists for the ChatGPT/OpenAI ⟨7 unchanged words⟩ search is known. Don't use for: discovery—(use searchfirst.first) or another answer language (use get_listing).
⟨3 unchanged words⟩ ":"Evlek listing id (UUID) from search, a listing number such as EVL-100464, or an evlek.app listing link","type":"string"}},"required": ⟨3 unchanged words⟩
{"properties":{"code":{"description":"NOT_FOUND (found is false) or SEARCH_BACKEND_UNAVAILABLE (retryable).","type":"string"},"contentLocale":{"enum":["tr","en","ru","de","ar"],"type":"string"},"coverImageUrl":{"type":["string","null"]},"found":{"type":"boolean"},"id":{"type":"string"},"metadatalisting":{"description":"The listing card (same shape as search_listings).","properties":{"areaSqm":{"type":["number","null"]},"areaSuspect":{"type":"boolean"},"bathrooms":{"type":["number","null"]},"bedrooms":{"type":["number","null"]},"city":{"type":["string","null"]},"cityLabel":{"type":["string","null"]},"contentLocale":{"enum":["tr","en","ru","de","ar"],"type":"string"},"coverImageUrl":{"type":["string","null"]},"currency":{"type":["string","null"]},"dataQuality":{"properties":{"areaSuspect":{"type":"boolean"},"flags":{"items":{"type":"string"},"type":"array"},"priceOutlier":{"type":"boolean"},"titleRoomMismatch":{"type":"boolean"}},"required":["flags","priceOutlier","areaSuspect","titleRoomMismatch"],"type":"object"},"district":{"type":["string","null"]},"featureCount":{"type":"number"},"features":{"items":{"properties":{"key":{"type":"string"},"label":{"type":"string"},"source":{"enum":["column","label"],"type":"string"}},"required":["key","label","source"],"type":"object"},"type":"array"},"furnished":{"enum":["yes","no","unknown"],"type":"string"},"id":{"type":"string"},"isStudio":{"type":"boolean"},"listedAt":{"type":["string","null"]},"listingNumber":{"type":["number","null"]},"listingRef":{"type":["string","null"]},"localeFallback":{"type":"boolean"},"locationPrecision":{"enum":["approximate_grid","district","city","unmapped",null],"type":["string","null"]},"monthlyRentGbp":{"type":["number","null"]},"priceGBP
ListValidEvlekCities and DistrictsLocations
ReturnListcanonicaltheKKTCplacescityEvlekslugsknowsplusin Northern Cyprus (6 cities, districts,representedvillages,bysub-areas,activelandmarks,Evlekthe 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 orlong-term-rentlanguage)listings.forLiveoneinventory-locationplacefactsinonly;detail.holiday-homeNamesinventoryareremainsTurkishunavailable.or Latin; Russian, German and Arabic spellings are accepted as input but not listed.
{"properties":{"city":{"description":"OptionalOne—placelimitindistrictsdetail:toany spelling or language of asinglecity,city.districtSlugor village (\"Kyrenia\",Turkish\"Alsancak\").nameOmit to list every city.","type":"string"},"includeAliases":{"description":"Alsoorlistexonymaccepted alternative spellings of each place (Kyrenia/Nicosia/Famagusta/Morphou
before
{"properties":{"cities":{"items":{"properties":{"display":{"type":"string"},"districtCount":{"type":"number"},"districts":{"items":{"type":"string"},"type":"array"},"slug":{"type":"string"}},"type":"object"},"type":"array"},"dataSource":{"type":"string"},"isEstimate":{"type":"boolean"},"truncated":{"type":"boolean"}},"required":["cities"],"type":"object"}after
{"properties":{"ambiguous":{"type":"boolean"},"cities":{"items":{"properties":{"activeCount":{"description":"Public listings under the place, sub-places included.","properties":{"rent":{"type":"number"},"sale":{"type":"number"},"total":{"type":"number"}},"required":["sale","rent","total"],"type":"object"},"aliases":{"description":"Accepted input spellings (Latin script, at most 6).","items":{"type":"string"},"type":"array"},"children":{"items":{"properties":{"activeCount":{"description":"Public listings under the place, sub-places included.","properties":{"rent":{"type":"number"},"sale":{"type":"number"},"total":{"type":"number"}},"required":["sale","rent","total"],"type":"object"},"aliases":{"description":"Accepted input spellings (Latin script, at most 6).","items":{"type":"string"},"type":"array"},"children":{"items":{"properties":{"activeCount":{"description":"Public listings under the place, sub-places included.","properties":{"rent":{"type":"number"},"sale":{"type":"number"},"total":{"type":"number"}},"required":["sale","rent","total"],"type":"object"},"aliases":{"description":"Accepted input spellings (Latin script, at most 6).","items":{"type":"string"},"type":"array"},"id":{"description":"Stable id of the place (a slug); every tool takes it back as a place.","type":"string"},"kind":{"enum":["city","district","neighborhood","subplace","landmark","region"],"type":"string"},"members":{"description":"Region only: ids of its member districts.","items":{"type":"string"},"type":"array"},"name":{"description":"Display name (Turkish / Latin; cities keep their English exonym outside Turkish).","type":"string"},"officialName":{"description":"Official Turkish name, as listings store it.","type":"string"}},"required":["id","kind","name","officialName","activeCount"],"type":"object"},"type":"array"},"id":{"description":"Stable id of the place (a slug); every tool takes it back as a place.","type":"string"},"kind":{"enum":["city","district","neighborhood","subplace","landmark","region"],"type":"string"},"members":{"description":"Region only: ids of its member districts.","items":{"type":"string"},"type":"array"},"name":{"description":"Display name (Turkish / Latin; cities keep their English exonym outside Turkish).","type":"string"},"officialName":{"description":"Official Turkish name, as listings store it.","type":"string"}},"required":["id","kind","name","officialName","activeCount"],"type":"object"},"type":"array"},"id":{"description":"Stable id of the place (a slug); every tool takes it back as a place.","type":"string"},"kind":{"enum":["city","district","neighborhood","subplace","landmark","region"],"type":"string"},"members":{"description":"Region only: ids of its member districts.","items":{"type":"string"},"type":"array"},"name":{"description":"Display name (Turkish / Latin; cities keep their English exonym outside Turkish).","type":"string"},"noDistrictRecorded":{"properties":{"rent":{"type":"number"},"sale":{"type":"number"},"total":{"type":"number"}},"required":["sale","rent","total"],"type":"object"},"officialName":{"description":"Official Turkish name, as listings store it.","type":"string"},"otherSpellings":{"properties":{"rent":{"type":"number"},"sale":{"type":"number"},"total":{"type":"number"}},"required":["sale","rent","total"],"type":"object"},"regions":{"items":{"properties":{"activeCount":{"description":"Public listings under the place, sub-places included.","properties":{"rent":{"type":"number"},"sale":{"type":"number"},"total":{"type":"number"}},"required":["sale","rent","total"],"type":"object"},"aliases":{"description":"Accepted input spellings (Latin script, at most 6).","items":{"type":"string"},"type":"array"},"id":{"description":"Stable id of the place (a slug); every tool takes it back as a place.","type":"string"},"kind":{"enum":["city","district","neighborhood","subplace","landmark","region"],"type":"string"},"members":{"description":"Region only: ids of its member districts.","items":{"type":"string"},"type":"array"},"name":{"description":"Display name (Turkish / Latin; cities keep their English exonym outside Turkish).","type":"string"},"officialName":{"description":"Official Turkish name, as listings store it.","type":"string"}},"required":["id","kind","name","officialName","activeCount"],"type":"object"},"type":"array"}},"required":["id","kind","name","officialName","activeCount","children","noDistrictRecorded","otherSpellings"],"type":"object"},"type":"array"},"code":{"description":"Present on a soft answer: INVALID_LOCATION, OUT_OF_SCOPE or SEARCH_BACKEND_UNAVAILABLE.","type":"string"},"contentLocale":{"enum":["tr","en","ru","de","ar"],"type":"string"},"hiddenEmptyCount":{"type":"number"},"includeAliases":{"type":"boolean"},"includeEmpty":{"type":"boolean"},"issues":{"items":{"properties":{"allowedValues":{"items":{"type":"string"},"type":"array"},"code":{"type":"string"},"field":{"type":"string"},"message":{"type":"string"},"suggestion":{"type":"string"}},"required":["code","field","message"],"type":"object"},"type":"array"},"notes":{"items":{"type":"string"},"type":"array"},"outOfScope":{"properties":{"reason":{"type":"string"}},"required":["reason"],"type":"object"},"place":{"properties":{"activeCount":{"description":"Public listings under the place, sub-places included.","properties":{"rent":{"type":"number"},"sale":{"type":"number"},"total":{"type":"number"}},"required":["sale","rent","total"],"type":"object"},"aliases":{"description":"Accepted input spellings (Latin script, at most 6).","items":{"type":"string"},"type":"array"},"children":{"items":{"properties":{"activeCount":{"description":"Public listings under the place, sub-places included.","properties":{"rent":{"type":"number"},"sale":{"type":"number"},"total":{"type":"number"}},"required":["sale","rent","total"],"type":"object"},"aliases":{"description":"Accepted input spellings (Latin script, at most 6).","items":{"type":"string"},"type":"array"},"children":{"items":{"properties":{"activeCount":{"description":"Public listings under the place, sub-places included.","properties":{"rent":{"type":"number"},"sale":{"type":"number"},"total":{"type":"number"}},"required":["sale","rent","total"],"type":"object"},"aliases":{"description":"Accepted input spellings (Latin script, at most 6).","items":{"type":"string"},"type":"array"},"id":{"description":"Stable id of the place (a slug); every tool takes it back as a place.","type":"string"},"kind":{"enum":["city","district","neighborhood","subplace","landmark","region"],"type":"string"},"members":{"description":"Region only: ids of its member districts.","items":{"type":"string"},"type":"array"},"name":{"description":"Display name (Turkish / Latin; cities keep their English exonym outside Turkish).","type":"string"},"officialName":{"description":"Official Turkish name, as listings store it.","type":"string"}},"required":["id","kind","name","officialName","activeCount"],"type":"object"},"type":"array"},"id":{"description":"Stable id of the place (a slug); every tool takes it back as a place.","type":"string"},"kind":{"enum":["city","district","neighborhood","subplace","landmark","region"],"type":"string"},"members":{"description":"Region only: ids of its member districts.","items":{"type":"string"},"type":"array"},"name":{"description":"Display name (Turkish / Latin; cities keep their English exonym outside Turkish).","type":"string"},"officialName":{"description":"Official Turkish name, as listings store it.","type":"string"}},"required":["id","kind","name","officialName","activeCount"],"type":"object"},"type":"array"},"id":{"description":"Stable id of the place (a slug); every tool takes it back as a place.","type":"string"},"kind":{"enum":["city","district","neighborhood","subplace","landmark","region"],"type":"string"},"members":{"description":"Region only: ids of its member districts.","items":{"type":"string"},"type":"array"},"name":{"description":"Display name (Turkish / Latin; cities keep their English exonym outside Turkish).","type":"string"},"officialName":{"description":"Official Turkish name, as listings store it.","type":"string"}},"required":["id","kind","name","officialName","activeCount"],"type":"object"},"registry":{"properties":{"version":{"type":"string"}},"required":["version"],"type":"object"},"retryable":{"type":"boolean"},"scope":{"properties":{"matchedId":{"type":"string"},"matchedName":{"type":"string"},"path":{"items":{"type":"string"},"type":"array"},"readAs":{"enum":["exact","alias","fuzzy"],"type":"string"},"requested":{"type":"string"},"type":{"enum":["all","city","place"],"type":"string"}},"required":["type"],"type":"object"},"suggestions":{"items":{"type":"string"},"type":"array"},"textTruncated":{"type":"boolean"},"totals":{"properties":{"rent":{"type":"number"},"sale":{"type":"number"},"total":{"type":"number"}},"required":["sale","rent","total"],"type":"object"},"unassigned":{"properties":{"rent":{"type":"number"},"sale":{"type":"number"},"total":{"type":"number"}},"required":["sale","rent","total"],"type":"object"},"validCities":{"items":{"type":"string"},"type":"array"},"warnings":{"items":{"properties":{"code":{"type":"string"},"field":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"type":"object"},"type":"array"}},"required":[],"type":"object"}⟨5 unchanged words⟩ ) property listings on Evlek with a free-textquery.query in Turkish, English, Russian, German or Arabic. Returns matching listings as id/title/url for the fetchtool.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-textquery.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.
before
{"properties":{"appliedFilters":{"additionalProperties":false,"properties":{"bedrooms":{"type":"number"},"city":{"type":"string"},"district":{"type":"string"},"elevator":{"type":"boolean"},"furnished":{"type":"boolean"},"garden":{"type":"boolean"},"maxPrice":{"type":"number"},"minPrice":{"type":"number"},"parking":{"type":"boolean"},"pool":{"type":"boolean"},"propertyType":{"type":"string"},"seaView":{"type":"boolean"},"type":{"type":"string"}},"type":"object"},"criteria":{"items":{"properties":{"key":{"type":"string"},"note":{"type":"string"},"state":{"enum":["applied","unresolved","not_supported"],"type":"string"},"value":{"type":"string"}},"required":["key","value","state"],"type":"object"},"type":"array"},"fxRates":{"properties":{"base":{"enum":["GBP"],"type":"string"},"isFallback":{"type":"boolean"},"rates":{"properties":{"EUR":{"type":"number"},"TRY":{"type":"number"},"USD":{"type":"number"}},"required":["EUR","USD","TRY"],"type":"object"},"source":{"enum":["database","fallback"],"type":"string"},"updatedAt":{"type":["string","null"]}},"required":["base","rates","source","updatedAt","isFallback"],"type":["object","null"]},"listings":{"items":{"properties":{"areaSqm":{"type":["number","null"]},"bedrooms":{"type":["number","null"]},"city":{"type":"string"},"coverImageUrl":{"type":["string","null"]},"currency":{"type":"string"},"district":{"type":"string"},"id":{"type":"string"},"listingNumber":{"type":["number","null"]},"locationPrecision":{"enum":["exact","district","city"],"type":"string"},"monthlyRentGbp":{"type":["number","null"]},"price":{"type":"number"},"priceGbp":{"type":"number"},"propertyType":{"type":["string","null"]},"title":{"type":"string"},"type":{"type":"string"},"url":{"type":"string"}},"required":["id","title","city","district","price","priceGbp","currency","type","url"],"type":"object"},"type":"array"},"nearbyAlternatives":{"properties":{"listings":{"items":{"properties":{"areaSqm":{"type":["number","null"]},"bedrooms":{"type":["number","null"]},"city":{"type":"string"},"coverImageUrl":{"type":["string","null"]},"currency":{"type":"string"},"district":{"type":"string"},"id":{"type":"string"},"listingNumber":{"type":["number","null"]},"locationPrecision":{"enum":["exact","district","city"],"type":"string"},"monthlyRentGbp":{"type":["number","null"]},"price":{"type":"number"},"priceGbp":{"type":"number"},"propertyType":{"type":["string","null"]},"title":{"type":"string"},"type":{"type":"string"},"url":{"type":"string"}},"required":["id","title","city","district","price","priceGbp","currency","type","url"],"type":"object"},"type":"array"},"relaxed":{"enum":["district","maxPrice"],"type":"string"}},"required":["relaxed","listings"],"type":["object","null"]},"outOfScope":{"type":"boolean"},"results":{"items":{"properties":{"id":{"type":"string"},"title":{"type":"string"},"url":{"type":"string"}},"type":"object"},"type":"array"},"unresolved":{"items":{"type":"string"},"type":"array"}},"required":["results"],"type":"object"}after
{"properties":{"appliedFilters":{"additionalProperties":false,"description":"What the database was really asked, in the query parameter names (place names as resolved). Only the filters that were applied are present.","properties":{"areaMax":{"type":"number"},"areaMin":{"type":"number"},"availableNow":{"type":"boolean"},"bathroomsMin":{"type":"number"},"bbox":{"properties":{"east":{"type":"number"},"north":{"type":"number"},"south":{"type":"number"},"west":{"type":"number"}},"type":"object"},"bedrooms":{"properties":{"exact":{"type":"number"},"max":{"type":"number"},"min":{"type":"number"}},"type":"object"},"billsIncluded":{"type":"boolean"},"city":{"items":{"type":"string"},"type":"array"},"contractType":{"type":"string"},"currency":{"enum":["GBP","EUR","USD","TRY"],"type":"string"},"district":{"items":{"type":"string"},"type":"array"},"features":{"items":{"type":"string"},"type":"array"},"furnished":{"type":"boolean"},"landAreaMax":{"type":"number"},"landAreaMin":{"type":"number"},"nearUniversity":{"properties":{"code":{"type":"string"},"maxMeters":{"type":"number"}},"type":"object"},"noDeposit":{"type":"boolean"},"priceMax":{"type":"number"},"priceMin":{"type":"number"},"propertyType":{"items":{"type":"string"},"type":"array"},"sort":{"type":"string"},"transaction":{"enum":["sale","rent"],"type":"string"}},"type":"object"},"assumed":{"description":"What had to be assumed to make a constraint a filter (a currency, a band, a period).","items":{"properties":{"assumed":{"additionalProperties":{"type":"string"},"type":"object"},"kind":{"type":"string"}},"required":["kind","assumed"],"type":"object"},"type":"array"},"clarifications":{"description":"Questions to ask the user instead of guessing.","items":{"properties":{"code":{"type":"string"},"options":{"items":{"type":"string"},"type":"array"},"question":{"type":"string"}},"required":["code","question"],"type":"object"},"type":"array"},"code":{"description":"Present on a soft result (INVALID_LOCATION, OUT_OF_SCOPE, FX_UNAVAILABLE, ...).","type":"string"},"contentLocale":{"description":"The language the listing pages (links, descriptions) resolved to: `locale` when every shown listing has a page in it, the fallback (Turkish) when none does, null when they differ (each card has its own).","enum":["tr","en","ru","de","ar",null],"type":["string","null"]},"criteria":{"description":"Everything the sentence was understood as, with the words each came from.","items":{"properties":{"assumed":{"additionalProperties":{"type":"string"},"type":"object"},"kind":{"type":"string"},"text":{"type":"string"},"value":{}},"required":["kind","text"],"type":"object"},"type":"array"},"dataSource":{"type":"string"},"fxRates":{"properties":{"base":{"enum":["GBP"],"type":"string"},"isFallback":{"enum":[false],"type":"boolean"},"rates":{"properties":{"EUR":{"type":"number"},"TRY":{"type":"number"},"USD":{"type":"number"}},"required":["EUR","USD","TRY"],"type":"object"},"source":{"enum":["database"],"type":"string"},"updatedAt":{"type":["string","null"]}},"required":["base","rates","source","updatedAt","isFallback"],"type":["object","null"]},"groups":{"description":"One group per transaction: two (sale, rent) when no transaction was given.","items":{"properties":{"nextCursor":{"type":["string","null"]},"pageable":{"type":"boolean"},"shown":{"type":"number"},"total":{"type":"number"},"transaction":{"enum":["sale","rent"],"type":"string"},"transactionImplied":{"description":"True when the transaction was implied by the filters (a rental-only fact), not sent: the cursor then carries it.","type":"boolean"}},"required":["transaction","total","shown","nextCursor","pageable"],"type":"object"},"type":"array"},"impliedTransaction":{"description":"Present when no transaction was sent and the search was limited to one because of the filters.","properties":{"because":{"type":"string"},"value":{"enum":["sale","rent"],"type":"string"}},"required":["value","because"],"type":"object"},"issues":{"items":{"properties":{"allowedValues":{"items":{"type":["string","number"]},"type":"array"},"code":{"type":"string"},"field":{"type":"string"},"message":{"type":"string"},"suggestion":{"type":"string"}},"required":["code","field","message"],"type":"object"},"type":"array"},"listings":{"items":{"properties":{"areaSqm":{"type":["number","null"]},"areaSuspect":{"type":"boolean"},"bathrooms":{"type":["number","null"]},"bedrooms":{"type":["number","null"]},"city":{"type":["string","null"]},"cityLabel":{"type":["string","null"]},"contentLocale":{"enum":["tr","en","ru","de","ar"],"type":"string"},"coverImageUrl":{"type":["string","null"]},"currency":{"type":["string","null"]},"dataQuality":{"properties":{"areaSuspect":{"type":"boolean"},"flags":{"items":{"type":"string"},"type":"array"},"priceOutlier":{"type":"boolean"},"titleRoomMismatch":{"type":"boolean"}},"required":["flags","priceOutlier","areaSuspect","titleRoomMismatch"],"type":"object"},"district":{"type":["string","null"]},"featureCount":{"type":"number"},"features":{"items":{"properties":{"key":{"type":"string"},"label":{"type":"string"},"source":{"enum":["column","label"],"type":"string"}},"required":["key","label","source"],"type":"object"},"type":"array"},"furnished":{"enum":["yes","no","unknown"],"type":"string"},"id":{"type":"string"},"isStudio":{"type":"boolean"},"listedAt":{"type":["string","null"]},"listingNumber":{"type":["number","null"]},"listingRef":{"type":["string","null"]},"localeFallback":{"type":"boolean"},"locationPrecision":{"enum":["approximate_grid","district","city","unmapped",null],"type":["string","null"]},"monthlyRentGbp":{"type":["number","null"]},"notes":{"items":{"type":"string"},"type":"array"},"officeName":{"type":["string","null"]},"photoCount":{"type":"number"},"plotM2":{"type":["number","null"]},"price":{"type":"number"},"priceGbp":{"type":["number","null"]},"pricePerSqmGbp":{"type":["number","null"]},"propertyType":{"type":["string","null"]},"propertyTypeLabel":{"type":["string","null"]},"rentPeriod":{"enum":["month",null],"type":["string","null"]},"roomLabel":{"type":["string","null"]},"title":{"type":"string"},"titleSource":{"enum":["listing","generated"],"type":"string"},"transaction":{"enum":["sale","rent"],"type":"string"},"updatedAt":{"type":["string","null"]},"url":{"type":"string"}},"required":["id","listingNumber","listingRef","transaction","title","url","contentLocale","localeFallback","price","currency","priceGbp","city","district","propertyType","bedrooms","areaSqm","features","dataQuality"],"type":"object"},"type":"array"},"locale":{"enum":["tr","en","ru","de","ar"],"type":"string"},"localeFallback":{"description":"True when a listing link or description is in another language because it has no translation in `locale`.","type":"boolean"},"lookup":{"description":"Present for an explicit listing number (\"EVL-100464\").","properties":{"found":{"type":"boolean"},"listingNumber":{"type":"string"}},"type":"object"},"message":{"description":"The reason, in the answer language, when there is nothing to list (content[0].text stays the connector JSON).","type":"string"},"nearbyAlternatives":{"description":"Only when nothing matched: ONE relaxation (district dropped, else budget + 15 %), at most 5 listings.","properties":{"listings":{"items":{"properties":{"areaSqm":{"type":["number","null"]},"areaSuspect":{"type":"boolean"},"bathrooms":{"type":["number","null"]},"bedrooms":{"type":["number","null"]},"city":{"type":["string","null"]},"cityLabel":{"type":["string","null"]},"contentLocale":{"enum":["tr","en","ru","de","ar"],"type":"string"},"coverImageUrl":{"type":["string","null"]},"currency":{"type":["string","null"]},"dataQuality":{"properties":{"areaSuspect":{"type":"boolean"},"flags":{"items":{"type":"string"},"type":"array"},"priceOutlier":{"type":"boolean"},"titleRoomMismatch":{"type":"boolean"}},"required":["flags","priceOutlier","areaSuspect","titleRoomMismatch"],"type":"object"},"district":{"type":["string","null"]},"featureCount":{"type":"number"},"features":{"items":{"properties":{"key":{"type":"string"},"label":{"type":"string"},"source":{"enum":["column","label"],"type":"string"}},"required":["key","label","source"],"type":"object"},"type":"array"},"furnished":{"enum":["yes","no","unknown"],"type":"string"},"id":{"type":"string"},"isStudio":{"type":"boolean"},"listedAt":{"type":["string","null"]},"listingNumber":{"type":["number","null"]},"listingRef":{"type":["string","null"]},"localeFallback":{"type":"boolean"},"locationPrecision":{"enum":["approximate_grid","district","city","unmapped",null],"type":["string","null"]},"monthlyRentGbp":{"type":["number","null"]},"notes":{"items":{"type":"string"},"type":"array"},"officeName":{"type":["string","null"]},"photoCount":{"type":"number"},"plotM2":{"type":["number","null"]},"price":{"type":"number"},"priceGbp":{"type":["number","null"]},"pricePerSqmGbp":{"type":["number","null"]},"propertyType":{"type":["string","null"]},"propertyTypeLabel":{"type":["string","null"]},"rentPeriod":{"enum":["month",null],"type":["string","null"]},"roomLabel":{"type":["string","null"]},"title":{"type":"string"},"titleSource":{"enum":["listing","generated"],"type":"string"},"transaction":{"enum":["sale","rent"],"type":"string"},"updatedAt":{"type":["string","null"]},"url":{"type":"string"}},"required":["id","listingNumber","listingRef","transaction","title","url","contentLocale","localeFallback","price","currency","priceGbp","city","district","propertyType","bedrooms","areaSqm","features","dataQuality"],"type":"object"},"type":"array"},"priceMax":{"type":"number"},"relaxed":{"enum":["district","maxPrice"],"type":"string"}},"required":["relaxed","listings"],"type":["object","null"]},"placesReadAs":{"items":{"properties":{"as":{"type":"string"},"input":{"type":"string"},"match":{"enum":["alias","fuzzy"],"type":"string"}},"type":"object"},"type":"array"},"query":{"description":"The query as read (cleaned, bounded).","type":"string"},"results":{"items":{"properties":{"id":{"type":"string"},"title":{"type":"string"},"url":{"type":"string"}},"required":["id","title","url"],"type":"object"},"type":"array"},"shown":{"description":"Listings in this response.","type":"number"},"split":{"type":"boolean"},"total":{"description":"Public listings matching the filters, summed over the groups.","type":"number"},"totalMatched":{"description":"The same number as `total` (the v2 name).","type":"number"},"transactionAssumption":{"properties":{"reason":{"type":"string"},"value":{"type":["string","null"]}},"type":"object"},"unappliedFilters":{"description":"Constraints that were NOT applied (an amenity that cannot be filtered on, text the parser could not read). The listings shown may not honour them.","items":{"properties":{"field":{"type":"string"},"input":{"type":"string"},"reason":{"type":"string"}},"required":["field","input","reason"],"type":"object"},"type":"array"},"unresolved":{"description":"Words that did NOT become a filter, with the reason.","items":{"properties":{"reason":{"type":"string"},"text":{"type":"string"}},"required":["text","reason"],"type":"object"},"type":"array"},"warnings":{"items":{"properties":{"code":{"type":"string"},"field":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"type":"object"},"type":"array"}},"required":["results"],"type":"object"}Search liveactiveEvlek property listings for sale andlong-term-rentlong-termlistingsrentoninEvlek.NorthernResultsCyprusare(KKTC/TRNC;newest-firstpricesbyindefault;GBP`limit`unlesscapsareturnedcurrencyrowsis 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`totalMatched`linksreportsfollow 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 thefull`nextCursor`matchofcount.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 a free-text request use `search`; for one listing use `fetch` or `get_listing`. Returns advertised asking-price and listing factsonly;only: not a valuation, verification of property-specific claims, forecast, ranking,or recommendation.
before
{"properties":{"bedrooms":{"description":"Bedroom count (integer 0-10)","maximum":10,"minimum":0,"type":"number"},"city":{"description":"Slug, Turkish name, or exonym (Kyrenia/Nicosia/Famagusta/Morphou).","type":"string"},"district":{"description":"District name (e.g. Alsancak), matched accent/case-insensitively against the active-listing district list","type":"string"},"elevator":{"description":"Only listings with an elevator","type":"boolean"},"furnished":{"description":"Only furnished listings","type":"boolean"},"garden":{"description":"Only listings with a garden","type":"boolean"},"limit":{"description":"Result count (integer 1-10, default 5)","maximum":10,"minimum":1,"type":"number"},"maxPrice":{"description":"Max price in GBP","type":"number"},"minPrice":{"description":"Min price in GBP","type":"number"},"offset":{"description":"Rows to skip (pagination, default 0)","minimum":0,"type":"number"},"parking":{"description":"Only listings with parking","type":"boolean"},"pool":{"description":"Only listings with a pool","type":"boolean"},"propertyType":{"description":"Raw property type (apartment, villa, …) or K75 group slug: house (villa+detached+bungalow), land, commercial","enum":["apartment","residence","villa","twin","detached","bungalow","penthouse","studio","duplex","shop","office","warehouse","whole_building","hotel","residential_land","commercial_land","farmland","house","land","commercial"],"type":"string"},"query":{"description":"Optional free-text query (parsed like the `search` tool); merges with explicit filters below — an explicit filter wins on conflict","type":"string"},"seaView":{"description":"Only listings flagged sea_view","type":"boolean"},"sortBy":{"description":"Sort order (default: newest)","enum":["newest","price_asc","price_desc","area_desc","price_per_sqm_asc"],"type":"string"},"type":{"description":"Listing type","enum":["sale","rent"],"type":"string"}},"type":"object"}after
{"additionalProperties":false,"description":"Structured search over active Evlek property listings in Northern Cyprus (sale and long-term rent; holiday lets are not offered). Every field is optional; a listing must match ALL the fields you set. `transaction` is required when you filter or sort by price or page with `cursor`. At most 10 listings are returned per call; continue with `cursor`. Sort orders: newest = latest first (default), price-low = cheapest first, price-high = most expensive first, price-per-sqm-asc = lowest price per m², area-large / area-small = largest / smallest closed area, nearest-uni = closest to a university. Pass `locale` in the language the user writes in.","properties":{"areaMax":{"description":"Maximum closed (built, indoor) area in m², inclusive.","maximum":10000000,"minimum":0,"type":"number"},"areaMin":{"description":"Minimum CLOSED (built, indoor) area in m², inclusive. For plots and gardens use landAreaMin instead.","maximum":10000000,"minimum":0,"type":"number"},"availableNow":{"description":"Rentals only: true = can be moved into immediately. Without `transaction` the search is limited to rent.","type":"boolean"},"bathroomsMin":{"description":"Minimum number of bathrooms, inclusive (1-20).","maximum":20,"minimum":1,"type":"integer"},"bbox":{"additionalProperties":false,"description":"Map rectangle in Northern Cyprus, WGS84 degrees: {west, south, east, north}. For \"this map area\" only; otherwise use city and district.","properties":{"east":{"description":"Right edge, longitude in decimal degrees. Must be larger than west.","maximum":34.65,"minimum":32.7,"type":"number"},"north":{"description":"Top edge, latitude in decimal degrees. Must be larger than south.","maximum":35.78,"minimum":34.95,"type":"number"},"south":{"description":"Bottom edge, latitude in decimal degrees (34.95 to 35.78). Must be smaller than north.","maximum":35.78,"minimum":34.95,"type":"number"},"west":{"description":"Left edge, longitude in decimal degrees (32.7 to 34.65). Must be smaller than east.","maximum":34.65,"minimum":32.7,"type":"number"}},"required":["west","south","east","north"],"type":"object"},"bedrooms":{"additionalProperties":false,"description":"Bedrooms as an object: {\"exact\": 3}, {\"min\": 2} or {\"min\": 2, \"max\": 4}; integers 0-20. Use exact for \"a 3-bedroom\".","properties":{"exact":{"description":"Exact number of bedrooms; 0 means a studio. Cannot be combined with min or max.","maximum":20,"minimum":0,"type":"integer"},"max":{"description":"Maximum number of bedrooms, inclusive.","maximum":20,"minimum":0,"type":"integer"},"min":{"description":"Minimum number of bedrooms, inclusive.","maximum":20,"minimum":0,"type":"integer"}},"type":"object"},"billsIncluded":{"description":"Rentals only: true = the rent includes utility bills. Without `transaction` the search is limited to rent.","type":"boolean"},"city":{"description":"City names in any language, e.g. [\"Girne\"] or [\"Kyrenia\", \"Famagusta\"]; ANY match counts. Towns and villages go in `district`.","items":{"maxLength":60,"minLength":1,"type":"string"},"maxItems":10,"type":"array"},"contractType":{"description":"Contract type. Rentals: 'monthly', 'semester' or 'yearly'. Sales: 'cash' or 'installment'. Must fit `transaction`.","enum":["monthly","semester","yearly","cash","installment"],"type":"string"},"currency":{"default":"GBP","description":"Currency of priceMin and priceMax: GBP (default), EUR, USD or TRY. Converted to GBP on the server at the current Evlek rate.","enum":["GBP","EUR","USD","TRY"],"type":"string"},"cursor":{"description":"Pass the previous `nextCursor` with the SAME filters, sort and transaction. Opaque: never build or edit it. Requires `transaction`.","maxLength":1024,"minLength":16,"pattern":"^[A-Za-z0-9_-]+$","type":"string"},"district":{"description":"Districts, towns or villages in any language, e.g. [\"Alsancak\"]; ANY match counts. With city [\"Girne\"], [\"Merkez\"] means Girne Merkez.","items":{"maxLength":60,"minLength":1,"type":"string"},"maxItems":20,"type":"array"},"features":{"description":"Amenities the listing must have (ALL must match), any language, e.g. [\"pool\", \"sea view\", \"elevator\"]. Others are reported as not filterable.","items":{"description":"An amenity name in any language. Only these can be filtered: Furnished, Fridge, Washing Machine, Dishwasher, Air Conditioning, Television, Bed, Desk, Wi-Fi, Smart Home, Central Heating, Garden, Terrace, Parking, Pool, Elevator, Security/CCTV, Generator, Sea View, Bills Included, Available Now. Any other amenity is reported as not filterable.","maxLength":60,"minLength":1,"type":"string"},"maxItems":20,"type":"array"},"furnished":{"description":"true = furnished listings only, false = unfurnished only. Omit for both.","type":"boolean"},"landAreaMax":{"description":"Maximum plot (land) area in m², inclusive.","maximum":10000000,"minimum":0,"type":"number"},"landAreaMin":{"description":"Minimum plot (land) area in m², inclusive: villas, houses, bungalows and land.","maximum":10000000,"minimum":0,"type":"number"},"limit":{"default":10,"description":"Number of listings to return, 1-10 (default 10, maximum 10). Ask for more with `cursor`, never with a larger limit.","maximum":10,"minimum":1,"type":"integer"},"locale":{"default":"en","description":"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.","enum":["tr","en","ru","de","ar"],"type":"string"},"nearUniversity":{"additionalProperties":false,"description":"Listings close to one university, e.g. {\"code\": \"NEU\", \"maxMeters\": 1000}. Useful for student housing.","properties":{"code":{"description":"University code: NEU = Near East University, DAU = Eastern Mediterranean University, GAU = Girne American University, CIU = Cyprus International University, EUL = European University of Lefke, BAU = BAU Cyprus University, AKU = University of Mediterranean Karpasia.","enum":["NEU","DAU","GAU","CIU","EUL","BAU","AKU"],"type":"string"},"maxMeters":{"default":2000,"description":"Maximum distance to that university in metres, at least 250 (default 2000; the site offers 500, 1000 and 2000). Listing distances are rounded up to 250 m steps.","maximum":50000,"minimum":250,"type":"integer"}},"required":["code"],"type":"object"},"noDeposit":{"description":"Rentals only: true = no security deposit is required.","type":"boolean"},"priceMax":{"description":"Maximum price, inclusive, in `currency` (\"under 300000\" → 300000): the asking price for sale, the monthly rent for rent. Requires `transaction`.","maximum":1000000000000,"minimum":0,"type":"number"},"priceMin":{"description":"Minimum price, inclusive, in `currency`: the asking price for sale, the monthly rent for rent. Requires `transaction`.","maximum":1000000000000,"minimum":0,"type":"number"},"propertyType":{"description":"Property types, ANY match: single types or groups (house, land, commercial), e.g. [\"apartment\", \"penthouse\"] or [\"house\"].","items":{"description":"A property type, or a group: house = villa, detached, bungalow; land = residential_land, commercial_land, farmland; commercial = shop, office, warehouse, whole_building, hotel.","enum":["apartment","residence","villa","twin","detached","bungalow","penthouse","studio","duplex","shop","office","warehouse","whole_building","hotel","residential_land","commercial_land","farmland","house","land","commercial"],"type":"string"},"maxItems":12,"type":"array"},"sort":{"default":"newest","description":"Order, default 'newest'. price-low = cheapest first, price-high = dearest first (both need transaction); others: see schema description.","enum":["newest","price-low","price-high","price-per-sqm-asc","area-large","area-small","nearest-uni"],"type":"string"},"transaction":{"description":"'sale' or 'rent' (long-term). REQUIRED with priceMin, priceMax, a price sort or cursor. Omit only to browse both together.","enum":["sale","rent"],"type":"string"}},"type":"object"}before
{"properties":{"appliedFilters":{"additionalProperties":false,"properties":{"bedrooms":{"type":"number"},"city":{"type":"string"},"district":{"type":"string"},"elevator":{"type":"boolean"},"furnished":{"type":"boolean"},"garden":{"type":"boolean"},"maxPrice":{"type":"number"},"minPrice":{"type":"number"},"parking":{"type":"boolean"},"pool":{"type":"boolean"},"propertyType":{"type":"string"},"seaView":{"type":"boolean"},"type":{"type":"string"}},"type":"object"},"count":{"type":"number"},"dataSource":{"type":"string"},"factType":{"type":"string"},"fxRates":{"properties":{"base":{"enum":["GBP"],"type":"string"},"isFallback":{"type":"boolean"},"rates":{"properties":{"EUR":{"type":"number"},"TRY":{"type":"number"},"USD":{"type":"number"}},"required":["EUR","USD","TRY"],"type":"object"},"source":{"enum":["database","fallback"],"type":"string"},"updatedAt":{"type":["string","null"]}},"required":["base","rates","source","updatedAt","isFallback"],"type":["object","null"]},"isEstimate":{"type":"boolean"},"listings":{"items":{"properties":{"areaSqm":{"type":["number","null"]},"bedrooms":{"type":["number","null"]},"city":{"type":"string"},"coverImageUrl":{"type":["string","null"]},"currency":{"type":"string"},"district":{"type":"string"},"id":{"type":"string"},"listingNumber":{"type":["number","null"]},"locationPrecision":{"enum":["exact","district","city"],"type":"string"},"monthlyRentGbp":{"type":["number","null"]},"price":{"type":"number"},"priceGbp":{"type":"number"},"propertyType":{"type":["string","null"]},"title":{"type":"string"},"type":{"type":"string"},"url":{"type":"string"}},"required":["id","title","city","district","price","priceGbp","currency","type","url"],"type":"object"},"type":"array"},"notes":{"items":{"type":"string"},"type":"array"},"offset":{"type":"number"},"ranking":{"properties":{"of":{"type":"number"},"pooled":{"type":"number"},"scope":{"enum":["complete","partial"],"type":"string"}},"required":["scope","pooled","of"],"type":["object","null"]},"sortApplied":{"enum":["newest","price_asc","price_desc","area_desc","price_per_sqm_asc"],"type":"string"},"totalMatched":{"type":"number"}},"required":["count","totalMatched","offset","sortApplied","listings","appliedFilters"],"type":"object"}after
{"properties":{"appliedFilters":{"additionalProperties":false,"description":"What the database was really asked, in the query parameter names (place names as resolved). Only the filters that were applied are present.","properties":{"areaMax":{"type":"number"},"areaMin":{"type":"number"},"availableNow":{"type":"boolean"},"bathroomsMin":{"type":"number"},"bbox":{"properties":{"east":{"type":"number"},"north":{"type":"number"},"south":{"type":"number"},"west":{"type":"number"}},"type":"object"},"bedrooms":{"properties":{"exact":{"type":"number"},"max":{"type":"number"},"min":{"type":"number"}},"type":"object"},"billsIncluded":{"type":"boolean"},"city":{"items":{"type":"string"},"type":"array"},"contractType":{"type":"string"},"currency":{"enum":["GBP","EUR","USD","TRY"],"type":"string"},"district":{"items":{"type":"string"},"type":"array"},"features":{"items":{"type":"string"},"type":"array"},"furnished":{"type":"boolean"},"landAreaMax":{"type":"number"},"landAreaMin":{"type":"number"},"nearUniversity":{"properties":{"code":{"type":"string"},"maxMeters":{"type":"number"}},"type":"object"},"noDeposit":{"type":"boolean"},"priceMax":{"type":"number"},"priceMin":{"type":"number"},"propertyType":{"items":{"type":"string"},"type":"array"},"sort":{"type":"string"},"transaction":{"enum":["sale","rent"],"type":"string"}},"type":"object"},"code":{"description":"Present on a soft result (INVALID_LOCATION, OUT_OF_SCOPE, FX_UNAVAILABLE, ...).","type":"string"},"contentLocale":{"description":"The language the listing pages (links, descriptions) resolved to: `locale` when every shown listing has a page in it, the fallback (Turkish) when none does, null when they differ (each card has its own).","enum":["tr","en","ru","de","ar",null],"type":["string","null"]},"dataSource":{"type":"string"},"fxRates":{"properties":{"base":{"enum":["GBP"],"type":"string"},"isFallback":{"enum":[false],"type":"boolean"},"rates":{"properties":{"EUR":{"type":"number"},"TRY":{"type":"number"},"USD":{"type":"number"}},"required":["EUR","USD","TRY"],"type":"object"},"source":{"enum":["database"],"type":"string"},"updatedAt":{"type":["string","null"]}},"required":["base","rates","source","updatedAt","isFallback"],"type":["object","null"]},"groups":{"description":"One group per transaction: two (sale, rent) when no transaction was given.","items":{"properties":{"nextCursor":{"type":["string","null"]},"pageable":{"type":"boolean"},"shown":{"type":"number"},"total":{"type":"number"},"transaction":{"enum":["sale","rent"],"type":"string"},"transactionImplied":{"description":"True when the transaction was implied by the filters (a rental-only fact), not sent: the cursor then carries it.","type":"boolean"}},"required":["transaction","total","shown","nextCursor","pageable"],"type":"object"},"type":"array"},"impliedTransaction":{"description":"Present when no transaction was sent and the search was limited to one because of the filters.","properties":{"because":{"type":"string"},"value":{"enum":["sale","rent"],"type":"string"}},"required":["value","because"],"type":"object"},"issues":{"items":{"properties":{"allowedValues":{"items":{"type":["string","number"]},"type":"array"},"code":{"type":"string"},"field":{"type":"string"},"message":{"type":"string"},"suggestion":{"type":"string"}},"required":["code","field","message"],"type":"object"},"type":"array"},"listings":{"items":{"properties":{"areaSqm":{"type":["number","null"]},"areaSuspect":{"type":"boolean"},"bathrooms":{"type":["number","null"]},"bedrooms":{"type":["number","null"]},"city":{"type":["string","null"]},"cityLabel":{"type":["string","null"]},"contentLocale":{"enum":["tr","en","ru","de","ar"],"type":"string"},"coverImageUrl":{"type":["string","null"]},"currency":{"type":["string","null"]},"dataQuality":{"properties":{"areaSuspect":{"type":"boolean"},"flags":{"items":{"type":"string"},"type":"array"},"priceOutlier":{"type":"boolean"},"titleRoomMismatch":{"type":"boolean"}},"required":["flags","priceOutlier","areaSuspect","titleRoomMismatch"],"type":"object"},"district":{"type":["string","null"]},"featureCount":{"type":"number"},"features":{"items":{"properties":{"key":{"type":"string"},"label":{"type":"string"},"source":{"enum":["column","label"],"type":"string"}},"required":["key","label","source"],"type":"object"},"type":"array"},"furnished":{"enum":["yes","no","unknown"],"type":"string"},"id":{"type":"string"},"isStudio":{"type":"boolean"},"listedAt":{"type":["string","null"]},"listingNumber":{"type":["number","null"]},"listingRef":{"type":["string","null"]},"localeFallback":{"type":"boolean"},"locationPrecision":{"enum":["approximate_grid","district","city","unmapped",null],"type":["string","null"]},"monthlyRentGbp":{"type":["number","null"]},"notes":{"items":{"type":"string"},"type":"array"},"officeName":{"type":["string","null"]},"photoCount":{"type":"number"},"plotM2":{"type":["number","null"]},"price":{"type":"number"},"priceGbp":{"type":["number","null"]},"pricePerSqmGbp":{"type":["number","null"]},"propertyType":{"type":["string","null"]},"propertyTypeLabel":{"type":["string","null"]},"rentPeriod":{"enum":["month",null],"type":["string","null"]},"roomLabel":{"type":["string","null"]},"title":{"type":"string"},"titleSource":{"enum":["listing","generated"],"type":"string"},"transaction":{"enum":["sale","rent"],"type":"string"},"updatedAt":{"type":["string","null"]},"url":{"type":"string"}},"required":["id","listingNumber","listingRef","transaction","title","url","contentLocale","localeFallback","price","currency","priceGbp","city","district","propertyType","bedrooms","areaSqm","features","dataQuality"],"type":"object"},"type":"array"},"locale":{"enum":["tr","en","ru","de","ar"],"type":"string"},"localeFallback":{"description":"True when a listing link or description is in another language because it has no translation in `locale`.","type":"boolean"},"shown":{"description":"Listings in this response.","type":"number"},"split":{"type":"boolean"},"total":{"description":"Public listings matching the filters, summed over the groups.","type":"number"},"totalMatched":{"description":"The same number as `total` (the v2 name).","type":"number"},"unappliedFilters":{"description":"Constraints that were NOT applied (an amenity that cannot be filtered on, text the parser could not read). The listings shown may not honour them.","items":{"properties":{"field":{"type":"string"},"input":{"type":"string"},"reason":{"type":"string"}},"required":["field","input","reason"],"type":"object"},"type":"array"},"warnings":{"items":{"properties":{"code":{"type":"string"},"field":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"type":"object"},"type":"array"}},"required":["listings","total"],"type":"object"}Compare Evlek Listings — 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 ref…
Get an Evlek Listing — 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…
Northern Cyprus Market Statistics — 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.
Compare Northern Cyprus Cities Side-by-Side — Compare source-dated live active-listing asking-price aggregates across 2-4 Northern Cyprus cities. Descriptive listing facts only; not transaction prices, valuation, forecast, ranking, or investment advice.
Compare Evlek Property Listings Side-by-Side — Compare descriptive facts from 2-4 active Evlek sale or long-term-rent listings of the same type. Shows advertised asking price, size and £/m² differences without making a value, suitability, appraisal, or investment judgment. The legacy `listing_ids` parameter name is still accepted as an alias of `listingIds`.
Get Live Asking-Price Context for a Northern Cyprus District — Returns source-dated active sale/long-term-rent listing counts and asking-price aggregates for one district. Any rent-to-price percentage is a derived asking-price ratio, not observed income, net yield, valuation, forecast, ranking, or recommendation.
Get Evlek Listing by Number — Look up a single Evlek listing by its public listing number (e.g. "EVL-123456", "123456", or a bare number) and return its full detail — same shape as get_listing_detail. Use when: a listing number is known. Don't use for: UUID lookups — use get_listing_detail. The legacy `listing_number` parameter name is still accepted as an alias of `listingNumber`.
Get Full Detail for a Single Evlek Listing — Return a 360° profile of one active Evlek listing by UUID or listing number: title, description, price, location, size, amenities, features, cover image, per-photo captions/tags, and AI virtual-staging before/after pairs (always AI-disclosed). Contact details omitted. Use when: a UUID or listing number is already known. Don't use for: discovery — use search_listings first. The legacy `property_id` parameter name is still accepted as an alias of `propertyId`.
Get Northern Cyprus Price Index — Returns source-dated aggregates of live active Evlek sale or long-term-rent asking prices. Descriptive listing facts only: not completed transactions, a valuation, a forecast, or an investment recommendation.
Currency Conversion (payment-plan name reserved) — Currently returns currency conversion only. A real installment/payment-schedule tool is planned under this name; until then it does not produce a payment plan, deposit schedule, or acquisition-cost estimate.