chathome MCP
Connect Claude, Cursor, or ChatGPT to live Luxembourg real estate data. Search rentals, browse listings for sale, and pull commune market intelligence — straight from your AI assistant.
MCP Server URL
https://chathome.lu/api/mcpAuthentication
Two methods supported — OAuth 2.1 is recommended for personal use.
Your MCP client handles the OAuth flow automatically — no Client ID or secret to enter. This server uses public clients + PKCE with dynamic client registration (RFC 7591): your client registers itself the first time it connects.
Claude Code CLI — paste into ~/.claude/claude_code_config.json
{
"mcpServers": {
"chathome": {
"type": "http",
"url": "https://chathome.lu/api/mcp"
}
}
}How the flow works
- 1Paste the MCP URL into your AI client — no Client ID or secret needed.
- 2The client opens a browser to chathome.lu where you log in and approve access.
- 3Tokens are issued automatically — the client stores them and refreshes as needed.
Generate a key at Dashboard → Agent Access, then pass it as an X-API-Key header. Keys are prefixed cht_.
{
"mcpServers": {
"chathome": {
"type": "http",
"url": "https://chathome.lu/api/mcp",
"headers": {
"X-API-Key": "cht_YOUR_KEY_HERE"
}
}
}
}Rate limits
- ·200 tool calls / hour per user
- ·300 calls / hour per IP
- ·Tokens expire after 1 hour (OAuth auto-refreshes)
Available Tools
Eight tools covering rental search, for-sale search, listing detail, market data, price estimation, commute times, and listing inquiries.
Response Shapes
Each tool returns a typed JSON object. Search tools wrap listings in an array; inquiry tools return their own shapes.
search_rentals · search_for_sale
{ listings: AgentListing[]; total: number; truncated?: true }get_listing
{ listing: AgentListing }AgentListing type
type AgentListing = {
id: string;
url: string;
title: string;
price: number | null;
currency: "EUR";
listingType: "rent" | "sale";
propertyType: string | null;
city: string | null;
district: string | null;
beds: number | null;
baths: number | null;
areaSqm: number | null;
energyClass: string | null;
imageUrl: string | null;
agencyName: string | null;
latitude: number | null;
longitude: number | null;
};get_market_context · get_price_estimate · get_commute_times
// Each returns a tool-specific JSON object, e.g.:
// get_price_estimate → { estimatedPrice, low, high, confidence, comparables, … }
// get_commute_times → { commune, destination, mode, durationMinutes, … }
// get_market_context → { commune, medianRentEur, walkabilityScore, … }submit_inquiry
type McpInquiryResult =
| { kind: "conversation_created"; conversationId: string; listingId: string }
| { kind: "external_agency"; agencyName: string | null; phone: string | null;
email: string | null; website: string | null };get_inquiry_status
{
conversationId: string;
status: "awaiting_reply" | "replied";
messages: { from: "you" | "agent"; text: string; createdAt: string }[];
}Resources & Prompts
The server also exposes one resource template and two built-in prompts.
Resource
chathome://listing/{id}Read a single listing by ID — same data as get_listing, exposed as an MCP resource URI.
Prompt · find-family-home
Guided search for family-friendly rental properties. Arguments: commune?, budget?, beds?.
Prompt · compare-communes
Side-by-side comparison of two Luxembourg communes. Arguments: commune_a, commune_b, locale?.
Try It
Once connected, ask your AI assistant:
- “Find me 2-bedroom apartments in Luxembourg-Ville under €2,000/month”
- “What are houses for sale in Strassen with a garden?”
- “Compare liveability scores for Esch-sur-Alzette and Differdange”
- “Show me the full details for listing ID abc-123”
Claude Agent Skill
A packaged skill that teaches Claude how to use chathome well — tool selection, search workflows, and Luxembourg market context.
claude.ai & Claude Desktop
Download the zip, then upload it under Settings → Capabilities → Skills. Pair it with this MCP server added as a custom connector.
Download skill (.zip)Claude Code — one-step plugin (skill + MCP server)
/plugin marketplace add chathome-lu/chathome-claude-plugin /plugin install chathome@chathome
Agents & other runtimes
The skill follows the open Agent Skills standard. Fetch it raw at /skills/chathome/SKILL.md.
Roadmap
What's live now and what's coming next.
MCP v1 — 8 tools, 1 resource, 2 prompts over Streamable HTTP with OAuth 2.1 + PKCE and API-key auth.
A2A Agent Card — /.well-known/agent-card.json for Google A2A protocol discovery (task endpoint /api/a2a).
Agent Skill — downloadable Claude skill bundling chathome workflows, paired with this MCP server.