Skip to main content
Glama
Evlek

Evlek — Northern Cyprus Property MCP Server

Official

Evlek MCP Server

MCP Hosted License Coverage MCP Registry

AI-native property discovery for North Cyprus (KKTC). Built on the Model Context Protocol — works in Claude, ChatGPT, Gemini, Cursor, and any MCP-compatible client.

The Evlek MCP server gives AI agents structured, real-time access to North Cyprus property data — search active listings, compare cities and districts, track the price index, and estimate rental yield. All data is sourced live from evlek.app. Title-deed (koçan) and legal-procedure tools are deliberately not part of the surface: that taxonomy has not passed an independent KKTC legal audit.

License scope

This repository is MIT-licensed for the public manifest, documentation, examples, and reference clients contained here. The hosted Evlek service, evlek.app web app, mobile apps, listing database, AI prompts, business logic, brand assets, name, logo, and trade dress remain proprietary and are not licensed under MIT. See LICENSE for details.


Related MCP server: UK Property Data

Why Evlek MCP

  • AI-first. Built for agentic workflows from day one — not retrofitted on a legacy listing API.

  • Multilingual. Property data in TR, EN, RU, DE, AR (currently exposed via tool descriptions in EN).

  • Verification-aware listings. Evlek surfaces listing and account verification context where available, and the MCP omits contact fields to preserve Evlek's reveal/contact funnel.

  • Built for the region. Optimized for the 6 cities of North Cyprus (Lefkoşa, Girne, Gazimağusa, İskele, Güzelyurt, Lefke) and 100+ districts.

  • Production-grade. OWASP MCP Top 10 aligned — Zod input validation, output sanitization, rate limiting (60/min/IP, 500/min global), Sentry observability.


Quick start

Remote-capable clients (preferred)

Most modern MCP clients (Claude, Cursor, VS Code) connect directly to the Streamable HTTP endpoint — no local bridge needed:

{
  "mcpServers": {
    "evlek": {
      "url": "https://evlek.app/api/mcp"
    }
  }
}

ChatGPT (connector + Deep Research)

Add https://evlek.app/api/mcp as a custom connector. Evlek exposes OpenAI-compatible search and fetch tools, so it works in ChatGPT connectors and Deep Research in addition to developer mode.

Claude Desktop (legacy stdio bridge)

If your client only supports stdio servers, use the pinned mcp-remote bridge. Add this to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "evlek": {
      "command": "npx",
      "args": ["-y", "mcp-remote@0.1.16", "https://evlek.app/api/mcp"]
    }
  }
}

Restart Claude Desktop. The "evlek" server appears in the tools list.

MCP Inspector (test before installing)

npx @modelcontextprotocol/inspector https://evlek.app/api/mcp

Direct API (cURL)

curl -X POST https://evlek.app/api/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

More configs: examples/


Local stdio server (this repository)

This repo is also a runnable MCP server. It answers initialize / tools/list entirely locally from the embedded tool contract (tools.json) and fetches live data from the Evlek data API when a tool is called:

npx github:Evlek/evlek-mcp        # or: npm install && npm start
{
  "mcpServers": {
    "evlek": {
      "command": "npx",
      "args": ["-y", "github:Evlek/evlek-mcp"]
    }
  }
}

Smoke-test it (spawns the server and speaks real MCP over stdio):

npm test              # live: initialize + tools/list + a real tools/call
OFFLINE=1 npm test    # offline: introspection works with zero network

Available tools (v1.9.0 — 15 tools)

#

Tool

What it does

1

search_listings

Search active listings by city, type (sale/rent/daily), bedrooms, and GBP price range (normalized server-side). Up to 10 results with title, price, location, direct link.

2

get_price_index

Aggregated avg/median/min/max prices per city + top districts (Evlek Price Index), with IQR outlier exclusion and a minimum-sample floor.

3

get_market_overview

High-level market overview — indicative city rent/sale levels, yield ranges, and routing to Evlek's calculators.

4

compare_cities

Compare 2-4 cities side-by-side with prices, listing counts, top districts, automatic verdict.

5

get_yield_estimate

Estimate gross/net annual rental yield + breakeven years. Cities without sufficient data return a clear unsupported message.

6

suggest_neighborhood

Match a buyer persona (retiree, investor, student, family, digital_nomad, vacation) to neighborhoods.

7

compare_properties

Compare 2-4 active listing UUIDs side-by-side with GBP price-per-m², area, bedrooms, value insight. Mixed sale/rent/daily IDs are rejected — those prices are not comparable.

8

get_district_profile

360° district profile — sale/rent stats, £/m², bedroom breakdown, estimated yield, persona match. Same outlier filter and sample floor as the price index.

9

student_housing

Student-housing rental outlook near a KKTC university, academic-year vs year-round.

10

payment_plan

Convert a price across GBP/EUR/USD/TRY using live date-stamped rates; off-plan staged-payment context.

11

get_listing_detail

360° profile of one active listing by UUID, including GBP-normalized price-per-m².

12

search

(ChatGPT-compatible) Free-text search returning listings as {id, title, url}. Understands city, type, bedroom and GBP price constraints in the query.

13

fetch

(ChatGPT-compatible) Fetch full listing detail by id from search.

14

list_locations

Valid city + district dictionary — call first when unsure of location names.

15

get_listing_by_number

Look up a listing by its EVL-XXXXXX listing number.

Interactive widgets (MCP Apps / SEP-1865)

Three tools additionally ship a sandboxed HTML view that MCP Apps-capable hosts (Claude web/desktop) render inline in the conversation:

Tool

Widget

What you get

search_listings, search

ui://evlek/listing-cards-v2.html

Horizontal carousel of cards (cover photo, price, location) — the whole card is the link, no separate CTA button; opening one drills into the SAME detail view as get_listing_detail, in fullscreen, never an inline half-panel. An opt-in "select to compare" mode sends 2-4 listings to compare_properties, rendered as a comparison table.

get_listing_detail

ui://evlek/listing-detail-v2.html

Photo gallery with AI captions, spec sheet, and a before/after AI virtual-staging comparison slider

get_price_index

ui://evlek/price-index-v2.html

Per-city summary rows inline (avg/median, capped to a few cities to stay compact); the full district breakdown and city-comparison table open in fullscreen, not inline

Views are static, self-contained HTML — no bundler, no third-party JS. Listing data reaches them only at runtime over postMessage and is written with textContent, never innerHTML. CSP is declared per resource (_meta.ui.csp) and limited to the public listing-photo origin.

See TOOLS.md for full input schemas, parameter details, and response examples.

Resources (7) & resource templates (2)

Read-only evlek:// data via resources/list / resources/read, plus parameterized templates via resources/templates/list:

  • Templates: evlek://price-index/{city} · evlek://district/{city}/{district}

  • Instances: per-city price indexes (girne, iskele, lefkosa, gazimagusa, guzelyurt, lefke) and a sample district profile.

Prompts (2)

  • investment_analysis · student_rental_outlook


Example prompts

  • "Find 2-bedroom flats for rent in Girne under £500/month."

  • "What's the median sale price per square meter in Lefkoşa?"

  • "Compare İskele and Famagusta for investment — which has higher rental yield?"

  • "Estimate the rental yield on a £150,000 2+1 in Girne."

  • "Show me apartments in Girne under £150,000."

  • "What does a district profile for Alsancak look like?"


Coverage

  • Cities: 6 (Girne, İskele, Lefkoşa, Gazimağusa, Güzelyurt, Lefke)

  • Districts: 100+

  • Currency: GBP primary; TRY/USD/EUR normalized to GBP server-side using live daily exchange rates

  • Tool descriptions: EN · Listing data fields: TR + EN


Architecture

The Evlek MCP server runs as a hosted endpoint at https://evlek.app/api/mcp. It speaks the Model Context Protocol over Streamable HTTP (JSON-RPC 2.0), protocolVersion 2026-07-28, and exposes tools, resources, resource templates, and prompts. Discovery metadata is published at /.well-known/mcp.json.

This repository contains:

  • server.json — MCP Registry manifest

  • TOOLS.md — Full tool reference (JSON schemas + examples)

  • examples/ — Configuration files for Claude Desktop, Cursor, VS Code

  • CONTRIBUTING.md — How to file issues and propose docs improvements

The full server implementation (database schemas, API routes, AI prompt engineering, listing pipeline) is hosted at evlek.app and remains proprietary.

Security model

Per OWASP MCP Top 10: per-IP rate limit 60/min, global 500/min, 30s hard timeout, Zod input validation, output sanitization (prompt-injection defense), max 10 results per query, Supabase anon key + RLS, no stack traces leaked, Sentry observability.

To report a security issue, email hello@evlek.app.


Status

  • MCP version: 1.9.0 (live)

  • Protocol: 2026-07-28

  • Primitives: 15 tools · 7 data resources + 3 interactive widget resources · 2 resource templates · 2 prompts

  • Auth: none (public read-only)

  • Endpoint: https://evlek.app/api/mcp

  • MCP Registry: app.evlek/mcp-server


License

MIT — see LICENSE. MIT covers the public manifest, documentation, examples, and reference clients in this repository only (see License scope above). The hosted Evlek service (web app, mobile apps, listing data, AI prompts, database schemas, business logic) is proprietary.

Trademark notice: "Evlek" is a trademark of Onur Dokuzoğlu. The MIT license does not grant rights to use the "Evlek" name, logo, or branding except as described in this README. To request brand usage permission, contact hello@evlek.app.



Built in North Cyprus by an architect, not a software firm. Powered by Anthropic Claude, Supabase, Vercel, and the Model Context Protocol.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Property Records MCP — address-level US property records (sales history,

  • Real estate MCP server for Morocco — search, valuation, market analysis, 17 tools.

  • Singapore property & financial data APIs for AI agents. 27 MCP tools. x402 micropayments.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Evlek/evlek-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server