# Yatmo Yatmo provides neighbourhood intelligence for real-estate websites: nearby points of interest, travel times, neighbourhood summaries, and AI-generated local content. Available as drop-in plugins (iframe, JavaScript, WordPress, Odoo, Drupal, Webflow and other no-code builders), packages for every stack (npm: @yatmo/sdk, @yatmo/react, @yatmo/vue, @yatmo/astro, @yatmo/nuxt, web components; Packagist: yatmo/yatmo-php, yatmo/laravel; PyPI: yatmo; NuGet: Yatmo.Client), an MCP server for AI assistants, native mobile SDKs (iOS, Android, React Native, Flutter) and as a REST API described by an OpenAPI 3.1 specification (https://documentation.yatmo.com/openapi.yaml). Coverage in 25 countries across Europe, North America, Africa and Oceania. ## Getting started - [Yatmo documentation home](https://documentation.yatmo.com/): Overview and entry points. - [Quick start](https://documentation.yatmo.com/getting-started): First working map in five minutes. - [Plugins vs REST API](https://documentation.yatmo.com/audience): Side-by-side comparison to pick the right integration path. - [License & API keys](https://documentation.yatmo.com/license): Every client gets two keys — a frontend key for browser-embedded plugins and a backend key for server-to-server REST API calls. - [Countries & languages](https://documentation.yatmo.com/countries): Twenty-five supported countries with per-country language coverage. - [White-label for agencies](https://documentation.yatmo.com/white-label): Partnership program for agencies / SaaS platforms managing Yatmo for many clients with a dedicated key-management API. ## Plugins (frontend integration) - [Plugins overview](https://documentation.yatmo.com/plugins): Drop-in components that get you a working Yatmo integration without writing API calls. - [Iframe plugin](https://documentation.yatmo.com/plugins/iframe): The easiest and most flexible plugin. One iframe tag, five display modes (map+summary overlay, map+scores, map-on-top, map-only, summary-only). Configured via URL parameters. No JavaScript required. - [WordPress Map plugin](https://documentation.yatmo.com/plugins/wordpress-map): Embed a Yatmo map in any WordPress page with the [yatmo-map] shortcode. - [WordPress Text plugin](https://documentation.yatmo.com/plugins/wordpress-text): Auto-generated neighbourhood descriptions via the [yatmo-text] shortcode. - [JavaScript Map plugin](https://documentation.yatmo.com/plugins/js-map): Embeddable interactive map with a single config object and one script tag. - [JavaScript Summary plugin](https://documentation.yatmo.com/plugins/js-summary): Table of nearby POIs with distance and travel times. - [JavaScript Summary-as-text plugin](https://documentation.yatmo.com/plugins/js-summary-text): Narrative paragraphs describing the surroundings. - [Odoo module](https://documentation.yatmo.com/plugins/odoo): Website building blocks and QWeb templates for the map and the indexable neighbourhood text, Odoo 17 to 20 (apps.odoo.com). - [Drupal module](https://documentation.yatmo.com/plugins/drupal): Blocks and Geofield formatters for the map and the indexable neighbourhood text, Drupal 10.3 and 11 (drupal.org/project/yatmo_map). - [TYPO3 extension](https://documentation.yatmo.com/plugins/typo3): Fluid ViewHelpers yatmo:map, yatmo:pois and yatmo:text for the map, the nearest places and the indexable neighbourhood text, TYPO3 12.4, 13.4 and 14, on TER as yatmo_map. - [Webflow and no-code builders](https://documentation.yatmo.com/plugins/webflow): Embed elements fed by CMS fields (address or coordinates) with an embed code generator; also Wix, Squarespace, Framer, Shopify. - [Framer plugin](https://documentation.yatmo.com/plugins/framer): Code components with property controls and CMS binding, inserted by a plugin. - [Bubble plugin](https://documentation.yatmo.com/plugins/bubble): Three visual elements fed by an address or coordinates from the database. ## Packages and SDKs (developers) - [JavaScript packages](https://documentation.yatmo.com/api/javascript-sdk): @yatmo/sdk (typed API client for Node and edge), @yatmo/maps (browser plugins), @yatmo/elements (web components with an address attribute), @yatmo/react, @yatmo/vue, @yatmo/astro (build-time text), @yatmo/nuxt (module), gatsby-plugin-yatmo; Next.js starter at https://github.com/Yatmo/yatmo-nextjs-starter. - [PHP client yatmo/yatmo-php](https://packagist.org/packages/yatmo/yatmo-php): Typed client, neighbourhood text as HTML, zero dependency, PHP 8.1+. - [Laravel package yatmo/laravel](https://packagist.org/packages/yatmo/laravel): Service provider, .env keys, facade, Blade components x-yatmo-map, x-yatmo-text, x-yatmo-pois. - [Symfony bundle yatmo/symfony-bundle](https://packagist.org/packages/yatmo/symfony-bundle): Twig functions yatmo_map, yatmo_pois, yatmo_text, .env keys, Flex recipe, cached text, Symfony 6.4 to 8. - [Python client yatmo](https://pypi.org/project/yatmo/): Typed client for Django, Flask, FastAPI and notebooks, zero dependency, Python 3.9+. - [.NET client Yatmo.Client](https://www.nuget.org/packages/Yatmo.Client): Async client for ASP.NET Core, Blazor and Azure Functions, .NET Standard 2.0 and .NET 8. - [GitHub organisation](https://github.com/Yatmo): Source of every package, examples repository (yatmo-examples), MCP client configurations. ## Advanced plugin features - [Isochrones](https://documentation.yatmo.com/plugins/advanced/isochrones): Travel-time polygons (5 / 10 / 20 min) on the map. - [Favorite addresses](https://documentation.yatmo.com/plugins/advanced/favorite-addresses): Let signed-in visitors save personal locations and see commute distances. - [Map styles](https://documentation.yatmo.com/plugins/advanced/map-styles): Seven curated basemap styles. - [Route from origin](https://documentation.yatmo.com/plugins/advanced/route-from): Show route + travel time from a fixed origin to clicked POIs. - [Full-screen mode](https://documentation.yatmo.com/plugins/advanced/full-screen): Toggle button for full-screen map. ## Real estate search (JavaScript Map plugin) - [Real estate search overview](https://documentation.yatmo.com/plugins/advanced/real-estate-search): The flow (search page, your backend, results page), the GeoJSON shape handed to your site through onSearch / the yatmo:search event, CSS isolation and customization (accent colour, --yatmo-* variables, yatmo-* classes). - [Travel-time search](https://documentation.yatmo.com/plugins/advanced/travel-time-search): Panel with reference address, travel time slider and mode (walk, bike, car, transit); the reachable area is drawn and its polygon sent to your backend. - [Draw-a-zone search](https://documentation.yatmo.com/plugins/advanced/draw-search): The visitor draws the search area in one stroke; simplified polygon, "Search in this area" button triggers your site. - [Lifestyle search](https://documentation.yatmo.com/plugins/advanced/lifestyle-search): Up to five criteria (travel time from an address, close to a category such as primary schools, near a precise transit line); Yatmo stores them per userId and computes the common area. - [Listings on the map](https://documentation.yatmo.com/plugins/advanced/listings): Display thousands of listings with native clustering and price pills, a base card template (picture, price, title, place, link) you can restyle or replace, and the search area drawn with them. ## Yatmo MCP server (for AI agents) - [Yatmo MCP overview](https://documentation.yatmo.com/mcp): Read-only Model Context Protocol facade exposing Yatmo's neighbourhood intelligence to AI agents. Hosted at https://mcp.yatmo.com/mcp/v1. Same LicenceKey as the REST API. - [Official MCP registry entry](https://registry.modelcontextprotocol.io): The server is published as com.yatmo/yatmo (streamable HTTP, LicenceKey header or OAuth 2.1); also listed on Smithery, Glama and the Docker MCP Catalog. - [MCP quick start](https://documentation.yatmo.com/mcp/quick-start): curl initialize / tools/list / tools/call walkthrough plus generic remote-MCP JSON config. - [MCP authentication](https://documentation.yatmo.com/mcp/auth): LicenceKey header, error codes (400/401/403/429/500), and country authorisation inherits from the Yatmo plan. - [MCP tools index](https://documentation.yatmo.com/mcp/tools): Common response envelope `{text, facts, warnings, metadata}` and the full category vocabulary (school, nursery, supermarket, public_transport, train_station, motorway). - [yatmo_get_location_summary](https://documentation.yatmo.com/mcp/tools/location-summary): Human-readable neighbourhood paragraph plus structured nearest school, nursery, supermarket, transport and reverse-geocoded place. - [yatmo_get_nearby_pois](https://documentation.yatmo.com/mcp/tools/nearby-pois): Ordered POIs around a property, filterable by category, within a capped radius. - [yatmo_get_nearest_by_category](https://documentation.yatmo.com/mcp/tools/nearest-by-category): Single nearest POI of a given category, with distance and travel time. `school` returns actual schools; `nursery` returns crèches only. - [yatmo_get_accessibility_profile](https://documentation.yatmo.com/mcp/tools/accessibility-profile): Public-transport presence, nearest stop, nearest train station, nearest motorway access. - [Connect an AI client](https://documentation.yatmo.com/mcp/clients): Generic remote-MCP JSON config, Claude.ai and Cursor setup, browser-side security guidance. - [MCP FAQ](https://documentation.yatmo.com/mcp/faq): OAuth status, school vs nursery, browser usage, country coverage. ## Mobile SDKs (native iOS and Android apps) - [Mobile SDKs overview](https://documentation.yatmo.com/mobile): Native SDKs for iOS (Swift), Android (Kotlin), React Native and Flutter built on MapLibre Native and the REST API, plus a WebView path for Capacitor, Ionic and Cordova. Same map styles, POI icons and data as the web plugins. - [Mobile authentication (app ids)](https://documentation.yatmo.com/mobile/app-ids): The frontend key is locked to registered iOS bundle ids and Android application ids, sent in the X-Yatmo-App-Id header; rules, errors and what the restriction really protects. - [iOS SDK](https://documentation.yatmo.com/mobile/ios): Swift Package (iOS 15+): YatmoMapView for UIKit and SwiftUI, typed async YatmoClient, WKWebView fallback. - [Android SDK](https://documentation.yatmo.com/mobile/android): Kotlin library (minSdk 24): YatmoMapView for XML and Jetpack Compose, coroutine YatmoClient, WebView fallback. - [React Native SDK](https://documentation.yatmo.com/mobile/react-native): TypeScript package on @maplibre/maplibre-react-native: YatmoMapView component, typed client, optional WebView component, Expo notes. - [Flutter SDK](https://documentation.yatmo.com/mobile/flutter): Dart package on maplibre_gl: YatmoMapView widget, typed client, WebView snippet. - [WebView, Capacitor, Ionic, Cordova](https://documentation.yatmo.com/mobile/webview): Load the iframe plugin in a WKWebView or Android WebView, or keep the JavaScript plugin in hybrid apps; authentication and trade-offs. - [Bring your own map](https://documentation.yatmo.com/mobile/bring-your-own-map): Yatmo style URLs for MapLibre, the /Points response fields, POI icon CDN pattern, isochrone GeoJSON, fair use and attribution. ## REST API (backend integration) - [API overview](https://documentation.yatmo.com/api): When to call the API directly, what each endpoint does. - [Authentication](https://documentation.yatmo.com/api/auth): Send your backend license key in the LicenseKey HTTP header. - [Conventions](https://documentation.yatmo.com/api/conventions): Country subdomains (be.yatmo.com, fr.yatmo.com, ...), lat/lng ordering, language parameter, URL encoding. - [Errors](https://documentation.yatmo.com/api/errors): HTTP status codes returned by the API. - [OpenAPI specification](https://documentation.yatmo.com/openapi.yaml): OpenAPI 3.1 description of every endpoint (parameters, responses, the LicenseKey header), for code generators, Postman and GPT Actions. ## API endpoints - [GET /summary](https://documentation.yatmo.com/api/endpoints/summary): Nearby POIs grouped by category, closest cities, and travel times. The most-used endpoint. GET /Summary/text returns the written neighbourhood text in every language of the country; GET /scores one 0 to 10 score per category. - [GET /enrichment](https://documentation.yatmo.com/api/endpoints/enrichment): Listing enrichment for real estate portals. For one position, the nearest place of each category (schools, transit stops, stations, supermarket...) with routed distance and time on foot, by bike, by car and by public transport, as flat JSON to store and filter on. - [GET /points](https://documentation.yatmo.com/api/endpoints/points): POIs inside a geographic bounding box, optionally filtered by category. - [GET /categories](https://documentation.yatmo.com/api/endpoints/categories): Hierarchical POI category list, localized. - [GET /isochrone](https://documentation.yatmo.com/api/endpoints/isochrone): Travel-time polygons for driving, walking, cycling, transit. - [GET /geolocation](https://documentation.yatmo.com/api/endpoints/geolocation): Forward and reverse geocoding. - [GET /route](https://documentation.yatmo.com/api/endpoints/route): Route and travel time between two coordinates. - [GET /image](https://documentation.yatmo.com/api/endpoints/image): Server-rendered JPEG snapshot of a Yatmo map (for emails, PDFs, social previews). ## Recipes - [Replicate the Summary plugin from raw API calls](https://documentation.yatmo.com/api/recipes/replicate-summary-plugin): Rebuild the Summary plugin output using only direct API calls. - [Build a custom map UI](https://documentation.yatmo.com/api/recipes/custom-map-ui): Combine /points and /categories with Leaflet, MapLibre, or Mapbox GL. - [Bulk POI scoring](https://documentation.yatmo.com/api/recipes/bulk-scoring): Score thousands of listings nightly and store the results. ## Optional - [Privacy](https://documentation.yatmo.com/privacy): Privacy policy. - [Contact](mailto:info@yatmo.com): info@yatmo.com / +32 491 597 199.