Manage maps, spots, and travel plans on Ikuzo (ikuzo.app) — a location-based exploration app. Use when creating/editing maps, adding/searching spots, planning trips with day-by-day itineraries, finding nearby places, or managing travel logistics. Triggers on map management, spot tracking, trip planning, location discovery, and "where should I go" questions.
Ikuzo is a map & travel planning app. Access via MCP (JSON-RPC 2.0 over HTTP POST).
Endpoint: https://ikuzo.app/api/mcp
Auth: Bearer token (from TOOLS.md or user config)
Protocol: JSON-RPC 2.0 — POST with {"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"<tool>","arguments":{...}}}
maps_list — list all maps (owned + shared)maps_get(mapId) — get map detailsmaps_create(title) — create a new empty map, returns map with IDspots_list(mapId, ...) — list/filter spots in a map. Filters: status[], type[], period[], momentFrom/To, text, limit, , offsetfields[]spots_get(spotId) — get spot detailsspots_create(mapId, title, gps{lat,lng}, ...) — create spot. Optional: description, type, status, period[], moment{date, repeat, reminder[]}spots_update(spotId, ...) — update any field (including moment, rating)spots_delete(spotId) — soft delete (recoverable)spots_nearby(lat, lng, ...) — find spots near a point across ALL accessible maps. Optional: radius (km, default 10, max 500), mapIds[], all spot filters. Returns sorted by distance.spots_box(north, south, east, west, ...) — find spots in bounding box. Same filters as nearby.travels_list — list all travel planstravels_get(travelId) — get plan with stepstravels_create(title) — create plantravels_update(travelId, title) — rename plantravels_delete(travelId) — delete plansteps_add(travelId, type, ...) — add step. type="spot" requires spotId, type="day" requires title. Optional: orderKeysteps_update(stepId, ...) — update position or titlesteps_delete(stepId) — remove stepping — test connectionschema — get valid values for type, status, periodquota — check API usage (doesn't count against quota)See references/schema.md for valid spot types, statuses, and periods. Call schema tool at runtime if unsure.
spots_nearby(lat, lng, radius=20, status=["a","b"])
Status a = "Ikuzo!" (priority), b = "To Visit"
spots_list(mapId, momentFrom="2026-03-01", momentTo="2026-04-30")
travels_create(title) → get travelIdsteps_add(travelId, type="day", title="Day 1 - Arrival")steps_add(travelId, type="spot", spotId="...") for each spotUse fields to request only what you need:
spots_list(mapId, fields=["_id","title","gps","status","type"])
Spot images use Ikuzo's CDN: