{"apiVersion":"v1","directorySlug":"nextbillion-mcp-a51a39d962","title":"Nextbillion","description":null,"pageUrl":"https://www.mcpbundles.com/skills/nextbillion-mcp-a51a39d962","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://mcp.nextbillion.io/","hostedMcpUrl":null,"toolCount":27,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"io.nextbillion/nextbillion-mcp-a51a39d962","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"autocomplete","description":"Complete a partial address or administrative-area prefix into full valid addresses (e.g. \"stat\" -> \"State Capitol, ...\"). Use for prefix completion as the user types; use autosuggest for typo-tolerant fuzzy suggestions and geocode_forward for a full address. Parameters: query (required); optional near {latitude, longitude}, radius_m (with near), country_codes, bounding_box {west, south, east, north}, limit, language, view. Example: {\"query\": \"stat\", \"near\": {\"latitude\": 35.4769, \"longitude\": -97","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["query"],"properties":{"near":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"view":{"enum":["Unified","AR","IL","IN","MA","PK","RU","TR","CN","TW"],"type":"string"},"limit":{"type":"integer","maximum":100,"minimum":1},"query":{"type":"string","minLength":1},"language":{"type":"string"},"radius_m":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0},"bounding_box":{"type":"object","required":["west","south","east","north"],"properties":{"east":{"type":"number","maximum":180,"minimum":-180},"west":{"type":"number","maximum":180,"minimum":-180},"north":{"type":"number","maximum":90,"minimum":-90},"south":{"type":"number","maximum":90,"minimum":-90}},"additionalProperties":false},"country_codes":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z]{3}$"},"minItems":1}},"additionalProperties":false},"title":"Autocomplete","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"autocomplete","displayName":"Autocomplete"},{"name":"autosuggest","description":"Suggest address and place candidates from an incomplete or misspelled query (typo-tolerant, e.g. \"aqaurium\" still matches aquariums). Use for search-as-you-type; use autocomplete for strict prefix completion of valid addresses. Parameters: query (required); optional near {latitude, longitude}, radius_m (with near), country_codes, bounding_box {west, south, east, north}, limit, language, view. Example: {\"query\": \"aqauriums\", \"near\": {\"latitude\": 42.3501, \"longitude\": -71.0689}, \"limit\": 5}","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["query"],"properties":{"near":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"view":{"enum":["Unified","AR","IL","IN","MA","PK","RU","TR","CN","TW"],"type":"string"},"limit":{"type":"integer","maximum":100,"minimum":1},"query":{"type":"string","minLength":1},"language":{"type":"string"},"radius_m":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0},"bounding_box":{"type":"object","required":["west","south","east","north"],"properties":{"east":{"type":"number","maximum":180,"minimum":-180},"west":{"type":"number","maximum":180,"minimum":-180},"north":{"type":"number","maximum":90,"minimum":-90},"south":{"type":"number","maximum":90,"minimum":-90}},"additionalProperties":false},"country_codes":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z]{3}$"},"minItems":1}},"additionalProperties":false},"title":"Autosuggest","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"autosuggest","displayName":"Autosuggest"},{"name":"bbox","description":"The smallest latitude/longitude box around a set of points, a line or a polygon, optionally padded in metres — for example a viewport for static_map_image or a spatial filter. Handles shapes that straddle the antimeridian (reports crosses_antimeridian and the narrower box). Computed locally, no sign-in needed. Parameters: exactly one of points (array of {latitude, longitude}), line (array of points) or polygon (GeoJSON Polygon/MultiPolygon, isochrone Feature accepted); padding_meters (default 0)","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"line":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"maxItems":5000,"minItems":2},"points":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"id":{"type":"string","maxLength":100},"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"maxItems":1000,"minItems":1},"polygon":{"type":"object","required":["type"],"properties":{"type":{"type":"string"}},"additionalProperties":{}},"padding_meters":{"type":"number","maximum":1000000,"minimum":0}},"additionalProperties":false},"title":"Bounding Box","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"bbox","displayName":"Bounding Box"},{"name":"buffer","description":"Build the zone within a given straight-line distance of a point (a circle), a line (a corridor, e.g. 1 km along a route) or a polygon (grown outward, or shrunk inward with a negative distance). Geodesic on WGS84, computed locally, no sign-in needed. Returns a GeoJSON Polygon or MultiPolygon (a shrunk shape may split) with its area; an empty result is returned, not an error. Parameters: exactly one of point ({latitude, longitude}), line (array of points) or polygon (GeoJSON Polygon/MultiPolygon,","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["distance"],"properties":{"line":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"maxItems":5000,"minItems":2},"point":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"steps":{"type":"integer","maximum":64,"minimum":4},"units":{"enum":["meters","kilometers","miles","feet","nautical_miles"],"type":"string"},"polygon":{"type":"object","required":["type"],"properties":{"type":{"type":"string"}},"additionalProperties":{}},"distance":{"type":"number"},"area_units":{"enum":["square_meters","square_kilometers","hectares","acres","square_miles","square_feet"],"type":"string"},"max_vertices":{"type":"integer","maximum":5000,"minimum":16}},"additionalProperties":false},"title":"Buffer Zone Around a Point, Line or Polygon","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"buffer","displayName":"Buffer Zone Around a Point, Line or Polygon"},{"name":"centroid","description":"The area-weighted centre of a polygon and a label point that is guaranteed to lie inside it (the centroid of a C- or ring-shaped area falls outside; the label point does not). Computed locally, no sign-in needed. Parameters: polygon (GeoJSON Polygon/MultiPolygon, or an isochrone Feature). Returns centroid, label_point ({latitude, longitude}) and centroid_inside. Example: {\"polygon\": {\"type\": \"Polygon\", \"coordinates\": [[[77.59, 12.97], [77.61, 12.97], [77.61, 12.99], [77.59, 12.99], [77.59, 12.97","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["polygon"],"properties":{"polygon":{"type":"object","required":["type"],"properties":{"type":{"type":"string"}},"additionalProperties":{}}},"additionalProperties":false},"title":"Centroid and Label Point of a Polygon","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"centroid","displayName":"Centroid and Label Point of a Polygon"},{"name":"directions","description":"Calculate a route between an origin and a destination with optional waypoints; returns distance (meters), duration (seconds) and an encoded polyline per route, which static_route_map can draw. Use distance_matrix for many pairs. Documentation for this API is available through search_documentation. Parameters: origin, destination {latitude, longitude} (required); optional waypoints (max 200), mode (car | truck | motorcycle | bike | walk), service (\"flexible\" default: all options; \"fast\": car/truc","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["origin","destination"],"properties":{"mode":{"enum":["car","truck","motorcycle","bike","walk"],"type":"string"},"avoid":{"type":"array","items":{"enum":["toll","highway","ferry","sharp_turn","uturn","service_road","left_turn","right_turn","tunnel","none"],"type":"string"}},"steps":{"type":"boolean"},"origin":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"prefer":{"enum":["truck_route"],"type":"string"},"exclude":{"type":"array","items":{"enum":["toll","ferry","highway","service_road","uturn","sharp_turn","left_turn","right_turn"],"type":"string"},"minItems":1},"require":{"enum":["truck_route"],"type":"string"},"service":{"enum":["flexible","fast"],"type":"string"},"geometry":{"enum":["polyline","polyline6"],"type":"string"},"road_info":{"type":"array","items":{"enum":["max_speed","toll_distance","toll_cost","toll_info","truck_route","stop_sign","traffic_light"],"type":"string"},"minItems":1},"waypoints":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"maxItems":200},"route_type":{"enum":["fastest","shortest"],"type":"string"},"truck_type":{"type":"array","items":{"enum":["rigid_truck","semi_trailer","b_double","road_train","generic_truck"],"type":"string"},"minItems":1},"destination":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"hazmat_type":{"type":"array","items":{"enum":["explosives","gas","flammable_liquid","flammable_gas","organic","toxic","radioactive","corrosive","other"],"type":"string"},"minItems":1},"alternatives":{"type":"boolean"},"cross_border":{"type":"boolean"},"truck_size_cm":{"type":"object","required":["height","width","length"],"properties":{"width":{"type":"number"},"height":{"type":"number"},"length":{"type":"number"}},"additionalProperties":false},"departure_time":{"type":"integer","maximum":9007199254740991,"minimum":-9007199254740991},"emission_class":{"enum":["euro0","euro1","euro2","euro3","euro4","euro5","euro6","euro7","euro8","euro9"],"type":"string"},"truck_axle_load":{"type":"number","exclusiveMinimum":0},"truck_weight_kg":{"type":"integer","maximum":100000,"minimum":-9007199254740991},"honor_restrictions":{"type":"boolean"}},"additionalProperties":false},"title":"Directions","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"directions","displayName":"Directions"},{"name":"distance_matrix","description":"Compute travel distance (meters) and duration (seconds) for every origin-to-destination pair in one call; one row per origin with one element per destination, in input order. Use it instead of repeated directions calls when several pairs are needed. Documentation for this API is available through search_documentation. Parameters: origins, destinations (arrays of {latitude, longitude}, required); optional mode, service (\"fast\" default: up to 1000x1000 points; \"flexible\": the options below, max 50","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["origins","destinations"],"properties":{"mode":{"enum":["car","truck","motorcycle","bike","walk"],"type":"string"},"avoid":{"type":"array","items":{"enum":["toll","highway","ferry","none"],"type":"string"}},"prefer":{"enum":["truck_route"],"type":"string"},"exclude":{"type":"array","items":{"enum":["toll","ferry","highway","service_road","uturn","sharp_turn","left_turn","right_turn"],"type":"string"},"minItems":1},"origins":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"maxItems":1000,"minItems":1},"service":{"enum":["fast","flexible"],"type":"string"},"route_type":{"enum":["fastest","shortest"],"type":"string"},"truck_type":{"type":"array","items":{"enum":["rigid_truck","semi_trailer","b_double","road_train","generic_truck"],"type":"string"},"minItems":1},"hazmat_type":{"type":"array","items":{"enum":["explosives","gas","flammable_liquid","flammable_gas","organic","toxic","radioactive","corrosive","other"],"type":"string"},"minItems":1},"cross_border":{"type":"boolean"},"destinations":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"maxItems":1000,"minItems":1},"truck_size_cm":{"type":"object","required":["height","width","length"],"properties":{"width":{"type":"number"},"height":{"type":"number"},"length":{"type":"number"}},"additionalProperties":false},"departure_time":{"type":"integer","maximum":9007199254740991,"minimum":-9007199254740991},"emission_class":{"enum":["euro0","euro1","euro2","euro3","euro4","euro5","euro6","euro7","euro8","euro9"],"type":"string"},"truck_axle_load":{"type":"number","exclusiveMinimum":0},"truck_weight_kg":{"type":"integer","maximum":100000,"minimum":-9007199254740991},"honor_restrictions":{"type":"boolean"},"route_failed_prompt":{"type":"boolean"}},"additionalProperties":false},"title":"Distance Matrix","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"distance_matrix","displayName":"Distance Matrix"},{"name":"geocode_batch","description":"Forward-geocode up to 100 free-text queries in one request; returns one ranked result set per query, in input order. Use it instead of repeated geocode_forward calls when several addresses are needed: this endpoint has its own rate limit of 60 requests per minute, so larger batches per call stay within it. Parameters: queries (required array; each item: query (required), optional near {latitude, longitude}, radius_m, country_codes, bounding_box, limit, language, view, types); optional top-level","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["queries"],"properties":{"types":{"type":"array","items":{"enum":["houseNumber","addressBlock","street","intersection","place","area"],"type":"string"},"minItems":1},"queries":{"type":"array","items":{"type":"object","required":["query"],"properties":{"near":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"view":{"enum":["Unified","AR","IL","IN","MA","PK","RU","TR","CN","TW"],"type":"string"},"limit":{"type":"integer","maximum":100,"minimum":1},"query":{"type":"string","minLength":1},"types":{"type":"array","items":{"enum":["houseNumber","addressBlock","street","intersection","place","area"],"type":"string"},"minItems":1},"language":{"type":"string"},"radius_m":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0},"bounding_box":{"type":"object","required":["west","south","east","north"],"properties":{"east":{"type":"number","maximum":180,"minimum":-180},"west":{"type":"number","maximum":180,"minimum":-180},"north":{"type":"number","maximum":90,"minimum":-90},"south":{"type":"number","maximum":90,"minimum":-90}},"additionalProperties":false},"country_codes":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z]{3}$"},"minItems":1}},"additionalProperties":false},"maxItems":100,"minItems":1}},"additionalProperties":false},"title":"Batch Geocode","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"geocode_batch","displayName":"Batch Geocode"},{"name":"geocode_forward","description":"Convert a free-text address, place name, locality or administrative area into coordinates and a full postal address; tolerates incomplete or partly wrong input. Use geocode_batch for many addresses, place_search for POIs/businesses, geocode_structured when the address components are already separated. Parameters: query (required); optional near {latitude, longitude} or country_codes (strongly recommended - landmark names rank poorly without a location bias), radius_m (with near), bounding_box {w","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["query"],"properties":{"near":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"view":{"enum":["Unified","AR","IL","IN","MA","PK","RU","TR","CN","TW"],"type":"string"},"limit":{"type":"integer","maximum":100,"minimum":1},"query":{"type":"string","minLength":1},"types":{"type":"array","items":{"enum":["houseNumber","addressBlock","street","intersection","place","area"],"type":"string"},"minItems":1},"language":{"type":"string"},"radius_m":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0},"bounding_box":{"type":"object","required":["west","south","east","north"],"properties":{"east":{"type":"number","maximum":180,"minimum":-180},"west":{"type":"number","maximum":180,"minimum":-180},"north":{"type":"number","maximum":90,"minimum":-90},"south":{"type":"number","maximum":90,"minimum":-90}},"additionalProperties":false},"country_codes":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z]{3}$"},"minItems":1}},"additionalProperties":false},"title":"Forward Geocode","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"geocode_forward","displayName":"Forward Geocode"},{"name":"geocode_reverse","description":"Find the nearest address for a coordinate; returns the full postal address, the matched position and a bounding box. Parameters: coordinate {latitude, longitude} (required); optional country_codes, bounding_box {west, south, east, north}, language, view. Example: {\"coordinate\": {\"latitude\": 48.8566, \"longitude\": 2.3522}}","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["coordinate"],"properties":{"view":{"enum":["Unified","AR","IL","IN","MA","PK","RU","TR","CN","TW"],"type":"string"},"language":{"type":"string"},"coordinate":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"bounding_box":{"type":"object","required":["west","south","east","north"],"properties":{"east":{"type":"number","maximum":180,"minimum":-180},"west":{"type":"number","maximum":180,"minimum":-180},"north":{"type":"number","maximum":90,"minimum":-90},"south":{"type":"number","maximum":90,"minimum":-90}},"additionalProperties":false},"country_codes":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z]{3}$"},"minItems":1}},"additionalProperties":false},"title":"Reverse Geocode","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"geocode_reverse","displayName":"Reverse Geocode"},{"name":"geocode_structured","description":"Geocode an address given as separate fields instead of one string; searches addresses and administrative areas only, never POIs. Use when the components are already known and precision matters; otherwise use geocode_forward. Parameters: country_code (required, ISO 3166-1 alpha-3) plus at least one of state, county, city, suburb, neighborhood, street, house_number, postal_code; optional near {latitude, longitude}, limit, types, view. Example: {\"country_code\": \"GBR\", \"city\": \"London\", \"street\": \"B","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["country_code"],"properties":{"city":{"type":"string"},"near":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"view":{"enum":["Unified","AR","IL","IN","MA","PK","RU","TR","CN","TW"],"type":"string"},"limit":{"type":"integer","maximum":100,"minimum":1},"state":{"type":"string"},"types":{"type":"array","items":{"enum":["houseNumber","addressBlock","street","intersection","place","area"],"type":"string"},"minItems":1},"county":{"type":"string"},"street":{"type":"string"},"suburb":{"type":"string"},"postal_code":{"type":"string"},"country_code":{"type":"string","pattern":"^[A-Za-z]{3}$"},"house_number":{"type":"string"},"neighborhood":{"type":"string"}},"additionalProperties":false},"title":"Structured Geocode","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"geocode_structured","displayName":"Structured Geocode"},{"name":"get_api_parameters","description":"Get structured parameter details for a NextBillion REST API endpoint: type, required, default, allowed values, units and description. More precise than a prose search for questions about one specific parameter. Returns every matching API variant (e.g. directions/flexible and directions/fast), identified by heading_path. Empty units means the documentation does not state a unit. SDK methods are not covered. When the index is temporarily unavailable the result says so and names the public docs sit","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"name":{"type":"string"},"doc_id":{"type":"string"},"endpoint":{"type":"string"}},"additionalProperties":false},"title":"Get API Parameters","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_api_parameters","displayName":"Get API Parameters"},{"name":"get_documentation","description":"Fetch the full text of one documentation page by its doc_id, as returned by search_documentation. Use when an excerpt is not enough to answer accurately. Pages over the size limit return truncated: true and a section list; a single section can be requested with section. Sample request and response bodies are omitted unless include_examples is true. An unknown doc_id or section returns found: false with similar ids or the section list. When the index is temporarily unavailable the result says so","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["doc_id"],"properties":{"doc_id":{"type":"string","minLength":1},"section":{"type":"string"},"include_examples":{"type":"boolean"}},"additionalProperties":false},"title":"Get Documentation Page","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_documentation","displayName":"Get Documentation Page"},{"name":"isochrone","description":"Calculate the area reachable from a point within given travel times or distances; returns a GeoJSON FeatureCollection of contours (geometry coordinates are [longitude, latitude]). Each contour ring can be drawn with static_route_map by passing it as paths[].geojson_coordinates with a fill_color. Documentation for this API is available through search_documentation. Parameters: origin {latitude, longitude} (required); exactly one of contours_minutes (array, up to 4 values, max 40) or contours_mete","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["origin"],"properties":{"mode":{"enum":["car","truck","motorcycle","bike","walk"],"type":"string"},"origin":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"denoise":{"type":"number","maximum":1,"minimum":0},"polygons":{"type":"boolean"},"generalize":{"type":"number","exclusiveMinimum":0},"departure_time":{"type":"integer","maximum":9007199254740991,"minimum":-9007199254740991},"contours_colors":{"type":"array","items":{"type":"string","pattern":"^[0-9a-fA-F]{6}$"},"maxItems":4},"contours_meters":{"type":"array","items":{"type":"integer","maximum":60000,"minimum":1},"maxItems":4},"contours_minutes":{"type":"array","items":{"type":"integer","maximum":40,"minimum":1},"maxItems":4}},"additionalProperties":false},"title":"Isochrone","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"isochrone","displayName":"Isochrone"},{"name":"list_documentation_topics","description":"List the available documentation categories, APIs and pages, with index metadata. Useful before searching, when the right terms are not yet known, e.g. to see which APIs exist for a problem area. When the index is temporarily unavailable the result says so and names the public docs site.\nParameters:\n- category (string, optional): limit to one category.\n- sdk (string, optional): Android, iOS or Flutter.\nExample: {\"category\": \"Optimization\"}","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"sdk":{"type":"string"},"category":{"type":"string"}},"additionalProperties":false},"title":"List Documentation Topics","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_documentation_topics","displayName":"List Documentation Topics"},{"name":"measure","description":"Measure straight-line (geodesic, WGS84) distance between two points, the length of a line, the area and perimeter of a polygon, or the bearing from one point to another. Straight-line (geodesic) geometry computed locally, not road distance or travel time: for those, directions or distance_matrix apply. No sign-in needed. Parameters: mode (distance | length | area | bearing); from and to ({latitude, longitude}) for distance and bearing; line (array of points) for length; polygon (GeoJSON Polygon","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["mode"],"properties":{"to":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"from":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"line":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"maxItems":5000,"minItems":2},"mode":{"enum":["distance","length","area","bearing"],"type":"string"},"units":{"enum":["meters","kilometers","miles","feet","nautical_miles"],"type":"string"},"polygon":{"type":"object","required":["type"],"properties":{"type":{"type":"string"}},"additionalProperties":{}},"area_units":{"enum":["square_meters","square_kilometers","hectares","acres","square_miles","square_feet"],"type":"string"}},"additionalProperties":false},"title":"Measure Straight-Line Distance, Length, Area or Bearing","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"measure","displayName":"Measure Straight-Line Distance, Length, Area or Bearing"},{"name":"nearest","description":"Find the candidate points nearest to a target as the crow flies (e.g. the closest depots to a customer), or snap the target onto a line and report the closest position on it. Straight-line (geodesic) distances, computed locally, no sign-in needed; distance_matrix gives travel time and road distance instead. Parameters: target ({latitude, longitude}); either candidates (array of {latitude, longitude, id?}) with k (default 1), or line (array of points); units (default meters). Returns ranked {id,","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["target"],"properties":{"k":{"type":"integer","maximum":100,"minimum":1},"line":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"maxItems":5000,"minItems":2},"units":{"enum":["meters","kilometers","miles","feet","nautical_miles"],"type":"string"},"target":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"candidates":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"id":{"type":"string","maxLength":100},"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"maxItems":1000,"minItems":1}},"additionalProperties":false},"title":"Nearest Point or Position on a Line","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"nearest","displayName":"Nearest Point or Position on a Line"},{"name":"place_browse","description":"List places of given categories around a location, ranked by distance, without a text query - e.g. all restaurants or schools near a point. Use place_search when the user describes what they want in words; use place_lookup to expand a result by id. Parameters: categories (required array of category names or ids); near {latitude, longitude} (recommended), radius_m (with near), country_codes, bounding_box {west, south, east, north}, limit, language, view. Example: {\"categories\": [\"restaurant\"], \"n","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["categories"],"properties":{"near":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"view":{"enum":["Unified","AR","IL","IN","MA","PK","RU","TR","CN","TW"],"type":"string"},"limit":{"type":"integer","maximum":100,"minimum":1},"language":{"type":"string"},"radius_m":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0},"categories":{"type":"array","items":{"type":"string","minLength":1},"minItems":1},"bounding_box":{"type":"object","required":["west","south","east","north"],"properties":{"east":{"type":"number","maximum":180,"minimum":-180},"west":{"type":"number","maximum":180,"minimum":-180},"north":{"type":"number","maximum":90,"minimum":-90},"south":{"type":"number","maximum":90,"minimum":-90}},"additionalProperties":false},"country_codes":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z]{3}$"},"minItems":1}},"additionalProperties":false},"title":"Browse Places by Category","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"place_browse","displayName":"Browse Places by Category"},{"name":"place_lookup","description":"Fetch the full details of a place (address, position, access points, categories, contacts) by its unique id, as returned by place_search, geocode_forward, autosuggest, autocomplete or search_along_route. Parameters: id (required); optional view. Example: {\"id\": \"2EmBgAmFpR9dg0D89EBzNA\"}","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["id"],"properties":{"id":{"type":"string","minLength":1},"view":{"enum":["Unified","AR","IL","IN","MA","PK","RU","TR","CN","TW"],"type":"string"}},"additionalProperties":false},"title":"Place Lookup","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"place_lookup","displayName":"Place Lookup"},{"name":"place_search","description":"Search for places, points of interest and businesses with a free-text query (e.g. \"gas station\", \"coffee\"), ranked by relevance around a location. Use geocode_forward for plain address-to-coordinates conversion. Documentation for this API is available through search_documentation. Parameters: query (required); optional near {latitude, longitude} (recommended), radius_m (with near), country_codes, bounding_box {west, south, east, north}, limit, language, view. Example: {\"query\": \"coffee\", \"near\":","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["query"],"properties":{"near":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"view":{"enum":["Unified","AR","IL","IN","MA","PK","RU","TR","CN","TW"],"type":"string"},"limit":{"type":"integer","maximum":100,"minimum":1},"query":{"type":"string","minLength":1},"language":{"type":"string"},"radius_m":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0},"bounding_box":{"type":"object","required":["west","south","east","north"],"properties":{"east":{"type":"number","maximum":180,"minimum":-180},"west":{"type":"number","maximum":180,"minimum":-180},"north":{"type":"number","maximum":90,"minimum":-90},"south":{"type":"number","maximum":90,"minimum":-90}},"additionalProperties":false},"country_codes":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z]{3}$"},"minItems":1}},"additionalProperties":false},"title":"Search Places","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"place_search","displayName":"Search Places"},{"name":"points_in_polygon","description":"Geofencing: tell which of up to 1,000 points lie inside a polygon, for example which delivery addresses fall within an isochrone contour or a service area. Holes are respected; the test is done in map (flat degree) space, matching how polygons are drawn. Computed locally, no sign-in needed. Parameters: polygon (GeoJSON Polygon or MultiPolygon, or an isochrone Feature); points (array of {latitude, longitude, id?}); include_boundary (default true). Returns inside and outside lists (ids, or indexes","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["polygon","points"],"properties":{"points":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"id":{"type":"string","maxLength":100},"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"maxItems":1000,"minItems":1},"polygon":{"type":"object","required":["type"],"properties":{"type":{"type":"string"}},"additionalProperties":{}},"include_boundary":{"type":"boolean"}},"additionalProperties":false},"title":"Points in Polygon","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"points_in_polygon","displayName":"Points in Polygon"},{"name":"polygon_ops","description":"Combine polygons: union (merge), intersect (overlap) or difference (first minus the others), for example the overlap of two isochrones or the part of a zone not covered by a depot area. Returns the resulting GeoJSON geometry (Polygon or MultiPolygon, or null when empty) with its geodesic area. Computed locally, no sign-in needed. Parameters: operation (union | intersect | difference); polygons (array of 2–20 GeoJSON Polygon/MultiPolygon geometries, isochrone Features accepted); area_units (defau","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["operation","polygons"],"properties":{"polygons":{"type":"array","items":{"type":"object","required":["type"],"properties":{"type":{"type":"string"}},"additionalProperties":{}},"maxItems":20,"minItems":2},"operation":{"enum":["union","intersect","difference"],"type":"string"},"area_units":{"enum":["square_meters","square_kilometers","hectares","acres","square_miles","square_feet"],"type":"string"},"max_vertices":{"type":"integer","maximum":5000,"minimum":16}},"additionalProperties":false},"title":"Polygon Union, Intersection or Difference","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"polygon_ops","displayName":"Polygon Union, Intersection or Difference"},{"name":"postcode_lookup","description":"Get the centroid and boundary polygon of a postal/ZIP code, or find the postal code that contains a coordinate; one lookup per call. Supported countries: USA, India, UK, Netherlands, Austria, Germany, Indonesia, France, Singapore, Philippines, Canada, Australia, New Zealand, Italy, Brazil, Mexico, Spain. Parameters: either postal_code plus country (name, alpha-2 or alpha-3 code), or coordinate {latitude, longitude}; optional geojson_boundary (true for a GeoJSON boundary). Example: {\"postal_code\"","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"country":{"type":"string"},"coordinate":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"postal_code":{"type":"string"},"geojson_boundary":{"type":"boolean"}},"additionalProperties":false},"title":"Postcode Lookup","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"postcode_lookup","displayName":"Postcode Lookup"},{"name":"search_along_route","description":"Find places matching a text query along a driving route, with the detour time and distance each stop adds - for \"find X on the way\" questions. Pass the route as an ordered list of waypoints, e.g. the origin, waypoints and destination used with directions. Parameters: route_points (array of {latitude, longitude}, at least 2, required), query (required); optional max_detour_seconds (default 900, max 3600), sort_by (detour_time | detour_offset), limit (max 20), view. Example: {\"route_points\": [{\"la","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["route_points","query"],"properties":{"view":{"enum":["Unified","AR","CN","IN","PK","MA","RU","RS","TW","TR"],"type":"string"},"limit":{"type":"integer","maximum":20,"minimum":1},"query":{"type":"string","minLength":1},"sort_by":{"enum":["detour_time","detour_offset"],"type":"string"},"route_points":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"minItems":2},"max_detour_seconds":{"type":"integer","maximum":3600,"minimum":1}},"additionalProperties":false},"title":"Search Along Route","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_along_route","displayName":"Search Along Route"},{"name":"search_documentation","description":"Search NextBillion's official API and SDK documentation. Use for any question about how NextBillion works: calling an API, what a parameter means, which API to use, or SDK setup. Answers come from an index of the official documentation, not from live API calls; when the index is temporarily unavailable the result says so and names the public docs site.\nQueries match best with the docs' own terms and exact parameter names (truck_weight, option=flexible) rather than everyday phrasing; when results","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["query"],"properties":{"api":{"type":"string"},"sdk":{"type":"string"},"limit":{"type":"integer","maximum":10,"minimum":1},"query":{"type":"string","minLength":1},"category":{"type":"string"},"include_examples":{"type":"boolean"}},"additionalProperties":false},"title":"Search Documentation","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_documentation","displayName":"Search Documentation"},{"name":"static_map_image","description":"Render a static map image centered on a location, with optional markers and line/polygon overlays; returns the image inline (path in the result text). For a map auto-fitted to a route or to overlays, use static_route_map. Parameters: center {latitude, longitude} and zoom (0-22) (required); optional markers (array of {latitude, longitude, color, icon_url, anchor, scale}), paths (array of {points [{latitude, longitude}] OR geojson_coordinates [[longitude, latitude], ...], stroke_color, stroke_widt","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["center","zoom"],"properties":{"zoom":{"type":"number","maximum":22,"minimum":0},"paths":{"type":"array","items":{"type":"object","properties":{"points":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"minItems":2},"fill_color":{"type":"string"},"stroke_color":{"type":"string"},"stroke_width":{"type":"integer","maximum":20,"minimum":1},"geojson_coordinates":{"type":"array","items":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}]},"minItems":2}},"additionalProperties":false},"maxItems":10},"style":{"type":"string"},"width":{"type":"integer","maximum":2048,"minimum":16},"center":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"format":{"enum":["png","jpg","webp"],"type":"string"},"height":{"type":"integer","maximum":2048,"minimum":16},"retina":{"type":"boolean"},"markers":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"color":{"type":"string"},"scale":{"type":"number","exclusiveMinimum":0},"anchor":{"enum":["top","left","bottom","right","center","topleft","bottomleft","topright","bottomright"],"type":"string"},"icon_url":{"type":"string","format":"uri"},"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false}}},"additionalProperties":false},"title":"Static Map Image","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"static_map_image","displayName":"Static Map Image"},{"name":"static_route_map","description":"Render a static map auto-fitted to a route and/or overlays: a route from directions, and/or lines and filled polygons such as isochrone contours; very long geometry is simplified automatically to fit the map API URL limit (distances unaffected). Returns the image inline. Parameters: at least one of encoded_polyline (the geometry string from directions, preferred), route_points (array of {latitude, longitude}) or paths (array of {points OR geojson_coordinates [[longitude, latitude], ...], stroke_","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"paths":{"type":"array","items":{"type":"object","properties":{"points":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"minItems":2},"fill_color":{"type":"string"},"stroke_color":{"type":"string"},"stroke_width":{"type":"integer","maximum":20,"minimum":1},"geojson_coordinates":{"type":"array","items":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}]},"minItems":2}},"additionalProperties":false},"maxItems":10},"style":{"type":"string"},"width":{"type":"integer","maximum":2048,"minimum":16},"format":{"enum":["png","jpg","webp"],"type":"string"},"height":{"type":"integer","maximum":2048,"minimum":16},"retina":{"type":"boolean"},"markers":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"color":{"type":"string"},"scale":{"type":"number","exclusiveMinimum":0},"anchor":{"enum":["top","left","bottom","right","center","topleft","bottomleft","topright","bottomright"],"type":"string"},"icon_url":{"type":"string","format":"uri"},"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false}},"padding":{"type":"number","maximum":1,"minimum":0},"route_points":{"type":"array","items":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","maximum":90,"minimum":-90},"longitude":{"type":"number","maximum":180,"minimum":-180}},"additionalProperties":false},"minItems":2},"stroke_color":{"type":"string"},"stroke_width":{"type":"integer","maximum":20,"minimum":1},"encoded_polyline":{"type":"string"}},"additionalProperties":false},"title":"Static Route Map","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"static_route_map","displayName":"Static Route Map"}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=Nextbillion&config=eyJ1cmwiOiAiaHR0cHM6Ly9tY3AubmV4dGJpbGxpb24uaW8vIn0%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22Nextbillion%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.nextbillion.io%2F%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22Nextbillion%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.nextbillion.io%2F%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Nextbillion&connectorUrl=https%3A%2F%2Fmcp.nextbillion.io%2F"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"Nextbillion\" --url \"https://mcp.nextbillion.io/\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/nextbillion-mcp-a51a39d962","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/nextbillion-mcp-a51a39d962/tools/{tool}","mcpServerUrl":"https://mcp.nextbillion.io/","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/nextbillion-mcp-a51a39d962?live=1"}