{GIN} verdict, M-Value AVM, market facts + semantic search for Moroccan real estate. Moat-safe.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
Inspect callable tools, capabilities, and parameters exposed to AI agents by Marocain.investments β {GIN} real Estate intelligence (Morocco).
search_listingsSearch AI-graded Moroccan listings by city, typology, price, rooms, free-text.
get_listingFull detail for one listing β price (USD/MAD), AI scores, M-Value AVM, trust, {GIN} pillars + verdict.
get_gin_scoreThe {GIN} verdict: Quality + Deal pillars + the fused buy/hold/pass headline.
get_marketMacro market facts for a city or national scope (median price, supply, momentum, WC 2030 / TGV catalysts).
listing_deriveAI-derived one-paragraph investment memo for a listing (6 languages).
semantic_searchConceptual / vector search across the catalogue **and** the authored guides (Foreign Buyer's Playbook, Morocco-vs-Dubai, AI-scoring methodology, residency, city theses).
The official Model Context Protocol server for marocain.investments β bringing {GIN}, our authored real-estate intelligence for Morocco, into any MCP client (Claude Desktop, IDEs, agents).
Discover, score and analyse Moroccan luxury real estate β then submit an enquiry that's routed on-platform. All the analysis is free; contact with the agent is always intermediated by the platform.
{GIN} is the platform's proprietary scoring DNA. Instead of one blurry "AI score", it speaks with two coherent pillars fused into one honest verdict:
It's the difference between a good property and a good deal β the question generic scores never answer. It's honest by design: an overpriced listing is told it's overpriced.
No install needed β run it straight from npm:
Add to claude_desktop_config.json:
Eleven tools β eight read-only analysis tools, a moat-safe enquiry tool, and two commerce tools (discover + order paid services).
| Tool | What it does |
|---|---|
search_listings | Search AI-graded Moroccan listings by city, typology, price, rooms, free-text. |
get_listing | Full detail for one listing β price (USD/MAD), AI scores, M-Value AVM, trust, {GIN} pillars + verdict. |
get_gin_score | The {GIN} verdict: Quality + Deal pillars + the fused buy/hold/pass headline. |
get_market | Macro market facts for a city or national scope (median price, supply, momentum, WC 2030 / TGV catalysts). |
listing_derive | AI-derived one-paragraph investment memo for a listing (6 languages). |
semantic_search | Conceptual / vector search across the catalogue and the authored guides (Foreign Buyer's Playbook, Morocco-vs-Dubai, AI-scoring methodology, residency, city theses). |
gin_ask | Ask T{AI]GIN, the agentic investment analyst, a one-shot question β it plans, searches, scores with the {GIN} pillars and answers with citations. |
gin_deal_memo | A structured, honest investor deal memo for one listing (verdict, M-Value, yield, strengths, risks, district read, next steps). |
| Tool | What it does |
|---|---|
request_service | Submit a buyer enquiry / request a viewing β routed on-platform to the listing's verified agent. Returns a reference, never any contact. |
list_services | The transactable service catalogue + EUR prices β buyer services (AI staging, viral content, reservation, appraiser, visitation β note the live API product_type id is spelled visaitation β the β¬199 AI business plan, lawyer / financing / commercialization) and agent services (listing boost, photo relight). |
order_service | Order any service. Instant products return a Stripe checkout_url (pay on-platform); request-only products return a tracked order_id. Never returns contact. |
Payments: card checkout for instant products may be briefly unavailable while the platform reconnects its payment processor β request-based services and buyer enquiries work regardless.
order_servicereports this cleanly.
The model is simple and the same for everyone: all the intelligence is free (it's lead-gen), and the only way to make contact is through the platform (that's the moat, and how agents are billed).
search_listings / get_gin_score / semantic_search.get_listing / gin_deal_memo / gin_ask.request_service β it routes the buyer's interest to the listing's verified agent and returns a reference. You never receive the agent's phone, email or WhatsApp; the platform intermediates contact.Most of the catalogue is still being onboarded by agents.
request_serviceroutes to a listing's claimed, verified agent; for a listing without one yet it returns a clear note instead of routing.
get_gin_score({ id }) β the authored verdict:
request_service({ listing_id, buyer_name, buyer_email, message }) β an on-platform reference, no contact:
No tool ever returns an agent's or seller's contact. On top of the public API hiding the phone, this server redacts the origin-portal deep link (source_url / source_listing_id) and the agent / agency name from listing payloads β so a downstream agent can't route a user off-platform to the seller. The single conversion path is request_service, which routes a buyer enquiry through marocain's own lead flow and returns a reference, never any contact. Discover, score and analyse freely; contact is always intermediated by the platform.
| Symptom | Cause | Fix |
|---|---|---|
request timed out after 30000ms | Upstream slow or unreachable. | Retry. Bump MAROCAIN_TIMEOUT_MS if your network is high-latency. |
The Marocain API returned an error (403) | Rare β Vercel platform-level anti-bot on very bursty traffic. | Back off and retry. |
valid buyer_email required (from request_service) | A buyer name + valid email are mandatory so the agent can reply. | Supply both. |
listing_unclaimed (from request_service) | The listing has no claimed agent yet, so the enquiry can't be routed. | Try a claimed/verified listing; check back as agents onboard. |
ignoring disallowed MAROCAIN_API_BASE | You set MAROCAIN_API_BASE to a non-HTTPS or non-allowlisted host. | Leave it unset (the default is correct). |
| Env var | Default | Purpose |
|---|---|---|
MAROCAIN_API_BASE | https://marocain.investments | Override the API origin (testing only; must be HTTPS + allowlisted). |
MAROCAIN_TIMEOUT_MS | 30000 | Per-request upstream timeout. |
@hei33enberg/luxury-skills (npm) β the machine-readable capability catalog this server draws from.https://marocain.investments/api/public/* Β· AEO manifest: /llms.txt.Publishing to npm is automated by a GitHub Action (publish-mcp) in the platform repo:
Local npm test runs the unit tests (CI runs them on Node 18/20/22); CI additionally runs the black-box MCP handshake smoke (node test/smoke.mjs) on Node 20.
MIT Β© marocain.investments
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/marocain-investments-gin-real-estate-intelligence-morocco)<a href="https://allmcps.com/mcp/marocain-investments-gin-real-estate-intelligence-morocco"><img src="https://allmcps.com/api/badge/marocain-investments-gin-real-estate-intelligence-morocco?style=directory" alt="Marocain.investments β {GIN} real Estate intelligence (Morocco) on AllMCPs" /></a>