zameen-mcp

zameen-mcp

Enables AI assistants to research Zameen.com property listings with verified/titanium filtering, local watchlists, listing details, and agent-message drafting through structured tools.

Category
Visit Server

README

<div align="center">

<picture> <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/lonewolfmasanaga/zameen.com-mcp/main/assets/zameen-logo-white.svg"> <img src="https://raw.githubusercontent.com/lonewolfmasanaga/zameen.com-mcp/main/assets/zameen-logo.png" alt="zameen.com" width="360"> </picture>

MCP server for researching property listings on Zameen.com

License: MIT CI Python MCP

Verified / Titanium-agent filtering · local watchlists · listing details · agent-message drafting — through 9 structured tools in any MCP client.

Tool reference · Deployment guide · Contributing · Changelog

</div>


An MCP (Model Context Protocol) server for researching property listings on Zameen.com — Pakistan's largest real estate portal — through structured tools instead of fragile screen scraping.

Trademark notice: "Zameen" and the Zameen.com logo are trademarks of Zameen.com (EMPG). They are used here solely to identify the service this tool interfaces with. This project is unaffiliated with, and not endorsed by, Zameen.com.

Works with any MCP client: Claude Desktop, Hermes Agent, Cursor, and others.

Install

# run directly with no permanent install (recommended)
uvx zameen-mcp

# or install as an isolated CLI tool
pipx install zameen-mcp

Register in your MCP client

{
  "mcpServers": {
    "zameen": {
      "command": "uvx",
      "args": ["zameen-mcp"]
    }
  }
}

That's it — 9 tools appear in your AI client.

Tools

Tool What it does
search_properties Structured search: city, purpose, type, beds, price, area, keywords, sort
get_listing_details Full detail page for one listing (URL or numeric id)
list_supported_cities Verified city slugs + property types
add_watch / check_watch Save search criteria locally; later re-checks report only NEW listings
list_watches / remove_watch Manage saved watches
draft_agent_message Compose a polite inquiry for a listing — draft only, never sends
account_status Whether an authenticated session is loaded

Badge-level filtering Zameen's own UI can't do: verified_only, agent_tier (e.g. "titanium"), exclude_promoted.

Full parameter reference + natural-language cheat sheet: docs/TOOLS.md

Optional: log in to your Zameen account

Anonymous searching works out of the box. To also ride your logged-in session (saved searches, personalized pages):

pipx inject zameen-mcp playwright && .venv/bin/playwright install chromium   # pipx
uv tool install zameen-mcp --with playwright && playwright install chromium  # uv

zameen-mcp-login   # opens a Chromium window; YOU log in; cookies stay local

Your password is never seen or stored by this software — only the resulting session cookies, kept in ~/.zameen-mcp/ on your machine. Wipe anytime: zameen-mcp-login --logout.

Data location

All state lives in ~/.zameen-mcp/ (watches.json, session_state.json, chrome-profile/). Override with the ZAMEEN_MCP_HOME environment variable. Treat session_state.json like a password: it grants access to your account while valid.

Development

git clone <repo-url> && cd zameen.com
uv venv .venv && uv pip install -p .venv/Scripts/python.exe -e ".[dev]"
.venv/Scripts/python.exe -m pytest -q          # offline suite against real captured pages
.venv/Scripts/python.exe smoke_test.py         # live end-to-end check

Compliance & fair use

  • Zameen.com's robots.txt disallows crawling its major-city listing pages. This server is built for interactive, human-paced research — a person asking their assistant questions — not bulk harvesting or redistribution.
  • Requests go out one at a time with browser-like headers. Don't remove the pacing or loop searches unattended.
  • Listing data belongs to Zameen.com and its advertisers; "Zameen" is a trademark of Zameen.com. This project is unaffiliated and not endorsed.
  • Prices are agent-entered, as-listed — not verified market valuations.

Limitations

  • Read-only by design: no posting, messaging, or account changes — contacting agents is deliberately a human action (draft_agent_message only drafts).
  • Badge filters operate on fetched result pages (up to 3 per call).
  • Parsing targets Zameen's current HTML; site redesigns may require parser updates (fixtures make regressions easy to catch).

MIT licensed — see LICENSE.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured