TrustyData
Ce que fait ce MCP
Verifies French addresses, searches companies and localities, computes routes and distance matrices, and provides catchment-area demographics.
Outils
Schéma d’entrée
{'type': 'object', 'required': ['origin', 'destination'], 'properties': {'mode': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Mode de déplacement : `car` (défaut), `walking` ou `cycling`.'}, 'origin': {'type': 'object', 'properties': {'lat': {'anyOf': [{'type': 'number', 'maximum': 90, 'minimum': -90}, {'type': 'null'}], 'default': None, 'description': 'Latitude WGS84, avec `lon` (XOR address).'}, 'lon': {'anyOf': [{'type': 'number', 'maximum': 180, 'minimum': -180}, {'type': 'null'}], 'default': None, 'description': 'Longitude WGS84, avec `lat` (XOR address).'}, 'address': {'anyOf': [{'type': 'string', 'minLength': 4}, {'type': 'null'}], 'default': None, 'description': 'Adresse libre (XOR lat/lon).'}}, 'description': 'Point de départ : adresse libre OU couple `lat`/`lon`.'}, 'destination': {'type': 'object', 'properties': {'lat': {'anyOf': [{'type': 'number', 'maximum': 90, 'minimum': -90}, {'type': 'null'}], 'default': None, 'description': 'Latitude WGS84, avec `lon` (XOR address).'}, 'lon': {'anyOf': [{'type': 'number', 'maximum': 180, 'minimum': -180}, {'type': 'null'}], 'default': None, 'description': 'Longitude WGS84, avec `lat` (XOR address).'}, 'address': {'anyOf': [{'type': 'string', 'minLength': 4}, {'type': 'null'}], 'default': None, 'description': 'Adresse libre (XOR lat/lon).'}}, 'description': "Point d'arrivée : adresse libre OU couple `lat`/`lon`."}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Schéma d’entrée
{'type': 'object', 'required': ['address_id'], 'properties': {'address_id': {'type': 'string', 'description': "Identifiant d'adresse (champ `id`) renvoyé par verify_address ou search_address."}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Schéma d’entrée
{'type': 'object', 'required': ['company_id'], 'properties': {'company_id': {'type': 'string', 'description': "SIRET (14 chiffres) de l'établissement, ou SIREN (9 chiffres) pour le siège de l'entreprise."}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Schéma d’entrée
{'type': 'object', 'required': ['origins', 'destinations'], 'properties': {'mode': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Mode de déplacement : `car` (défaut), `walking` ou `cycling`.'}, 'origins': {'type': 'array', 'items': {'type': 'object', 'properties': {'lat': {'anyOf': [{'type': 'number', 'maximum': 90, 'minimum': -90}, {'type': 'null'}], 'default': None, 'description': 'Latitude WGS84, avec `lon` (XOR address).'}, 'lon': {'anyOf': [{'type': 'number', 'maximum': 180, 'minimum': -180}, {'type': 'null'}], 'default': None, 'description': 'Longitude WGS84, avec `lat` (XOR address).'}, 'address': {'anyOf': [{'type': 'string', 'minLength': 4}, {'type': 'null'}], 'default': None, 'description': 'Adresse libre (XOR lat/lon).'}}, 'description': "A ``RoutePoint`` is EITHER a free-text ``address`` OR a ``lat``/``lon`` couple\n(mutually exclusive), mirroring trusty-service's ``RouteEndpointInput``."}, 'description': 'Points de départ (1 Ã\xa0 25), chacun une adresse libre OU un couple `lat`/`lon`.'}, 'destinations': {'type': 'array', 'items': {'type': 'object', 'properties': {'lat': {'anyOf': [{'type': 'number', 'maximum': 90, 'minimum': -90}, {'type': 'null'}], 'default': None, 'description': 'Latitude WGS84, avec `lon` (XOR address).'}, 'lon': {'anyOf': [{'type': 'number', 'maximum': 180, 'minimum': -180}, {'type': 'null'}], 'default': None, 'description': 'Longitude WGS84, avec `lat` (XOR address).'}, 'address': {'anyOf': [{'type': 'string', 'minLength': 4}, {'type': 'null'}], 'default': None, 'description': 'Adresse libre (XOR lat/lon).'}}, 'description': "A ``RoutePoint`` is EITHER a free-text ``address`` OR a ``lat``/``lon`` couple\n(mutually exclusive), mirroring trusty-service's ``RouteEndpointInput``."}, 'description': "Points d'arrivée (1 Ã\xa0 25), même forme."}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Schéma d’entrée
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'default': 10, 'description': 'Nombre maximal de résultats (défaut 10).'}, 'query': {'type': 'string', 'description': "Début d'adresse ou adresse partielle Ã\xa0 compléter (numéro, voie, communeâ\x80¦)."}, 'details': {'type': 'boolean', 'default': True, 'description': 'Inclure les blocs détaillés (position GPS et Lambert 93, IRIS, grille statistique â\x80\x94 selon le plan). Défaut vrai.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Schéma d’entrée
{'type': 'object', 'properties': {'lat': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None, 'description': 'Recherche par proximité (plan Growth) : latitude WGS84 du centre, avec `lon` et `radius_m`.'}, 'lon': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None, 'description': 'Longitude WGS84 du centre de la recherche par proximité, avec `lat` et `radius_m`.'}, 'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Filtre sur la commune (recherche floue) ; exige `query`.'}, 'page': {'type': 'integer', 'default': 1, 'description': 'Numéro de page, Ã\xa0 partir de 1.'}, 'query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Nom, dénomination, sigle ou enseigne ; un SIREN (9 chiffres) ou un SIRET (14 chiffres) donne une correspondance exacte.'}, 'siren': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Tous les établissements d'une unité légale (SIREN, 9 chiffres)."}, 'status': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Filtre : `active` (établissement en activité) ou `closed` (fermé).'}, 'address': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Filtre sur la voie (recherche floue) ; exige `query`.'}, 'naf_code': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Filtre : code NAF/APE de l'activité, ex. `62.02A`."}, 'per_page': {'type': 'integer', 'default': 10, 'description': 'Résultats par page (défaut 10, plafond 25).'}, 'radius_m': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'default': None, 'description': "Rayon en mètres autour du centre (jusqu'Ã\xa0 50 km) ; plan Growth."}, 'postal_code': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Filtre : code postal exact.'}, 'group_by_company': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': None, 'description': "Vrai : un résultat par entreprise (son meilleur établissement, le siège de préférence) ; faux : un par établissement. Absent : défaut de l'API selon la recherche."}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Schéma d’entrée
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 20, 'description': 'Nombre maximal de résultats (défaut 20).'}, 'query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Nom de commune, code postal ou code INSEE, complet ou partiel. Optionnel si un filtre est donné.'}, 'details': {'type': 'boolean', 'default': True, 'description': 'Inclure les détails de chaque commune (codes, population, coordonnées). Défaut vrai.'}, 'postal_code': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Filtre : codes postaux (liste).'}, 'region_code': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Filtre : codes de région (liste).'}, 'region_name': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Filtre : noms de région (liste).'}, 'population_max': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'default': None, 'description': 'Filtre : population maximale (habitants).'}, 'population_min': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'default': None, 'description': 'Filtre : population minimale (habitants).'}, 'department_code': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Filtre : codes de département (liste, ex. `62`, `2A`). Ã\x80 préférer au nom.'}, 'department_name': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Filtre : noms de département (liste ; orthographe normalisée automatiquement).'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Schéma d’entrée
{'type': 'object', 'required': ['radius_m'], 'properties': {'lat': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None, 'description': 'Latitude WGS84 du centre, avec `lon` et sans `address`.'}, 'lon': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None, 'description': 'Longitude WGS84 du centre, avec `lat` et sans `address`.'}, 'limit': {'type': 'integer', 'default': 10, 'description': 'Nombre de résultats par page (défaut 10, plafond 50).'}, 'offset': {'type': 'integer', 'default': 0, 'description': 'Décalage de pagination : reprendre Ã\xa0 `pagination.next_offset` de la réponse précédente.'}, 'address': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Centre par adresse libre (un nom de commune suffit). Exclusif de `lat`/`lon`.'}, 'radius_m': {'type': 'integer', 'description': 'Rayon de recherche en mètres autour du centre.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Schéma d’entrée
{'type': 'object', 'required': ['address'], 'properties': {'address': {'type': 'string', 'description': 'Adresse postale française en texte libre, telle que saisie (fautes, abréviations et accents manquants tolérés).'}, 'details': {'type': 'boolean', 'default': True, 'description': 'Inclure les blocs détaillés (position GPS et Lambert 93, IRIS, grille statistique â\x80\x94 selon le plan). Défaut vrai.'}, 'max_results': {'type': 'integer', 'default': 5, 'description': 'Nombre maximal de candidats renvoyés (défaut 5).'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Schéma d’entrée
{'type': 'object', 'required': ['zones'], 'properties': {'zones': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Identifiant repris dans la réponse et les erreurs (1 Ã\xa0 40 caractères, lettres, chiffres, `_`, `-`, unique). Sans lui : la position Ã\xa0 partir de 1.'}, 'lat': {'anyOf': [{'type': 'number', 'maximum': 90, 'minimum': -90}, {'type': 'null'}], 'default': None, 'description': 'Latitude WGS84 du centre, avec `lon` et sans `address`.'}, 'lon': {'anyOf': [{'type': 'number', 'maximum': 180, 'minimum': -180}, {'type': 'null'}], 'default': None, 'description': 'Longitude WGS84 du centre, avec `lat` et sans `address`.'}, 'mode': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': '`car` (défaut), `walking` ou `cycling` â\x80\x94 avec `minutes` seulement.'}, 'address': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Centre par adresse libre â\x80\x94 un nom de commune suffit. Exclusif de lat/lon.'}, 'minutes': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'default': None, 'description': 'Portée isochrone : minutes de trajet depuis le centre (1 Ã\xa0 30). Exclusif de radius_km.'}, 'traffic': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': '`free` (défaut) ou `peak` â\x80\x94 avec `minutes` et `mode: car` seulement.'}, 'radius_km': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None, 'description': "Portée rayon Ã\xa0 vol d'oiseau, en km (1 Ã\xa0 50). Exclusif de minutes."}}, 'description': "Une zone de `zone_compare` : les arguments de `zone_stats`, plus un `id`.\n\nVolontairement SANS validateur de portée : le corps REST d'une zone est\nplat, et trusty-service porte déjÃ\xa0 la règle « une seule portée » avec ses\ncodes (`portee_ambigue`, `portee_manquante`, `mode_sans_duree`,\n`circulation_sans_duree`, `circulation_mode_incompatible`,\n`identifiant_invalide`), rendus avec l'identifiant de la zone en cause.\nLes recopier ici les ferait vivre Ã\xa0 deux endroits. `RoutePoint` valide son\nXOR parce que son corps REST a deux formes ; ce n'est pas le cas ici.\n\nSeuls `lat`/`lon` gardent une borne (`ge`/`le`) : les limites WGS84 sont\nun fait géographique recopié de `RoutePoint`, pas une règle produit ;\n`minutes` et `radius_km` partent hors borne jusqu'au 422 de l'API."}, 'description': 'De 2 Ã\xa0 10 zones, chacune avec les arguments de zone_stats (centre + `minutes` ou `radius_km`) et un `id` optionnel.'}, 'rank_by': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Critère du classement : `population` (défaut), `exclusive_population`, `theoretical_potential` ou `exclusive_potential` â\x80\x94 ces deux derniers exigent `coefficient`.'}, 'reference': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Référentiel des indices de chaque zone â\x80\x94 UN réglage pour DEUX blocs, `csp` et `activites` : `france` (défaut) ou `department`.'}, 'coefficient': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None, 'description': 'Part du revenu disponible que le secteur capte (0 exclu Ã\xa0 1), appliquée Ã\xa0 toutes les zones, exclusifs et paires ; requis par les critères de potentiel.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Schéma d’entrée
{'type': 'object', 'properties': {'lat': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None, 'description': 'Latitude WGS84 du centre, avec `lon` et sans `address`.'}, 'lon': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None, 'description': 'Longitude WGS84 du centre, avec `lat` et sans `address`.'}, 'mode': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Mode de déplacement de l'isochrone : `car` (défaut), `walking` ou `cycling` â\x80\x94 avec `minutes` seulement."}, 'address': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Centre par adresse libre â\x80\x94 un nom de commune suffit. Exclusif de `lat`/`lon`.'}, 'minutes': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'default': None, 'description': 'Portée isochrone : minutes de trajet depuis le centre (1 Ã\xa0 30). Exclusif de `radius_km`.'}, 'traffic': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Conditions de circulation de l'isochrone : `free` (défaut) ou `peak` (heure de pointe modélisée) â\x80\x94 avec `minutes` et `mode: car` seulement."}, 'radius_km': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None, 'description': "Portée rayon Ã\xa0 vol d'oiseau, en km (1 Ã\xa0 50). Exclusif de `minutes`."}, 'reference': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Référentiel des indices â\x80\x94 UN réglage pour DEUX blocs, `csp` et `activites` : `france` (défaut) ou `department` (département dominant de la zone).'}, 'coefficient': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None, 'description': 'Part du revenu disponible que le secteur capte (0 exclu Ã\xa0 1) ; déclenche `potentiel_theorique`.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Modifications récentes des outils
Serveurs MCP similaires
SupplyGraph.AI Data
Provides China-focused location, surrounding-area, company, industry-chain, property, population, retail, and regional business i…
Predicthq
Finds and retrieves PredictHQ events, including categories, impact rankings, dates, attendance estimates, and nearby locations.
Sonar Connections
Provides business details, appointment availability, menus and pickup times, event schedules, venue booths, city datasets, and GI…
UK Property & Business Intelligence MCP Server from MCPBundles
Searches UK companies, officers and filings, charities, geographic names and postcodes, and Great Britain traffic count and flow …
pontofato
Provides Brazilian CEP address lookup, geocoding, radius and proximity searches, address units, and companies associated with loc…
Location & Demand Intelligence
Scores locations, neighborhoods, properties, routes, traffic windows, and operating conditions using official local statistics an…
Public Data Ukraine Mcp
Provides Ukrainian geocoding, weather, official exchange rates, and public procurement tender search through public data APIs.
synter-ads
Manages cross-platform advertising campaigns, audiences, tracking, creative, landing pages, campaign audits, technology intellige…