MCLL Real Estate
MCLL(mcllrealestate.com)は、タイの高級不動産会社です。このスキルにより、エージェントは公開されているリスティング(販売・賃貸、バンコク、プーケット、島々)を検索・閲覧できます。ここにあるデータはすべて読み取り専用の公開データであり、キーやログインは不要です。
お使いのランタイムがサポートするアクセス方法を選択してください。MCPとRESTはリスティングを返します。Markdownはエリア、ニュース、開発ページもレンダリングします。
1. MCPサーバー(最もリッチ — 推奨)
Streamable-HTTP MCPエンドポイント:https://mcllrealestate.com/api/mcp
サーバーカード:https://mcllrealestate.com/.well-known/mcp/server-card.json
3つのツール:
search_listings— リスティングを検索。引数:type("sale"|"rent"、必須)、locale(en/fr/th/zh、デフォルトen)、オプションでcity、area、propertyType(人間が読める名前 —"Phuket"、"Condo")、bedrooms、minPrice、maxPrice(THB)、page。戻り値:{ total, page, results: [{ id, title, url, transactionType, city, area, bedrooms, bathrooms, areaSqm, priceThb, image }] }— 各結果のurlの末尾にはslugがあり、get_listingに渡します。get_listing— 1件のリスティングの詳細。引数:type("sale"|"rent")、slug(検索結果から)、locale。価格、サイズ、特徴、座標、Markdownのdescriptionを返します。execute— コードモード。引数:code(JavaScript文字列)。Cloudflareサンドボックス内で実行され、グローバルmcll.search(args)とmcll.get(args)を使用できます。ネットワーク、ファイルシステム、シークレット、書き込みは不可。JSONシリアライズ可能な結果を返すにはreturnを使用;トップレベルのawaitも動作します。複数のリスティングを1回の呼び出しで比較、ランキング、計算するのに最適です。
execute コードの例:
const { results } = await mcll.search({ type: "sale", city: "Bangkok", page: 1 });
const details = await Promise.all(
results.slice(0, 2).map((r) =>
mcll.get({ type: "sale", slug: r.url.split("/").pop(), locale: "en" }),
),
);
return details.map((d) => ({
title: d.title,
url: d.url,
pricePerSqm: d.priceThb && d.areaSqm ? Math.round(d.priceThb / d.areaSqm) : null,
}));
2. REST API(MCPクライアント不要)
OpenAPI:https://mcllrealestate.com/api/openapi.json
- 検索 —
GET /api/listings?type=sale|rent&locale=enとオプションフィルター。これらのフィルターはID(UUID) を取ることに注意(名前ではありません):city、area、propertyType、bedrooms、bathrooms、priceMin、priceMax、sizeMin、sizeMax、furnished、features、sort、page。戻り値:{ total, page, results }、各結果はMCP検索と同じ安全な公開プロジェクションを持ちます:絶対url、公開画像URL、価格フィールド、市区町村名、管理者専用フィールドは含まれません。(名前ベースのフィルタリング — 「プーケットのコンド」— には、名前をIDに解決してくれるMCPのsearch_listingsツールを使用してください。) - 詳細 —
GET /api/listings/{type}/{slug}?locale=en→ JSONで1件のリスティング、Markdownのdescriptionを含みます。typeはsaleまたはrent;slugはリスティングURLの最後のパスセグメントです。
# 既知のリスティングの詳細(スラグは公開URLから):
curl -s "https://mcllrealestate.com/api/listings/sale/kamala-cliff-villa?locale=en"
# 検索(販売リスティング、1ページ目):
curl -s "https://mcllrealestate.com/api/listings?type=sale&locale=en"
3. Markdownコンテンツネゴシエーション(任意のページ → クリーンテキスト)
任意のリスティング、エリア、ニュース、開発URLに Accept: text/markdown を送信すると、MCLLはHTMLではなくMarkdown版を返します — ページを解析するよりもはるかに少ないトークン数です。ホームページはサイト概要を返します。エリア、ニュース、開発はこの方法でのみアクセス可能です — MCPツールやRESTエンドポイントではカバーされていません;それらのURLはサイトマップで見つけてください。
curl -s -H "Accept: text/markdown" \
"https://mcllrealestate.com/en/buy/villa/phuket/kamala/kamala-cliff-villa"
インデックスページと静的ページにはMarkdown版がなく、HTMLを返します — それらには検索APIを使用してください。
典型的なワークフロー
- ユーザーが複数のリスティングの比較、ランキング、派生メトリクスを要求した場合は、
executeを使用します。 - それ以外の場合は、ユーザーが求めるものを検索します(
search_listings、またはGET /api/listings)。 - 結果リストを読み、
title、area、priceThbで関連するリスティングを選択します。 - 選択したリスティングの詳細を取得します(
get_listing、詳細RESTルート、またはリスティングurlのMarkdown)。 - リスティングの事実をユーザーに回答し、公開
urlにリンクします。
発見と規則
- サイトマップ(すべてのURL、ロケール別):
https://mcllrealestate.com/sitemap.xml。 - APIカタログ(マシン用インデックス):
https://mcllrealestate.com/.well-known/api-catalog。 - エージェント向けサイトガイド:
https://mcllrealestate.com/llms-full.txt。 - ロケール:
en·fr·th·zh。未公開のロケールは英語にフォールバックします。 - 価格はTHB単位;
priceOnRequest: true(またはpriceThb: null)は価格が非公開であることを意味します — 「Price upon enquiry」と伝え、数値を決して表示しないでください。 - 公開されたリスティングのみが返されます;認証はなく、書き込み可能なものはありません。