@mapbox/mcp-server 0.2.0-dev.7 → 0.2.0-issue.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/README.md +82 -4
  2. package/dist/index.js +0 -0
  3. package/dist/tools/directions-tool/DirectionsTool.d.ts +7 -32
  4. package/dist/tools/directions-tool/DirectionsTool.d.ts.map +1 -1
  5. package/dist/tools/directions-tool/DirectionsTool.js +37 -61
  6. package/dist/tools/directions-tool/DirectionsTool.js.map +1 -1
  7. package/dist/tools/directions-tool/DirectionsTool.test.js +208 -257
  8. package/dist/tools/directions-tool/DirectionsTool.test.js.map +1 -1
  9. package/dist/tools/directions-tool/cleanResponseData.d.ts +11 -0
  10. package/dist/tools/directions-tool/cleanResponseData.d.ts.map +1 -0
  11. package/dist/tools/directions-tool/cleanResponseData.js +175 -0
  12. package/dist/tools/directions-tool/cleanResponseData.js.map +1 -0
  13. package/dist/tools/directions-tool/cleanResponseData.test.d.ts +2 -0
  14. package/dist/tools/directions-tool/cleanResponseData.test.d.ts.map +1 -0
  15. package/dist/tools/directions-tool/cleanResponseData.test.js +295 -0
  16. package/dist/tools/directions-tool/cleanResponseData.test.js.map +1 -0
  17. package/dist/tools/directions-tool/formatIsoDateTime.d.ts +8 -0
  18. package/dist/tools/directions-tool/formatIsoDateTime.d.ts.map +1 -0
  19. package/dist/tools/directions-tool/formatIsoDateTime.js +17 -0
  20. package/dist/tools/directions-tool/formatIsoDateTime.js.map +1 -0
  21. package/dist/tools/directions-tool/formatIsoDateTime.test.d.ts +2 -0
  22. package/dist/tools/directions-tool/formatIsoDateTime.test.d.ts.map +1 -0
  23. package/dist/tools/directions-tool/formatIsoDateTime.test.js +26 -0
  24. package/dist/tools/directions-tool/formatIsoDateTime.test.js.map +1 -0
  25. package/dist/utils/requestUtils.d.ts.map +1 -1
  26. package/dist/utils/requestUtils.js +23 -2
  27. package/dist/utils/requestUtils.js.map +1 -1
  28. package/dist/utils/requestUtils.test.d.ts +2 -0
  29. package/dist/utils/requestUtils.test.d.ts.map +1 -0
  30. package/dist/utils/requestUtils.test.js +114 -0
  31. package/dist/utils/requestUtils.test.js.map +1 -0
  32. package/dist/version.json +4 -4
  33. package/package.json +2 -2
package/README.md CHANGED
@@ -37,6 +37,41 @@ For detailed setup instructions for different integrations, refer to the followi
37
37
  - [VS Code Setup](./docs/vscode-setup.md) - Setting up a development environment in Visual Studio Code
38
38
  - [Smolagents Integration](./docs/using-mcp-with-smolagents/README.md) - Example showing how to connect Smolagents AI agents to Mapbox's tools
39
39
 
40
+ ## Example Prompts
41
+
42
+ Try these prompts with Claude Desktop or other MCP clients after setup:
43
+
44
+ ### Location Discovery
45
+
46
+ - "Find coffee shops within walking distance of the Empire State Building"
47
+ - "Show me gas stations along the route from Boston to New York"
48
+ - "What restaurants are near Times Square?"
49
+
50
+ ### Navigation & Travel
51
+
52
+ - "Get driving directions from LAX to Hollywood with current traffic"
53
+ - "How long would it take to walk from Central Park to Times Square?"
54
+ - "Calculate travel time from my hotel (Four Seasons) to JFK Airport by taxi during rush hour"
55
+
56
+ ### Visualization & Maps
57
+
58
+ - "Create a map image showing the route from Golden Gate Bridge to Fisherman's Wharf with markers at both locations"
59
+ - "Show me a satellite view of Manhattan with key landmarks marked"
60
+ - "Generate a map highlighting all Starbucks locations within a mile of downtown Seattle"
61
+
62
+ ### Analysis & Planning
63
+
64
+ - "Show me areas reachable within 30 minutes of downtown Portland by car"
65
+ - "Calculate a travel time matrix between these 3 hotel locations (Marriott, Sheraton and Hilton) and the convention center in Denver"
66
+ - "Find the optimal route visiting these 3 tourist attractions (Golden Gate, Musical Stairs and Fisherman's Wharf) in San Francisco"
67
+
68
+ ### Tips for Better Results
69
+
70
+ - Be specific about locations (use full addresses or landmark names)
71
+ - Specify your preferred travel method (driving, walking, cycling)
72
+ - Include time constraints when relevant ("during rush hour", "at 3 PM")
73
+ - Ask for specific output formats when needed ("as a map image", "in JSON format")
74
+
40
75
  ## Tools
41
76
 
42
77
  ### Mapbox API tools
@@ -112,13 +147,12 @@ Fetches routing directions using the [Mapbox Directions API](https://docs.mapbox
112
147
  - Future departure time (`depart_at`) for driving and driving-traffic profiles
113
148
  - Desired arrival time (`arrive_by`) for driving profile only
114
149
  - Profile-specific optimizations:
115
- - Walking: customizable walking speed and bias for/against walkways
116
150
  - Driving: vehicle dimension constraints (height, width, weight)
117
151
  - Exclusion options for routing:
118
152
  - Common exclusions: ferry routes, cash-only tolls
119
153
  - Driving-specific exclusions: tolls, motorways, unpaved roads, tunnels, country borders, state borders
120
154
  - Custom point exclusions (up to 50 geographic points to avoid)
121
- - Multiple geometry output formats (GeoJSON, polyline)
155
+ - GeoJSON geometry output format
122
156
 
123
157
  #### Isochrone tool
124
158
 
@@ -169,9 +203,53 @@ Set `VERBOSE_ERRORS=true` to get detailed error messages from the MCP server. Th
169
203
 
170
204
  By default, the server returns generic error messages. With verbose errors enabled, you'll receive the actual error details, which can help diagnose API connection issues, invalid parameters, or other problems.
171
205
 
172
- ## Feedback
206
+ ## Data Usage & Privacy
207
+
208
+ ### What data is sent to Mapbox APIs
209
+
210
+ When you use the MCP server tools, the following data is sent directly from your environment to Mapbox APIs:
211
+
212
+ - **Geocoding tools**: Address/location text, coordinates, country/region filters
213
+ - **Search tools**: Search queries, location coordinates for proximity, category filters
214
+ - **Directions tool**: Start/end coordinates, waypoints, routing preferences, vehicle constraints
215
+ - **Matrix tool**: Multiple coordinate pairs, travel profile, departure times
216
+ - **Static map tool**: Coordinates, zoom level, styling preferences, marker information
217
+ - **Isochrone tool**: Origin coordinates, time/distance parameters, travel profile
218
+
219
+ ### Your privacy
220
+
221
+ - **Local execution**: All API calls are made directly from your environment to Mapbox APIs
222
+ - **Token security**: Your Mapbox API token remains on your local machine and is never transmitted to or stored by this MCP server
223
+ - **No data storage**: This MCP server does not store, log, or collect any of your data or API requests
224
+ - **Direct communication**: There is no intermediary server between you and Mapbox APIs
225
+
226
+ ### Third-party data usage
227
+
228
+ - **Mapbox's privacy policy** governs data sent to their APIs: https://www.mapbox.com/legal/privacy/
229
+ - **API usage**: Standard Mapbox API terms apply to all requests made through these tools
230
+ - **Data retention**: Refer to Mapbox's documentation for their data retention policies
231
+
232
+ ## Support & Contact
233
+
234
+ ### For MCP Server Issues
235
+
236
+ - **Email**: mcp-feedback@mapbox.com
237
+ - **GitHub Issues**: [Report bugs and feature requests](https://github.com/mapbox/mcp-server/issues)
238
+
239
+ ### For Mapbox API Questions
240
+
241
+ - **Mapbox Support**: https://support.mapbox.com/
242
+ - **Documentation**: https://docs.mapbox.com/
243
+ - **API Status**: https://status.mapbox.com/
244
+
245
+ ### Maintenance Commitment
246
+
247
+ This MCP server is officially maintained by Mapbox, Inc. We provide:
173
248
 
174
- For feedback and questions about this MCP server, email mcp-feedback@mapbox.com.
249
+ - Regular updates for new Mapbox API features
250
+ - Bug fixes and security updates
251
+ - Compatibility with latest MCP protocol versions
252
+ - Community support through GitHub issues
175
253
 
176
254
  ---
177
255
 
package/dist/index.js CHANGED
File without changes
@@ -1,39 +1,21 @@
1
1
  import { z } from 'zod';
2
2
  import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
3
- declare const DirectionsInputSchema: z.ZodObject<{
4
- coordinates: z.ZodArray<z.ZodObject<{
5
- longitude: z.ZodNumber;
6
- latitude: z.ZodNumber;
7
- }, "strip", z.ZodTypeAny, {
8
- longitude: number;
9
- latitude: number;
10
- }, {
11
- longitude: number;
12
- latitude: number;
13
- }>, "many">;
3
+ export declare const DirectionsInputSchema: z.ZodObject<{
4
+ coordinates: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">;
14
5
  routing_profile: z.ZodDefault<z.ZodOptional<z.ZodEnum<["driving-traffic", "driving", "walking", "cycling"]>>>;
15
- walking_speed: z.ZodOptional<z.ZodNumber>;
16
- walkway_bias: z.ZodOptional<z.ZodNumber>;
17
- geometries: z.ZodDefault<z.ZodOptional<z.ZodEnum<["geojson", "polyline", "polyline6"]>>>;
6
+ geometries: z.ZodDefault<z.ZodOptional<z.ZodEnum<["none", "geojson"]>>>;
18
7
  max_height: z.ZodOptional<z.ZodNumber>;
19
8
  max_width: z.ZodOptional<z.ZodNumber>;
20
9
  max_weight: z.ZodOptional<z.ZodNumber>;
21
10
  alternatives: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
22
- annotations: z.ZodOptional<z.ZodArray<z.ZodEnum<["distance", "duration", "speed", "congestion"]>, "many">>;
23
11
  depart_at: z.ZodEffects<z.ZodOptional<z.ZodString>, string | undefined, string | undefined>;
24
12
  arrive_by: z.ZodEffects<z.ZodOptional<z.ZodString>, string | undefined, string | undefined>;
25
13
  exclude: z.ZodEffects<z.ZodOptional<z.ZodString>, string | undefined, string | undefined>;
26
14
  }, "strip", z.ZodTypeAny, {
27
- coordinates: {
28
- longitude: number;
29
- latitude: number;
30
- }[];
15
+ coordinates: [number, number][];
31
16
  routing_profile: "driving-traffic" | "driving" | "walking" | "cycling";
32
- geometries: "geojson" | "polyline" | "polyline6";
17
+ geometries: "none" | "geojson";
33
18
  alternatives: boolean;
34
- annotations?: ("distance" | "duration" | "speed" | "congestion")[] | undefined;
35
- walking_speed?: number | undefined;
36
- walkway_bias?: number | undefined;
37
19
  max_height?: number | undefined;
38
20
  max_width?: number | undefined;
39
21
  max_weight?: number | undefined;
@@ -41,15 +23,9 @@ declare const DirectionsInputSchema: z.ZodObject<{
41
23
  arrive_by?: string | undefined;
42
24
  exclude?: string | undefined;
43
25
  }, {
44
- coordinates: {
45
- longitude: number;
46
- latitude: number;
47
- }[];
48
- annotations?: ("distance" | "duration" | "speed" | "congestion")[] | undefined;
26
+ coordinates: [number, number][];
49
27
  routing_profile?: "driving-traffic" | "driving" | "walking" | "cycling" | undefined;
50
- walking_speed?: number | undefined;
51
- walkway_bias?: number | undefined;
52
- geometries?: "geojson" | "polyline" | "polyline6" | undefined;
28
+ geometries?: "none" | "geojson" | undefined;
53
29
  max_height?: number | undefined;
54
30
  max_width?: number | undefined;
55
31
  max_weight?: number | undefined;
@@ -64,5 +40,4 @@ export declare class DirectionsTool extends MapboxApiBasedTool<typeof Directions
64
40
  constructor();
65
41
  protected execute(input: z.infer<typeof DirectionsInputSchema>): Promise<any>;
66
42
  }
67
- export {};
68
43
  //# sourceMappingURL=DirectionsTool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DirectionsTool.d.ts","sourceRoot":"","sources":["../../../src/tools/directions-tool/DirectionsTool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAsH9D,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8MzB,CAAC;AACH,qBAAa,cAAe,SAAQ,kBAAkB,CACpD,OAAO,qBAAqB,CAC7B;IACC,IAAI,SAAoB;IACxB,WAAW,SACgF;;cAK3E,OAAO,CACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,GAC3C,OAAO,CAAC,GAAG,CAAC;CAiLhB"}
1
+ {"version":3,"file":"DirectionsTool.d.ts","sourceRoot":"","sources":["../../../src/tools/directions-tool/DirectionsTool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAyH9D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8KhC,CAAC;AACH,qBAAa,cAAe,SAAQ,kBAAkB,CACpD,OAAO,qBAAqB,CAC7B;IACC,IAAI,SAAoB;IACxB,WAAW,SACgF;;cAK3E,OAAO,CACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,GAC3C,OAAO,CAAC,GAAG,CAAC;CAuKhB"}
@@ -1,6 +1,8 @@
1
1
  import { URLSearchParams } from 'url';
2
2
  import { z } from 'zod';
3
3
  import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
4
+ import { cleanResponseData } from './cleanResponseData.js';
5
+ import { formatIsoDateTime } from './formatIsoDateTime.js';
4
6
  // Docs: https://docs.mapbox.com/api/navigation/directions/
5
7
  /**
6
8
  * Validates ISO 8601 date-time formats used by Mapbox Directions API
@@ -9,15 +11,16 @@ import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
9
11
  const validateIsoDateTime = (val, ctx) => {
10
12
  if (!val)
11
13
  return; // Optional, so empty is fine
12
- // ISO 8601 regex patterns for the three formats mentioned in the docs
14
+ // ISO 8601 regex patterns for the valid formats mentioned in the docs
13
15
  // 1. YYYY-MM-DDThh:mm:ssZ (exactly one Z at the end)
14
16
  // 2. YYYY-MM-DDThh:mm:ss±hh:mm (timezone offset with colon)
15
17
  // 3. YYYY-MM-DDThh:mm (no seconds, no timezone)
16
- const iso8601Pattern = /^(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$)|(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[+-]\d{2}:\d{2}$)|(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}$)/;
18
+ // 4. YYYY-MM-DDThh:mm:ss (with seconds but no timezone) - will be converted to format 3
19
+ const iso8601Pattern = /^(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$)|(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[+-]\d{2}:\d{2}$)|(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}$)|(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$)/;
17
20
  if (!iso8601Pattern.test(val)) {
18
21
  ctx.addIssue({
19
22
  code: z.ZodIssueCode.custom,
20
- message: 'Invalid date-time format. Must be in ISO 8601 format: YYYY-MM-DDThh:mm:ssZ, YYYY-MM-DDThh:mmss±hh:mm, or YYYY-MM-DDThh:mm',
23
+ message: 'Invalid date-time format. Must be in ISO 8601 format: YYYY-MM-DDThh:mm:ssZ, YYYY-MM-DDThh:mmss±hh:mm, YYYY-MM-DDThh:mm, or YYYY-MM-DDThh:mm:ss',
21
24
  path: []
22
25
  });
23
26
  return; // Stop further validation if format is invalid
@@ -99,21 +102,21 @@ const validateIsoDateTime = (val, ctx) => {
99
102
  });
100
103
  }
101
104
  };
102
- const DirectionsInputSchema = z.object({
105
+ export const DirectionsInputSchema = z.object({
103
106
  coordinates: z
104
- .array(z.object({
105
- longitude: z
107
+ .array(z.tuple([
108
+ z
106
109
  .number()
107
110
  .min(-180, 'Longitude must be between -180 and 180 degrees')
108
111
  .max(180, 'Longitude must be between -180 and 180 degrees'),
109
- latitude: z
112
+ z
110
113
  .number()
111
114
  .min(-90, 'Latitude must be between -90 and 90 degrees')
112
115
  .max(90, 'Latitude must be between -90 and 90 degrees')
113
- }))
116
+ ]))
114
117
  .min(2, 'At least two coordinate pairs are required.')
115
118
  .max(25, 'Up to 25 coordinate pairs are supported.')
116
- .describe('Array of coordinate objects with longitude and latitude properties to visit in order. ' +
119
+ .describe('Array of [longitude, latitude] coordinate pairs to visit in order. ' +
117
120
  'Must include at least 2 coordinate pairs (starting and ending points). ' +
118
121
  'Up to 25 coordinates total are supported.'),
119
122
  routing_profile: z
@@ -125,28 +128,13 @@ const DirectionsInputSchema = z.object({
125
128
  '- driving: automotive based on typical traffic\n' +
126
129
  '- walking: pedestrian/hiking\n' +
127
130
  '- cycling: bicycle'),
128
- walking_speed: z
129
- .number()
130
- .min(0.14, 'Walking speed must be between 0.14 and 6.94 meters per second')
131
- .max(6.94, 'Walking speed must be between 0.14 and 6.94 meters per second')
132
- .optional()
133
- .describe('The walking speed, in meters per second. Must be between 0.14 m/s (0.5 km/h) and ' +
134
- '6.94 m/s (25 km/h). Defaults to 1.42 m/s (5.1 km/h). Only available for walking profile.'),
135
- walkway_bias: z
136
- .number()
137
- .min(-1, 'Walkway bias must be between -1 and 1')
138
- .max(1, 'Walkway bias must be between -1 and 1')
139
- .optional()
140
- .describe('A scale from -1 to 1, where -1 biases the route against walkways and 1 biases the ' +
141
- 'route toward walkways. The default is 0, which is neutral. Only available for walking profile.'),
142
131
  geometries: z
143
- .enum(['geojson', 'polyline', 'polyline6'])
132
+ .enum(['none', 'geojson'])
144
133
  .optional()
145
- .default('polyline')
134
+ .default('none')
146
135
  .describe('The format of the returned geometry. Options: \n' +
147
- '- geojson: as GeoJSON LineString\n' +
148
- '- polyline (default): a polyline with a precision of five decimal places\n' +
149
- '- polyline6: a polyline with a precision of six decimal places'),
136
+ '- none (default): no geometry object is returned at all, use this if you do not need all of the intermediate coordinates.\n' +
137
+ '- geojson: as GeoJSON LineString (might be very long as there could be a lot of points)'),
150
138
  max_height: z
151
139
  .number()
152
140
  .min(0, 'Vehicle height must be between 0 and 10 meters')
@@ -180,16 +168,6 @@ const DirectionsInputSchema = z.object({
180
168
  .default(false)
181
169
  .describe('Whether to try to return alternative routes (true) or not (false, default). ' +
182
170
  'Up to two alternatives may be returned.'),
183
- annotations: z
184
- .array(
185
- // Note: more options are available in the Directions API documentation, not added here for simplicity
186
- z.enum(['distance', 'duration', 'speed', 'congestion']))
187
- .optional()
188
- .describe('Return additional details about the route leg. Options: \n' +
189
- '- distance: distance in meters between each coordinate pair\n' +
190
- '- duration: estimated travel time in seconds between points\n' +
191
- '- speed: average speed in m/s for each coordinate pair\n' +
192
- '- congestion: traffic congestion level ("severe", "heavy", "moderate", "low")\n'),
193
171
  depart_at: z
194
172
  .string()
195
173
  .optional()
@@ -335,32 +313,36 @@ export class DirectionsTool extends MapboxApiBasedTool {
335
313
  !isDrivingProfile) {
336
314
  throw new Error(`Vehicle dimension parameters (max_height, max_width, max_weight) are only available for 'driving' and 'driving-traffic' profiles`);
337
315
  }
338
- // Validate walking-specific parameters are only used with walking profile
339
- if ((input.walking_speed !== undefined || input.walkway_bias !== undefined) &&
340
- input.routing_profile !== 'walking') {
341
- throw new Error(`Walking parameters (walking_speed, walkway_bias) are only available for the 'walking' profile`);
342
- }
343
316
  const joined = input.coordinates
344
- .map(({ longitude, latitude }) => `${longitude},${latitude}`)
317
+ .map(([lng, lat]) => `${lng},${lat}`)
345
318
  .join(';');
346
319
  const encodedCoords = encodeURIComponent(joined);
347
320
  // Build query parameters
348
321
  const queryParams = new URLSearchParams();
349
322
  queryParams.append('access_token', MapboxApiBasedTool.MAPBOX_ACCESS_TOKEN);
350
- queryParams.append('geometries', input.geometries);
323
+ // Only add geometries parameter if not 'none'
324
+ if (input.geometries !== 'none') {
325
+ queryParams.append('geometries', input.geometries);
326
+ }
351
327
  queryParams.append('alternatives', input.alternatives.toString());
352
- // Add annotations parameter if provided
353
- if (input.annotations && input.annotations.length > 0) {
354
- queryParams.append('annotations', input.annotations.join(','));
355
- // For annotations to work, overview must be set to 'full'
356
- queryParams.append('overview', 'full');
328
+ // Add annotations parameter
329
+ if (input.routing_profile === 'driving-traffic') {
330
+ // congestion is available only when driving
331
+ queryParams.append('annotations', 'distance,congestion,speed');
332
+ }
333
+ else {
334
+ queryParams.append('annotations', 'distance,speed');
357
335
  }
358
- // Add depart_at or arrive_by parameter if provided
336
+ // For annotations to work, overview must be set to 'full'
337
+ queryParams.append('overview', 'full');
338
+ // Add depart_at or arrive_by parameter if provided, converting format if needed
359
339
  if (input.depart_at) {
360
- queryParams.append('depart_at', input.depart_at);
340
+ const formattedDateTime = formatIsoDateTime(input.depart_at);
341
+ queryParams.append('depart_at', formattedDateTime);
361
342
  }
362
343
  else if (input.arrive_by) {
363
- queryParams.append('arrive_by', input.arrive_by);
344
+ const formattedDateTime = formatIsoDateTime(input.arrive_by);
345
+ queryParams.append('arrive_by', formattedDateTime);
364
346
  }
365
347
  // Add vehicle dimension parameters if provided
366
348
  if (input.max_height !== undefined) {
@@ -372,13 +354,7 @@ export class DirectionsTool extends MapboxApiBasedTool {
372
354
  if (input.max_weight !== undefined) {
373
355
  queryParams.append('max_weight', input.max_weight.toString());
374
356
  }
375
- // Add walking-specific parameters if provided
376
- if (input.walking_speed !== undefined) {
377
- queryParams.append('walking_speed', input.walking_speed.toString());
378
- }
379
- if (input.walkway_bias !== undefined) {
380
- queryParams.append('walkway_bias', input.walkway_bias.toString());
381
- }
357
+ queryParams.append('steps', 'true');
382
358
  let queryString = queryParams.toString();
383
359
  // Add exclude parameter if provided (ensuring proper encoding of special characters)
384
360
  if (input.exclude) {
@@ -399,7 +375,7 @@ export class DirectionsTool extends MapboxApiBasedTool {
399
375
  throw new Error(`Request failed with status ${response.status}: ${response.statusText}`);
400
376
  }
401
377
  const data = await response.json();
402
- return data;
378
+ return cleanResponseData(input, data);
403
379
  }
404
380
  }
405
381
  //# sourceMappingURL=DirectionsTool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DirectionsTool.js","sourceRoot":"","sources":["../../../src/tools/directions-tool/DirectionsTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DirectionsTool.js","sourceRoot":"","sources":["../../../src/tools/directions-tool/DirectionsTool.ts"],"names":[],"mappings":"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"}