Skip to main content
Glama
lortonx

daft-adverts-mcp

by lortonx

Irish classifieds toolkit (Daft + Adverts)

Bun monorepo: unofficial HTTP clients and MCP servers for two Irish sites —

Site

Domain

Focus

Daft.ie

property

sale / rent / sharing search, listing details, Keycloak auth

Adverts.ie

marketplace

ad search, refine/facets, ad details, optional account

Not affiliated with Distilled Media, Daft, or Adverts. Protocols and shapes come from the Android apps.

Disclaimer

This repository was written entirely by AI coding agents under human direction. Experiment / personal tooling — not a supported product.

  • No warranty — correctness and API compatibility are not guaranteed; upstream apps change.

  • Tests are minimal — do not treat a green test run as production-ready.

  • Use at your own risk. Respect ToS and rate limits; do not scrape, spam, or abuse accounts.

Related MCP server: Bazos-MCP

Packages

packages/
  daft-api/       @daft-ie/api          HTTP client → gateway.daft.ie / auth.daft.ie
  daft-mcp/       @daft-ie/mcp          MCP tools (stdio) over daft-api
  adverts-api/    @adverts-ie/api       HTTP client → new.api + api.adverts.ie
  adverts-mcp/    @adverts-ie/mcp       MCP tools (stdio) over adverts-api
  mcp-host/       @daft-ie/mcp-host     one Fastify process: both MCPs over HTTP (+ Docker)

Package

README

What you get

@daft-ie/api

packages/daft-api

DaftApi: residential/commercial/new-homes search, geo helpers, property details, saved ads/searches, inbox, Keycloak login + refresh rotation

@daft-ie/mcp

packages/daft-mcp

Agent tools: search_for_sale / for_rent / sharing, get_property, autocomplete, resolve_area, optional auth_*

@adverts-ie/api

packages/adverts-api

AdvertsApi: legacy search.json browse + facets/locations; fresh advert/{id}, account, media, place-ad surface; app enums

@adverts-ie/mcp

packages/adverts-mcp

Agent tools: search_ads, refine/price facets, counties/areas, get_ad, discover/config, optional auth_*

@daft-ie/mcp-host

packages/mcp-host

Streamable HTTP: /mcp/daft, /mcp/adverts, /health; Cursor / OpenCode / Hermes / Docker

Layering:

  Cursor / OpenCode / Hermes / your code
            │
            ├─ stdio ──► daft-mcp ──► daft-api ──► Daft
            ├─ stdio ──► adverts-mcp ──► adverts-api ──► Adverts
            └─ HTTP  ──► mcp-host ──► both MCP servers (shared process)

Quick start

bun install
cp .env.example .env   # fill DAFT_* and/or ADVERTS_* as needed

Library use

import { DaftApi } from "@daft-ie/api";
import { AdvertsApi } from "@adverts-ie/api";

const daft = new DaftApi({ platform: "android", appVersion: "9.8.1" });
const adverts = new AdvertsApi();

MCP over HTTP (both tools, one process) — preferred for multi-client setups:

bun packages/mcp-host/src/index.ts
# http://127.0.0.1:3100/mcp/daft
# http://127.0.0.1:3100/mcp/adverts

Docker: see packages/mcp-host.

MCP stdio (single server per process)

bun packages/daft-mcp/src/index.ts
bun packages/adverts-mcp/src/index.ts

Wire-up: .cursor/mcp.json, opencode.json, and packages/mcp-host/README.md.

Environment

Shared root .env (gitignored). Rough split:

Vars

Used by

DAFT_CLIENT_ID, DAFT_REFRESH_TOKEN, DAFT_ACCESS_TOKEN, …

@daft-ie/api / @daft-ie/mcp

ADVERTS_NEW_API_KEY, ADVERTS_OLD_API_KEY, ADVERTS_ACCESS_TOKEN, …

@adverts-ie/api / @adverts-ie/mcp

HTTP_PROXY

optional outbound proxy for Bun API calls

DAFT_ENQUIRY_MODE

chrome (default) or legacy tcp phone mint

DAFT_CHROME_*

Docker Chrome+Xvfb enquiry pool

MCP_HOST, MCP_HOST_PORT

@daft-ie/mcp-host

Token files after login: .daft-tokens.json, .adverts-tokens.json (override with *_TOKEN_FILE).

You can run only Daft, only Adverts, or both — unused keys are simply unused.

Tests

Per package (bun test in that folder). Coverage is intentionally thin; see disclaimer.

License

MIT (unless a package says otherwise).

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables interaction with the Daft.ie API for searching rental properties and retrieving detailed information about specific rental listings.
    10
    ISC
  • A
    license
    A
    quality
    D
    maintenance
    MCP server for interacting with Bazos.cz, Bazos.sk, Bazos.at, and Bazos.pl. Supports searching ads, retrieving ad details, and fetching user ratings.
    3
    28 npm
    2
    AGPL 3.0
  • A
    license
    A
    quality
    D
    maintenance
    MCP server that enables AI assistants to search Irish property listings on Daft.ie via the daftlistings library.
    5
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server to search tutti.ch Swiss classifieds anonymously with tools for listings, categories, and localities. Supports both MCP clients and a JSON CLI.
    17 npm
    MIT