# Radar — how to use (mcp.ai)

Connect your Radar account and use 37 tools for developer tools straight from your AI agent. Connect with your own API key. Radar is a full-stack location infrastructure platform offering SDKs and APIs for geofencing, location tracking, geocoding, search, routing, and maps.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_radar?ms=1787293440000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `radar_autocomplete_address_or_place`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/radar`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/radar/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/radar/autocomplete/address/or/place` — Tool to autocomplete partial addresses and place names based on relevance and proximity. Use after a user inputs a partial address/place to get suggestions, optionally biased by location.
  - body: { near?: string, limit?: integer, query: string, layers?: string[] }
- `POST https://api.mcp.ai/api/radar/create/beacon` — Tool to create a new beacon in Radar. Use when you need to register a physical beacon device (iBeacon or Eddystone) for location tracking.
  - body: { tag: string, type: string, uuid?: string, major?: string, minor?: string, enabled?: boolean, metadata?: object, externalId: string, coordinates: number[], description?: string }
- `POST https://api.mcp.ai/api/radar/create/trip` — Tool to create a new trip. Use after gathering origin and destination details to start tracking a trip.
  - body: { mode?: string, metadata?: object, externalId: string, originLocation?: object, originGeofenceTag?: string, destinationLocation?: object, approachingThreshold?: integer, destinationGeofenceTag?: string, originGeofenceExternalId?: string, destinationGeofenceExternalId?: string }
- `POST https://api.mcp.ai/api/radar/delete/beacon` — Tool to delete a beacon by its Radar ID. Use when supplying a beacon's unique identifier to remove it.
  - body: { id: string }
- `POST https://api.mcp.ai/api/radar/delete/geofence` — Tool to delete a geofence by ID. Use when supplying a geofence’s unique identifier to remove it.
  - body: { id: string }
- `POST https://api.mcp.ai/api/radar/delete/geofence/by/tag` — Tool to delete a geofence by tag and external ID. Use when you have both the tag and external identifier to remove a specific geofence.
  - body: { tag: string, externalId: string }
- `POST https://api.mcp.ai/api/radar/delete/trip` — Tool to delete a trip by its Radar ID or external ID. Use after confirming the trip exists.
  - body: { id: string }
- `POST https://api.mcp.ai/api/radar/delete/user` — Tool to delete a user by Radar _id, userId, or deviceId. Use after confirming the user identifier exists.
  - body: { id: string }
- `POST https://api.mcp.ai/api/radar/forward/geocode` — Tool to convert an address into geographic coordinates. Use when you have a full address string and need precise latitude/longitude before further location analysis.
  - body: { limit?: integer, query: string, layers?: string[], country?: string }
- `POST https://api.mcp.ai/api/radar/get/beacon` — Tool to retrieve a beacon by Radar _id. Use when you need to fetch full details of an existing beacon.
  - body: { id: string }
- `POST https://api.mcp.ai/api/radar/get/beacon/by/tag` — Tool to get a specific beacon by tag and external ID. Use when you need to retrieve details of a beacon identified by its tag group and external ID.
  - body: { tag: string, externalId: string }
- `POST https://api.mcp.ai/api/radar/get/context/for/location` — Tool to retrieve context for a given location. Use when you need geofences, place, and region information based on coordinates. Use after obtaining valid latitude and longitude.
  - body: { lat: number, lng: number }
- `POST https://api.mcp.ai/api/radar/get/geofence` — Tool to retrieve a geofence by Radar _id or tag/externalId. Use when you need to fetch full details of an existing geofence.
  - body: { id?: string, tag?: string, externalId?: string }
- `POST https://api.mcp.ai/api/radar/get/places/settings` — Tool to retrieve current Places settings for your Radar project. Use when you need to inspect chain detection, supported countries, external ID requirements, and other Places metadata.
- `POST https://api.mcp.ai/api/radar/get/route/directions` — Tool to get turn-by-turn directions between multiple locations. Use when you need detailed navigation instructions with steps, distances, and durations for routing.
  - body: { lang?: string, mode?: string, avoid?: string, units?: string, heading?: number, geometry?: string, locations: string, alternatives?: boolean, departureTime?: string }
- `POST https://api.mcp.ai/api/radar/get/route/matrix` — Tool to calculate travel distance and duration between multiple origins and destinations for up to 625 routes. Use when you need to compute route metrics for multiple origin-destination pairs efficien
  - body: { mode?: string, units?: string, origins: string, destinations: string }
- `POST https://api.mcp.ai/api/radar/get/trip` — Tool to retrieve a trip by ID or externalId. Use when you have a trip ID or externalId to fetch its details.
  - body: { id: string, format?: string }
- `POST https://api.mcp.ai/api/radar/get/user` — Tool to get a user by Radar _id, userId, or deviceId. Returns the user with all location and context data including geofences, places, beacons, and trip information.
  - body: { id: string }
- `POST https://api.mcp.ai/api/radar/get/users/in/geofence` — Tool to retrieve users currently within a specific geofence. Use when you need to list all users inside a geofence by its tag and external ID.
  - body: { tag: string, limit?: integer, cursor?: string, externalId: string }
- `POST https://api.mcp.ai/api/radar/ip/geocode` — Tool to geocode an IP address to city, state, and country. Use when you need location details based on an IP address.
  - body: { ip?: string }
- `POST https://api.mcp.ai/api/radar/list/events` — Tool to list events. Use when you need to retrieve a paginated list of events with optional filtering.
  - body: { end?: string, type?: string, limit?: integer, start?: string, userId?: string, afterId?: string, beforeId?: string, deviceId?: string }
- `POST https://api.mcp.ai/api/radar/list/geofences` — Tool to list all geofences sorted by updated time. Use when you need an overview of all configured geofences.
  - body: { tag?: string, page?: integer, limit?: integer, metadata?: object, externalId?: string, createdAfter?: string, updatedAfter?: string, createdBefore?: string, updatedBefore?: string }
- `POST https://api.mcp.ai/api/radar/list/trips` — Tool to list all trips, sorted by updated time. Use when you need to page through the latest trips.
  - body: { limit?: integer, userId?: string, metadata?: object, externalId?: string, endingBefore?: string, startingAfter?: string }
- `POST https://api.mcp.ai/api/radar/list/users` — Tool to list Radar users sorted by update time. Use when you need to page through users in your project.
  - body: { tags?: string[], limit?: integer, afterId?: string, createdAfter?: string, updatedAfter?: string, createdBefore?: string, updatedBefore?: string }
- `POST https://api.mcp.ai/api/radar/reverse/geocode` — Tool to convert geographic coordinates to structured addresses. Use when you have latitude/longitude and need a human-readable address.
  - body: { limit?: integer, layers?: string[], country?: string, coordinates: string }
- `POST https://api.mcp.ai/api/radar/route/distance` — Tool to compute distance and travel time between origins and destinations. Use when you need route metrics before optimizing or timing routes.
  - body: { mode?: string, avoid?: string, units?: string, origins: string, geometry?: string, destinations: string }
- `POST https://api.mcp.ai/api/radar/search/geofences/near/location` — Tool to search for geofences near a given location. Use when you need to find geofences within a radius of specified coordinates.
  - body: { tags?: string[], radius?: integer, latitude: number, metadata?: object, longitude: number }
- `POST https://api.mcp.ai/api/radar/search/places/near/location` — Tool to search for places near given coordinates. Use when you need to find points of interest around a location.
  - body: { near: string, brand?: string, limit?: integer, chains?: string[], groups?: string[], radius?: integer, country?: string, categories?: string[], chain_metadata?: boolean }
- `POST https://api.mcp.ai/api/radar/search/users/near/location` — Tool to search for users near a location. Use after obtaining coordinates when you need to retrieve users within a given radius.
  - body: { limit?: integer, radius?: number, latitude: number, longitude: number }
- `POST https://api.mcp.ai/api/radar/track/location/update` — Tool to track a user's location update. Use when sending a location update for a user, creating or updating user and event data.
  - body: { userId?: string, stopped?: boolean, accuracy: number, altitude?: number, deviceId: string, deviceOS?: string, latitude: number, metadata?: object, replayed?: boolean, longitude: number, updatedAt?: string, deviceMake?: string, deviceType?: string, foreground?: boolean, description?: string, deviceModel?: string, verticalAccuracy?: number }
- `POST https://api.mcp.ai/api/radar/update/places/settings` — Tool to update Places settings for your Radar project including chain metadata preferences. Use when you need to configure chain detection or other Places settings.
  - body: { chainMetadata?: object }
- `POST https://api.mcp.ai/api/radar/update/trip` — Tool to update a trip. Use when you need to modify mode, destination, schedule, or active status.
  - body: { id: string, mode?: string, active?: boolean, format?: string, metadata?: object, externalId?: string, destination?: object, arrivedThreshold?: number, scheduledArrivalAt?: string, approachingThreshold?: number, destinationGeofenceTag?: string, destinationGeofenceRadius?: number, destinationGeofenceExternalId?: string }
- `POST https://api.mcp.ai/api/radar/update/trip/by/id` — Tool to update a trip status by Radar _id or external ID. Use when you need to change trip status to started, approaching, arrived, completed, or canceled.
  - body: { id: string, status: string, metadata?: object, externalId?: string }
- `POST https://api.mcp.ai/api/radar/upsert/beacon/by/id` — Tool to create or update a beacon by Radar _id. Use when you need to ensure a beacon with a specific ID exists with updated properties.
  - body: { id: string, tag?: string, type: string, uuid: string, major: string|integer, minor: string|integer, enabled?: boolean, externalId?: string, coordinates: number[], description?: string }
- `POST https://api.mcp.ai/api/radar/upsert/beacon/by/tag` — Tool to create or update a beacon by tag and externalId. Use when you need to ensure a beacon exists or is updated with specific identifiers.
  - body: { tag: string, uid?: string, type: string, uuid?: string, major?: string, minor?: string, enabled: boolean, instance?: string, metadata?: object, externalId: string, coordinates: number[], description: string }
- `POST https://api.mcp.ai/api/radar/upsert/geofence` — Tool to create or update a geofence by tag and externalId. Use when ensuring a geofence exists or is updated based on identifiers.
  - body: { tag: string, type: string, radius?: number, geometry?: object, metadata?: object, externalId: string, coordinates?: number[][], description: string }
- `POST https://api.mcp.ai/api/radar/upsert/geofence/by/id` — Tool to create or update a geofence by Radar _id. Use when you need to upsert a geofence using its internal Radar identifier.
  - body: { id: string, tag?: string, type: string, radius?: number, enabled?: boolean, metadata?: object, externalId?: string, coordinates: number[]|number[][], description: string }

## Example prompts
- "What can I do in Radar?"
- "Show me a summary of my Radar account"

## More
- Page: https://mcp.ai/radar
- Agent spec (llms.txt): https://mcp.ai/radar/llms.txt
- Postman collection: https://mcp.ai/radar/postman.json
