@mapbox/mcp-server 0.2.4 → 0.4.0

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 (250) hide show
  1. package/README.md +9 -9
  2. package/dist/commonjs/config/toolConfig.d.ts +8 -0
  3. package/dist/commonjs/config/toolConfig.d.ts.map +1 -0
  4. package/dist/commonjs/config/toolConfig.js +40 -0
  5. package/dist/commonjs/config/toolConfig.js.map +1 -0
  6. package/dist/commonjs/index.d.ts +2 -0
  7. package/dist/{index.d.ts.map → commonjs/index.d.ts.map} +1 -1
  8. package/dist/commonjs/index.js +38 -0
  9. package/dist/commonjs/index.js.map +1 -0
  10. package/dist/{cjs → commonjs}/package.json +1 -1
  11. package/dist/{tools → commonjs/tools}/MapboxApiBasedTool.d.ts +6 -5
  12. package/dist/commonjs/tools/MapboxApiBasedTool.d.ts.map +1 -0
  13. package/dist/commonjs/tools/MapboxApiBasedTool.js +111 -0
  14. package/dist/commonjs/tools/MapboxApiBasedTool.js.map +1 -0
  15. package/dist/commonjs/tools/category-list-tool/CategoryListTool.d.ts +28 -0
  16. package/dist/commonjs/tools/category-list-tool/CategoryListTool.d.ts.map +1 -0
  17. package/dist/commonjs/tools/category-list-tool/CategoryListTool.js +68 -0
  18. package/dist/commonjs/tools/category-list-tool/CategoryListTool.js.map +1 -0
  19. package/dist/{tools → commonjs/tools}/category-search-tool/CategorySearchTool.d.ts +6 -5
  20. package/dist/commonjs/tools/category-search-tool/CategorySearchTool.d.ts.map +1 -0
  21. package/dist/commonjs/tools/category-search-tool/CategorySearchTool.js +188 -0
  22. package/dist/commonjs/tools/category-search-tool/CategorySearchTool.js.map +1 -0
  23. package/dist/{tools → commonjs/tools}/directions-tool/DirectionsTool.d.ts +3 -2
  24. package/dist/commonjs/tools/directions-tool/DirectionsTool.d.ts.map +1 -0
  25. package/dist/commonjs/tools/directions-tool/DirectionsTool.js +385 -0
  26. package/dist/commonjs/tools/directions-tool/DirectionsTool.js.map +1 -0
  27. package/dist/commonjs/tools/directions-tool/cleanResponseData.d.ts.map +1 -0
  28. package/dist/commonjs/tools/directions-tool/cleanResponseData.js +178 -0
  29. package/dist/commonjs/tools/directions-tool/cleanResponseData.js.map +1 -0
  30. package/dist/commonjs/tools/directions-tool/formatIsoDateTime.d.ts.map +1 -0
  31. package/dist/commonjs/tools/directions-tool/formatIsoDateTime.js +21 -0
  32. package/dist/commonjs/tools/directions-tool/formatIsoDateTime.js.map +1 -0
  33. package/dist/{tools → commonjs/tools}/forward-geocode-tool/ForwardGeocodeTool.d.ts +5 -4
  34. package/dist/commonjs/tools/forward-geocode-tool/ForwardGeocodeTool.d.ts.map +1 -0
  35. package/dist/commonjs/tools/forward-geocode-tool/ForwardGeocodeTool.js +212 -0
  36. package/dist/commonjs/tools/forward-geocode-tool/ForwardGeocodeTool.js.map +1 -0
  37. package/dist/{tools → commonjs/tools}/isochrone-tool/IsochroneTool.d.ts +3 -2
  38. package/dist/commonjs/tools/isochrone-tool/IsochroneTool.d.ts.map +1 -0
  39. package/dist/commonjs/tools/isochrone-tool/IsochroneTool.js +118 -0
  40. package/dist/commonjs/tools/isochrone-tool/IsochroneTool.js.map +1 -0
  41. package/dist/{tools → commonjs/tools}/matrix-tool/MatrixTool.d.ts +3 -2
  42. package/dist/commonjs/tools/matrix-tool/MatrixTool.d.ts.map +1 -0
  43. package/dist/commonjs/tools/matrix-tool/MatrixTool.js +202 -0
  44. package/dist/commonjs/tools/matrix-tool/MatrixTool.js.map +1 -0
  45. package/dist/{tools → commonjs/tools}/poi-search-tool/PoiSearchTool.d.ts +5 -4
  46. package/dist/commonjs/tools/poi-search-tool/PoiSearchTool.d.ts.map +1 -0
  47. package/dist/commonjs/tools/poi-search-tool/PoiSearchTool.js +231 -0
  48. package/dist/commonjs/tools/poi-search-tool/PoiSearchTool.js.map +1 -0
  49. package/dist/{tools → commonjs/tools}/reverse-geocode-tool/ReverseGeocodeTool.d.ts +5 -4
  50. package/dist/commonjs/tools/reverse-geocode-tool/ReverseGeocodeTool.d.ts.map +1 -0
  51. package/dist/commonjs/tools/reverse-geocode-tool/ReverseGeocodeTool.js +148 -0
  52. package/dist/commonjs/tools/reverse-geocode-tool/ReverseGeocodeTool.js.map +1 -0
  53. package/dist/{tools → commonjs/tools}/static-map-image-tool/StaticMapImageTool.d.ts +3 -2
  54. package/dist/commonjs/tools/static-map-image-tool/StaticMapImageTool.d.ts.map +1 -0
  55. package/dist/commonjs/tools/static-map-image-tool/StaticMapImageTool.js +416 -0
  56. package/dist/commonjs/tools/static-map-image-tool/StaticMapImageTool.js.map +1 -0
  57. package/dist/{tools → commonjs/tools}/toolRegistry.d.ts +2 -1
  58. package/dist/commonjs/tools/toolRegistry.d.ts.map +1 -0
  59. package/dist/commonjs/tools/toolRegistry.js +37 -0
  60. package/dist/commonjs/tools/toolRegistry.js.map +1 -0
  61. package/dist/{tools → commonjs/tools}/version-tool/VersionTool.d.ts +1 -1
  62. package/dist/commonjs/tools/version-tool/VersionTool.d.ts.map +1 -0
  63. package/dist/commonjs/tools/version-tool/VersionTool.js +52 -0
  64. package/dist/commonjs/tools/version-tool/VersionTool.js.map +1 -0
  65. package/dist/commonjs/utils/fetchRequest.d.ts +38 -0
  66. package/dist/commonjs/utils/fetchRequest.d.ts.map +1 -0
  67. package/dist/commonjs/utils/fetchRequest.js +111 -0
  68. package/dist/commonjs/utils/fetchRequest.js.map +1 -0
  69. package/dist/commonjs/utils/versionUtils-cjs.cjs.map +1 -0
  70. package/dist/commonjs/utils/versionUtils-cjs.d.cts.map +1 -0
  71. package/dist/commonjs/utils/versionUtils.d.ts +9 -0
  72. package/dist/commonjs/utils/versionUtils.js +46 -0
  73. package/dist/commonjs/version.json +6 -0
  74. package/dist/esm/config/toolConfig.d.ts +8 -0
  75. package/dist/esm/config/toolConfig.d.ts.map +1 -0
  76. package/dist/esm/config/toolConfig.js +36 -0
  77. package/dist/esm/config/toolConfig.js.map +1 -0
  78. package/dist/esm/index.d.ts +2 -0
  79. package/dist/esm/index.d.ts.map +1 -0
  80. package/dist/esm/index.js +36 -0
  81. package/dist/esm/index.js.map +1 -0
  82. package/dist/esm/package.json +1 -1
  83. package/dist/esm/tools/MapboxApiBasedTool.d.ts +83 -0
  84. package/dist/esm/tools/MapboxApiBasedTool.d.ts.map +1 -0
  85. package/dist/{tools → esm/tools}/MapboxApiBasedTool.js +20 -13
  86. package/dist/esm/tools/MapboxApiBasedTool.js.map +1 -0
  87. package/dist/esm/tools/category-list-tool/CategoryListTool.d.ts +28 -0
  88. package/dist/esm/tools/category-list-tool/CategoryListTool.d.ts.map +1 -0
  89. package/dist/esm/tools/category-list-tool/CategoryListTool.js +64 -0
  90. package/dist/esm/tools/category-list-tool/CategoryListTool.js.map +1 -0
  91. package/dist/esm/tools/category-search-tool/CategorySearchTool.d.ts +89 -0
  92. package/dist/esm/tools/category-search-tool/CategorySearchTool.d.ts.map +1 -0
  93. package/dist/esm/tools/category-search-tool/CategorySearchTool.js +184 -0
  94. package/dist/esm/tools/category-search-tool/CategorySearchTool.js.map +1 -0
  95. package/dist/esm/tools/directions-tool/DirectionsTool.d.ts +44 -0
  96. package/dist/esm/tools/directions-tool/DirectionsTool.d.ts.map +1 -0
  97. package/dist/{tools → esm/tools}/directions-tool/DirectionsTool.js +9 -8
  98. package/dist/esm/tools/directions-tool/DirectionsTool.js.map +1 -0
  99. package/dist/esm/tools/directions-tool/cleanResponseData.d.ts +11 -0
  100. package/dist/esm/tools/directions-tool/cleanResponseData.d.ts.map +1 -0
  101. package/dist/esm/tools/directions-tool/cleanResponseData.js.map +1 -0
  102. package/dist/esm/tools/directions-tool/formatIsoDateTime.d.ts +8 -0
  103. package/dist/esm/tools/directions-tool/formatIsoDateTime.d.ts.map +1 -0
  104. package/dist/esm/tools/directions-tool/formatIsoDateTime.js.map +1 -0
  105. package/dist/esm/tools/forward-geocode-tool/ForwardGeocodeTool.d.ts +98 -0
  106. package/dist/esm/tools/forward-geocode-tool/ForwardGeocodeTool.d.ts.map +1 -0
  107. package/dist/{tools → esm/tools}/forward-geocode-tool/ForwardGeocodeTool.js +8 -5
  108. package/dist/esm/tools/forward-geocode-tool/ForwardGeocodeTool.js.map +1 -0
  109. package/dist/esm/tools/isochrone-tool/IsochroneTool.d.ts +60 -0
  110. package/dist/esm/tools/isochrone-tool/IsochroneTool.d.ts.map +1 -0
  111. package/dist/{tools → esm/tools}/isochrone-tool/IsochroneTool.js +8 -5
  112. package/dist/esm/tools/isochrone-tool/IsochroneTool.js.map +1 -0
  113. package/dist/esm/tools/matrix-tool/MatrixTool.d.ts +51 -0
  114. package/dist/esm/tools/matrix-tool/MatrixTool.d.ts.map +1 -0
  115. package/dist/{tools → esm/tools}/matrix-tool/MatrixTool.js +8 -5
  116. package/dist/{tools → esm/tools}/matrix-tool/MatrixTool.js.map +1 -1
  117. package/dist/esm/tools/poi-search-tool/PoiSearchTool.d.ts +119 -0
  118. package/dist/esm/tools/poi-search-tool/PoiSearchTool.d.ts.map +1 -0
  119. package/dist/{tools → esm/tools}/poi-search-tool/PoiSearchTool.js +9 -6
  120. package/dist/esm/tools/poi-search-tool/PoiSearchTool.js.map +1 -0
  121. package/dist/esm/tools/reverse-geocode-tool/ReverseGeocodeTool.d.ts +46 -0
  122. package/dist/esm/tools/reverse-geocode-tool/ReverseGeocodeTool.d.ts.map +1 -0
  123. package/dist/{tools → esm/tools}/reverse-geocode-tool/ReverseGeocodeTool.js +8 -5
  124. package/dist/esm/tools/reverse-geocode-tool/ReverseGeocodeTool.js.map +1 -0
  125. package/dist/esm/tools/static-map-image-tool/StaticMapImageTool.d.ts +179 -0
  126. package/dist/esm/tools/static-map-image-tool/StaticMapImageTool.d.ts.map +1 -0
  127. package/dist/{tools → esm/tools}/static-map-image-tool/StaticMapImageTool.js +7 -4
  128. package/dist/esm/tools/static-map-image-tool/StaticMapImageTool.js.map +1 -0
  129. package/dist/esm/tools/toolRegistry.d.ts +15 -0
  130. package/dist/esm/tools/toolRegistry.d.ts.map +1 -0
  131. package/dist/{tools → esm/tools}/toolRegistry.js +2 -0
  132. package/dist/esm/tools/toolRegistry.js.map +1 -0
  133. package/dist/esm/tools/version-tool/VersionTool.d.ts +18 -0
  134. package/dist/esm/tools/version-tool/VersionTool.d.ts.map +1 -0
  135. package/dist/{tools → esm/tools}/version-tool/VersionTool.js +2 -4
  136. package/dist/esm/tools/version-tool/VersionTool.js.map +1 -0
  137. package/dist/esm/utils/fetchRequest.d.ts +38 -0
  138. package/dist/esm/utils/fetchRequest.d.ts.map +1 -0
  139. package/dist/esm/utils/fetchRequest.js +105 -0
  140. package/dist/esm/utils/fetchRequest.js.map +1 -0
  141. package/dist/esm/utils/versionUtils.d.ts.map +1 -0
  142. package/dist/{utils → esm/utils}/versionUtils.js +4 -2
  143. package/dist/esm/utils/versionUtils.js.map +1 -0
  144. package/dist/esm/version.json +6 -0
  145. package/package.json +44 -29
  146. package/dist/index.d.ts +0 -2
  147. package/dist/index.js +0 -25
  148. package/dist/index.js.map +0 -1
  149. package/dist/tools/MapboxApiBasedTool.d.ts.map +0 -1
  150. package/dist/tools/MapboxApiBasedTool.js.map +0 -1
  151. package/dist/tools/MapboxApiBasedTool.test.d.ts +0 -2
  152. package/dist/tools/MapboxApiBasedTool.test.d.ts.map +0 -1
  153. package/dist/tools/MapboxApiBasedTool.test.js +0 -143
  154. package/dist/tools/MapboxApiBasedTool.test.js.map +0 -1
  155. package/dist/tools/category-search-tool/CategorySearchTool.d.ts.map +0 -1
  156. package/dist/tools/category-search-tool/CategorySearchTool.js +0 -666
  157. package/dist/tools/category-search-tool/CategorySearchTool.js.map +0 -1
  158. package/dist/tools/category-search-tool/CategorySearchTool.test.d.ts +0 -2
  159. package/dist/tools/category-search-tool/CategorySearchTool.test.d.ts.map +0 -1
  160. package/dist/tools/category-search-tool/CategorySearchTool.test.js +0 -369
  161. package/dist/tools/category-search-tool/CategorySearchTool.test.js.map +0 -1
  162. package/dist/tools/directions-tool/DirectionsTool.d.ts.map +0 -1
  163. package/dist/tools/directions-tool/DirectionsTool.js.map +0 -1
  164. package/dist/tools/directions-tool/DirectionsTool.test.d.ts +0 -2
  165. package/dist/tools/directions-tool/DirectionsTool.test.d.ts.map +0 -1
  166. package/dist/tools/directions-tool/DirectionsTool.test.js +0 -822
  167. package/dist/tools/directions-tool/DirectionsTool.test.js.map +0 -1
  168. package/dist/tools/directions-tool/cleanResponseData.d.ts.map +0 -1
  169. package/dist/tools/directions-tool/cleanResponseData.js.map +0 -1
  170. package/dist/tools/directions-tool/cleanResponseData.test.d.ts +0 -2
  171. package/dist/tools/directions-tool/cleanResponseData.test.d.ts.map +0 -1
  172. package/dist/tools/directions-tool/cleanResponseData.test.js +0 -295
  173. package/dist/tools/directions-tool/cleanResponseData.test.js.map +0 -1
  174. package/dist/tools/directions-tool/formatIsoDateTime.d.ts.map +0 -1
  175. package/dist/tools/directions-tool/formatIsoDateTime.js.map +0 -1
  176. package/dist/tools/directions-tool/formatIsoDateTime.test.d.ts +0 -2
  177. package/dist/tools/directions-tool/formatIsoDateTime.test.d.ts.map +0 -1
  178. package/dist/tools/directions-tool/formatIsoDateTime.test.js +0 -26
  179. package/dist/tools/directions-tool/formatIsoDateTime.test.js.map +0 -1
  180. package/dist/tools/forward-geocode-tool/ForwardGeocodeTool.d.ts.map +0 -1
  181. package/dist/tools/forward-geocode-tool/ForwardGeocodeTool.js.map +0 -1
  182. package/dist/tools/forward-geocode-tool/ForwardGeocodeTool.test.d.ts +0 -2
  183. package/dist/tools/forward-geocode-tool/ForwardGeocodeTool.test.d.ts.map +0 -1
  184. package/dist/tools/forward-geocode-tool/ForwardGeocodeTool.test.js +0 -415
  185. package/dist/tools/forward-geocode-tool/ForwardGeocodeTool.test.js.map +0 -1
  186. package/dist/tools/isochrone-tool/IsochroneTool.d.ts.map +0 -1
  187. package/dist/tools/isochrone-tool/IsochroneTool.js.map +0 -1
  188. package/dist/tools/isochrone-tool/IsochroneTool.test.d.ts +0 -2
  189. package/dist/tools/isochrone-tool/IsochroneTool.test.d.ts.map +0 -1
  190. package/dist/tools/isochrone-tool/IsochroneTool.test.js +0 -111
  191. package/dist/tools/isochrone-tool/IsochroneTool.test.js.map +0 -1
  192. package/dist/tools/matrix-tool/MatrixTool.d.ts.map +0 -1
  193. package/dist/tools/matrix-tool/MatrixTool.test.d.ts +0 -2
  194. package/dist/tools/matrix-tool/MatrixTool.test.d.ts.map +0 -1
  195. package/dist/tools/matrix-tool/MatrixTool.test.js +0 -816
  196. package/dist/tools/matrix-tool/MatrixTool.test.js.map +0 -1
  197. package/dist/tools/poi-search-tool/PoiSearchTool.d.ts.map +0 -1
  198. package/dist/tools/poi-search-tool/PoiSearchTool.js.map +0 -1
  199. package/dist/tools/poi-search-tool/PoiSearchTool.test.d.ts +0 -2
  200. package/dist/tools/poi-search-tool/PoiSearchTool.test.d.ts.map +0 -1
  201. package/dist/tools/poi-search-tool/PoiSearchTool.test.js +0 -418
  202. package/dist/tools/poi-search-tool/PoiSearchTool.test.js.map +0 -1
  203. package/dist/tools/reverse-geocode-tool/ReverseGeocodeTool.d.ts.map +0 -1
  204. package/dist/tools/reverse-geocode-tool/ReverseGeocodeTool.js.map +0 -1
  205. package/dist/tools/reverse-geocode-tool/ReverseGeocodeTool.test.d.ts +0 -2
  206. package/dist/tools/reverse-geocode-tool/ReverseGeocodeTool.test.d.ts.map +0 -1
  207. package/dist/tools/reverse-geocode-tool/ReverseGeocodeTool.test.js +0 -403
  208. package/dist/tools/reverse-geocode-tool/ReverseGeocodeTool.test.js.map +0 -1
  209. package/dist/tools/schema-validation.test.d.ts +0 -2
  210. package/dist/tools/schema-validation.test.d.ts.map +0 -1
  211. package/dist/tools/schema-validation.test.js +0 -75
  212. package/dist/tools/schema-validation.test.js.map +0 -1
  213. package/dist/tools/static-map-image-tool/StaticMapImageTool.d.ts.map +0 -1
  214. package/dist/tools/static-map-image-tool/StaticMapImageTool.js.map +0 -1
  215. package/dist/tools/static-map-image-tool/StaticMapImageTool.test.d.ts +0 -2
  216. package/dist/tools/static-map-image-tool/StaticMapImageTool.test.d.ts.map +0 -1
  217. package/dist/tools/static-map-image-tool/StaticMapImageTool.test.js +0 -441
  218. package/dist/tools/static-map-image-tool/StaticMapImageTool.test.js.map +0 -1
  219. package/dist/tools/tool-naming-convention.test.d.ts +0 -2
  220. package/dist/tools/tool-naming-convention.test.d.ts.map +0 -1
  221. package/dist/tools/tool-naming-convention.test.js +0 -43
  222. package/dist/tools/tool-naming-convention.test.js.map +0 -1
  223. package/dist/tools/toolRegistry.d.ts.map +0 -1
  224. package/dist/tools/toolRegistry.js.map +0 -1
  225. package/dist/tools/version-tool/VersionTool.d.ts.map +0 -1
  226. package/dist/tools/version-tool/VersionTool.js.map +0 -1
  227. package/dist/tools/version-tool/VersionTool.test.d.ts +0 -2
  228. package/dist/tools/version-tool/VersionTool.test.d.ts.map +0 -1
  229. package/dist/tools/version-tool/VersionTool.test.js +0 -49
  230. package/dist/tools/version-tool/VersionTool.test.js.map +0 -1
  231. package/dist/utils/requestUtils.d.ts +0 -6
  232. package/dist/utils/requestUtils.d.ts.map +0 -1
  233. package/dist/utils/requestUtils.js +0 -60
  234. package/dist/utils/requestUtils.js.map +0 -1
  235. package/dist/utils/requestUtils.test-helpers.d.ts +0 -3
  236. package/dist/utils/requestUtils.test-helpers.d.ts.map +0 -1
  237. package/dist/utils/requestUtils.test-helpers.js +0 -32
  238. package/dist/utils/requestUtils.test-helpers.js.map +0 -1
  239. package/dist/utils/requestUtils.test.d.ts +0 -2
  240. package/dist/utils/requestUtils.test.d.ts.map +0 -1
  241. package/dist/utils/requestUtils.test.js +0 -115
  242. package/dist/utils/requestUtils.test.js.map +0 -1
  243. package/dist/utils/versionUtils.d.ts.map +0 -1
  244. package/dist/utils/versionUtils.js.map +0 -1
  245. package/dist/version.json +0 -6
  246. /package/dist/{tools → commonjs/tools}/directions-tool/cleanResponseData.d.ts +0 -0
  247. /package/dist/{tools → commonjs/tools}/directions-tool/formatIsoDateTime.d.ts +0 -0
  248. /package/dist/{tools → esm/tools}/directions-tool/cleanResponseData.js +0 -0
  249. /package/dist/{tools → esm/tools}/directions-tool/formatIsoDateTime.js +0 -0
  250. /package/dist/{utils → esm/utils}/versionUtils.d.ts +0 -0
@@ -0,0 +1,98 @@
1
+ import { z } from 'zod';
2
+ import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
3
+ declare const ForwardGeocodeInputSchema: z.ZodObject<{
4
+ q: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
5
+ permanent: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
6
+ autocomplete: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
7
+ bbox: z.ZodOptional<z.ZodObject<{
8
+ minLongitude: z.ZodNumber;
9
+ minLatitude: z.ZodNumber;
10
+ maxLongitude: z.ZodNumber;
11
+ maxLatitude: z.ZodNumber;
12
+ }, "strip", z.ZodTypeAny, {
13
+ minLongitude: number;
14
+ minLatitude: number;
15
+ maxLongitude: number;
16
+ maxLatitude: number;
17
+ }, {
18
+ minLongitude: number;
19
+ minLatitude: number;
20
+ maxLongitude: number;
21
+ maxLatitude: number;
22
+ }>>;
23
+ country: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
24
+ format: z.ZodDefault<z.ZodOptional<z.ZodEnum<["json_string", "formatted_text"]>>>;
25
+ language: z.ZodOptional<z.ZodString>;
26
+ limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
27
+ proximity: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
28
+ longitude: z.ZodNumber;
29
+ latitude: z.ZodNumber;
30
+ }, "strip", z.ZodTypeAny, {
31
+ longitude: number;
32
+ latitude: number;
33
+ }, {
34
+ longitude: number;
35
+ latitude: number;
36
+ }>, z.ZodEffects<z.ZodString, "ip" | {
37
+ longitude: any;
38
+ latitude: any;
39
+ }, string>]>>;
40
+ types: z.ZodOptional<z.ZodArray<z.ZodEnum<["country", "region", "postcode", "district", "place", "locality", "neighborhood", "address"]>, "many">>;
41
+ worldview: z.ZodDefault<z.ZodOptional<z.ZodEnum<["us", "cn", "jp", "in"]>>>;
42
+ }, "strip", z.ZodTypeAny, {
43
+ limit: number;
44
+ format: "json_string" | "formatted_text";
45
+ q: string;
46
+ permanent: boolean;
47
+ autocomplete: boolean;
48
+ worldview: "us" | "cn" | "jp" | "in";
49
+ language?: string | undefined;
50
+ proximity?: "ip" | {
51
+ longitude: number;
52
+ latitude: number;
53
+ } | {
54
+ longitude: any;
55
+ latitude: any;
56
+ } | undefined;
57
+ bbox?: {
58
+ minLongitude: number;
59
+ minLatitude: number;
60
+ maxLongitude: number;
61
+ maxLatitude: number;
62
+ } | undefined;
63
+ country?: string[] | undefined;
64
+ types?: ("country" | "region" | "postcode" | "district" | "place" | "locality" | "neighborhood" | "address")[] | undefined;
65
+ }, {
66
+ q: string;
67
+ language?: string | undefined;
68
+ limit?: number | undefined;
69
+ proximity?: string | {
70
+ longitude: number;
71
+ latitude: number;
72
+ } | undefined;
73
+ bbox?: {
74
+ minLongitude: number;
75
+ minLatitude: number;
76
+ maxLongitude: number;
77
+ maxLatitude: number;
78
+ } | undefined;
79
+ country?: string[] | undefined;
80
+ format?: "json_string" | "formatted_text" | undefined;
81
+ permanent?: boolean | undefined;
82
+ autocomplete?: boolean | undefined;
83
+ types?: ("country" | "region" | "postcode" | "district" | "place" | "locality" | "neighborhood" | "address")[] | undefined;
84
+ worldview?: "us" | "cn" | "jp" | "in" | undefined;
85
+ }>;
86
+ export declare class ForwardGeocodeTool extends MapboxApiBasedTool<typeof ForwardGeocodeInputSchema> {
87
+ private fetch;
88
+ name: string;
89
+ description: string;
90
+ constructor(fetch?: typeof globalThis.fetch);
91
+ private formatGeoJsonToText;
92
+ protected execute(input: z.infer<typeof ForwardGeocodeInputSchema>, accessToken: string): Promise<{
93
+ type: 'text';
94
+ text: string;
95
+ }>;
96
+ }
97
+ export {};
98
+ //# sourceMappingURL=ForwardGeocodeTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ForwardGeocodeTool.d.ts","sourceRoot":"","sources":["../../../../src/tools/forward-geocode-tool/ForwardGeocodeTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAG9D,QAAA,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiI7B,CAAC;AAEH,qBAAa,kBAAmB,SAAQ,kBAAkB,CACxD,OAAO,yBAAyB,CACjC;IAKa,OAAO,CAAC,KAAK;IAJzB,IAAI,SAA0B;IAC9B,WAAW,SACib;gBAExa,KAAK,GAAE,OAAO,UAAU,CAAC,KAAmB;IAIhE,OAAO,CAAC,mBAAmB;cA+CX,OAAO,CACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,EAChD,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAmE3C"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
3
+ import { fetchClient } from '../../utils/fetchRequest.js';
3
4
  const ForwardGeocodeInputSchema = z.object({
4
5
  q: z
5
6
  .string()
@@ -112,10 +113,12 @@ const ForwardGeocodeInputSchema = z.object({
112
113
  .describe('Returns features from a specific regional perspective')
113
114
  });
114
115
  export class ForwardGeocodeTool extends MapboxApiBasedTool {
116
+ fetch;
115
117
  name = 'forward_geocode_tool';
116
118
  description = 'Forward geocode addresses, cities, towns, neighborhoods, districts, postcodes, regions, and countries using Mapbox Geocoding API v6. Converts location name into geographic coordinates. Setting a proximity point helps to bias results towards a specific area for more relevant results. Do not use this tool for geocoding points of interest like businesses, landmarks, historic sites, museums, etc. Supports both JSON and text output formats.';
117
- constructor() {
119
+ constructor(fetch = fetchClient) {
118
120
  super({ inputSchema: ForwardGeocodeInputSchema });
121
+ this.fetch = fetch;
119
122
  }
120
123
  formatGeoJsonToText(geoJsonResponse) {
121
124
  if (!geoJsonResponse ||
@@ -152,11 +155,11 @@ export class ForwardGeocodeTool extends MapboxApiBasedTool {
152
155
  });
153
156
  return results.join('\n\n');
154
157
  }
155
- async execute(input) {
156
- const url = new URL(`${MapboxApiBasedTool.MAPBOX_API_ENDPOINT}search/geocode/v6/forward`);
158
+ async execute(input, accessToken) {
159
+ const url = new URL(`${MapboxApiBasedTool.mapboxApiEndpoint}search/geocode/v6/forward`);
157
160
  // Required parameters
158
161
  url.searchParams.append('q', input.q);
159
- url.searchParams.append('access_token', MapboxApiBasedTool.MAPBOX_ACCESS_TOKEN);
162
+ url.searchParams.append('access_token', accessToken);
160
163
  // Optional parameters
161
164
  url.searchParams.append('permanent', input.permanent.toString());
162
165
  url.searchParams.append('autocomplete', input.autocomplete.toString());
@@ -185,7 +188,7 @@ export class ForwardGeocodeTool extends MapboxApiBasedTool {
185
188
  if (input.types && input.types.length > 0) {
186
189
  url.searchParams.append('types', input.types.join(','));
187
190
  }
188
- const response = await fetch(url.toString());
191
+ const response = await this.fetch(url.toString());
189
192
  if (!response.ok) {
190
193
  throw new Error(`Failed to geocode: ${response.status} ${response.statusText}`);
191
194
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ForwardGeocodeTool.js","sourceRoot":"","sources":["../../../../src/tools/forward-geocode-tool/ForwardGeocodeTool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ import { z } from 'zod';
2
+ import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
3
+ declare const IsochroneInputSchema: z.ZodObject<{
4
+ profile: z.ZodDefault<z.ZodEnum<["mapbox/driving-traffic", "mapbox/driving", "mapbox/cycling", "mapbox/walking"]>>;
5
+ coordinates: z.ZodObject<{
6
+ longitude: z.ZodNumber;
7
+ latitude: z.ZodNumber;
8
+ }, "strip", z.ZodTypeAny, {
9
+ longitude: number;
10
+ latitude: number;
11
+ }, {
12
+ longitude: number;
13
+ latitude: number;
14
+ }>;
15
+ contours_minutes: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
16
+ contours_meters: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
17
+ contours_colors: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
18
+ polygons: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
19
+ denoise: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
20
+ generalize: z.ZodNumber;
21
+ exclude: z.ZodOptional<z.ZodArray<z.ZodEnum<["motorway", "toll", "ferry", "unpaved", "cash_only_tolls"]>, "many">>;
22
+ depart_at: z.ZodOptional<z.ZodString>;
23
+ }, "strip", z.ZodTypeAny, {
24
+ coordinates: {
25
+ longitude: number;
26
+ latitude: number;
27
+ };
28
+ profile: "mapbox/driving-traffic" | "mapbox/driving" | "mapbox/cycling" | "mapbox/walking";
29
+ generalize: number;
30
+ depart_at?: string | undefined;
31
+ exclude?: ("ferry" | "cash_only_tolls" | "toll" | "motorway" | "unpaved")[] | undefined;
32
+ contours_minutes?: number[] | undefined;
33
+ contours_meters?: number[] | undefined;
34
+ contours_colors?: string[] | undefined;
35
+ polygons?: boolean | undefined;
36
+ denoise?: number | undefined;
37
+ }, {
38
+ coordinates: {
39
+ longitude: number;
40
+ latitude: number;
41
+ };
42
+ generalize: number;
43
+ depart_at?: string | undefined;
44
+ exclude?: ("ferry" | "cash_only_tolls" | "toll" | "motorway" | "unpaved")[] | undefined;
45
+ profile?: "mapbox/driving-traffic" | "mapbox/driving" | "mapbox/cycling" | "mapbox/walking" | undefined;
46
+ contours_minutes?: number[] | undefined;
47
+ contours_meters?: number[] | undefined;
48
+ contours_colors?: string[] | undefined;
49
+ polygons?: boolean | undefined;
50
+ denoise?: number | undefined;
51
+ }>;
52
+ export declare class IsochroneTool extends MapboxApiBasedTool<typeof IsochroneInputSchema> {
53
+ name: string;
54
+ description: string;
55
+ private fetch;
56
+ constructor(fetch?: typeof globalThis.fetch);
57
+ protected execute(input: z.infer<typeof IsochroneInputSchema>, accessToken: string): Promise<any>;
58
+ }
59
+ export {};
60
+ //# sourceMappingURL=IsochroneTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsochroneTool.d.ts","sourceRoot":"","sources":["../../../../src/tools/isochrone-tool/IsochroneTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAG9D,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgFxB,CAAC;AAEH,qBAAa,aAAc,SAAQ,kBAAkB,CACnD,OAAO,oBAAoB,CAC5B;IACC,IAAI,SAAoB;IACxB,WAAW,SAIuD;IAElE,OAAO,CAAC,KAAK,CAA0B;gBAE3B,KAAK,GAAE,OAAO,UAAU,CAAC,KAAmB;cAKxC,OAAO,CACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAC3C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,GAAG,CAAC;CA0DhB"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
3
+ import { fetchClient } from '../../utils/fetchRequest.js';
3
4
  const IsochroneInputSchema = z.object({
4
5
  profile: z
5
6
  .enum([
@@ -66,12 +67,14 @@ export class IsochroneTool extends MapboxApiBasedTool {
66
67
  - Show a user how far they can travel in X minutes from their current location
67
68
  - Determine whether a destination is within a certain travel time threshold
68
69
  - Compare travel ranges for different modes of transportation'`;
69
- constructor() {
70
+ fetch;
71
+ constructor(fetch = fetchClient) {
70
72
  super({ inputSchema: IsochroneInputSchema });
73
+ this.fetch = fetch;
71
74
  }
72
- async execute(input) {
73
- const url = new URL(`${MapboxApiBasedTool.MAPBOX_API_ENDPOINT}isochrone/v1/${input.profile}/${input.coordinates.longitude}%2C${input.coordinates.latitude}`);
74
- url.searchParams.append('access_token', MapboxApiBasedTool.MAPBOX_ACCESS_TOKEN);
75
+ async execute(input, accessToken) {
76
+ const url = new URL(`${MapboxApiBasedTool.mapboxApiEndpoint}isochrone/v1/${input.profile}/${input.coordinates.longitude}%2C${input.coordinates.latitude}`);
77
+ url.searchParams.append('access_token', accessToken);
75
78
  if ((!input.contours_minutes || input.contours_minutes.length === 0) &&
76
79
  (!input.contours_meters || input.contours_meters.length === 0)) {
77
80
  throw new Error("At least one of 'contours_minutes' or 'contours_meters' must be provided");
@@ -100,7 +103,7 @@ export class IsochroneTool extends MapboxApiBasedTool {
100
103
  if (input.depart_at) {
101
104
  url.searchParams.append('depart_at', input.depart_at);
102
105
  }
103
- const response = await fetch(url);
106
+ const response = await this.fetch(url);
104
107
  if (!response.ok) {
105
108
  throw new Error(`Failed to calculate isochrones: ${response.status} ${response.statusText}`);
106
109
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsochroneTool.js","sourceRoot":"","sources":["../../../../src/tools/isochrone-tool/IsochroneTool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ import { z } from 'zod';
2
+ import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
3
+ declare const MatrixInputSchema: 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">;
14
+ profile: z.ZodEnum<["driving-traffic", "driving", "walking", "cycling"]>;
15
+ annotations: z.ZodOptional<z.ZodEnum<["duration", "distance", "duration,distance", "distance,duration"]>>;
16
+ approaches: z.ZodOptional<z.ZodString>;
17
+ bearings: z.ZodOptional<z.ZodString>;
18
+ destinations: z.ZodOptional<z.ZodString>;
19
+ sources: z.ZodOptional<z.ZodString>;
20
+ }, "strip", z.ZodTypeAny, {
21
+ coordinates: {
22
+ longitude: number;
23
+ latitude: number;
24
+ }[];
25
+ profile: "driving-traffic" | "driving" | "walking" | "cycling";
26
+ annotations?: "distance" | "duration" | "duration,distance" | "distance,duration" | undefined;
27
+ approaches?: string | undefined;
28
+ bearings?: string | undefined;
29
+ destinations?: string | undefined;
30
+ sources?: string | undefined;
31
+ }, {
32
+ coordinates: {
33
+ longitude: number;
34
+ latitude: number;
35
+ }[];
36
+ profile: "driving-traffic" | "driving" | "walking" | "cycling";
37
+ annotations?: "distance" | "duration" | "duration,distance" | "distance,duration" | undefined;
38
+ approaches?: string | undefined;
39
+ bearings?: string | undefined;
40
+ destinations?: string | undefined;
41
+ sources?: string | undefined;
42
+ }>;
43
+ export declare class MatrixTool extends MapboxApiBasedTool<typeof MatrixInputSchema> {
44
+ name: string;
45
+ description: string;
46
+ private fetch;
47
+ constructor(fetch?: typeof globalThis.fetch);
48
+ protected execute(input: z.infer<typeof MatrixInputSchema>, accessToken: string): Promise<any>;
49
+ }
50
+ export {};
51
+ //# sourceMappingURL=MatrixTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MatrixTool.d.ts","sourceRoot":"","sources":["../../../../src/tools/matrix-tool/MatrixTool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAK9D,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2ErB,CAAC;AAEH,qBAAa,UAAW,SAAQ,kBAAkB,CAAC,OAAO,iBAAiB,CAAC;IAC1E,IAAI,SAAiB;IACrB,WAAW,SACgF;IAE3F,OAAO,CAAC,KAAK,CAA0B;gBAE3B,KAAK,GAAE,OAAO,UAAU,CAAC,KAAmB;cAKxC,OAAO,CACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,EACxC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,GAAG,CAAC;CAyLhB"}
@@ -1,6 +1,7 @@
1
1
  import { URLSearchParams } from 'url';
2
2
  import { z } from 'zod';
3
3
  import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
4
+ import { fetchClient } from '../../utils/fetchRequest.js';
4
5
  // API documentation: https://docs.mapbox.com/api/navigation/matrix/
5
6
  const MatrixInputSchema = z.object({
6
7
  coordinates: z
@@ -62,10 +63,12 @@ const MatrixInputSchema = z.object({
62
63
  export class MatrixTool extends MapboxApiBasedTool {
63
64
  name = 'matrix_tool';
64
65
  description = 'Calculates travel times and distances between multiple points using Mapbox Matrix API.';
65
- constructor() {
66
+ fetch;
67
+ constructor(fetch = fetchClient) {
66
68
  super({ inputSchema: MatrixInputSchema });
69
+ this.fetch = fetch;
67
70
  }
68
- async execute(input) {
71
+ async execute(input, accessToken) {
69
72
  // Validate input based on profile type
70
73
  if (input.profile === 'driving-traffic' && input.coordinates.length > 10) {
71
74
  throw new Error('The driving-traffic profile supports a maximum of 10 coordinate pairs.');
@@ -159,7 +162,7 @@ export class MatrixTool extends MapboxApiBasedTool {
159
162
  .join(';');
160
163
  // Build query parameters
161
164
  const queryParams = new URLSearchParams();
162
- queryParams.append('access_token', MapboxApiBasedTool.MAPBOX_ACCESS_TOKEN);
165
+ queryParams.append('access_token', accessToken);
163
166
  // Add annotations parameter if specified
164
167
  if (input.annotations) {
165
168
  queryParams.append('annotations', input.annotations);
@@ -181,9 +184,9 @@ export class MatrixTool extends MapboxApiBasedTool {
181
184
  queryParams.append('sources', input.sources);
182
185
  }
183
186
  // Construct the URL for the Matrix API request
184
- const url = `${MapboxApiBasedTool.MAPBOX_API_ENDPOINT}directions-matrix/v1/mapbox/${input.profile}/${joined}?${queryParams.toString()}`;
187
+ const url = `${MapboxApiBasedTool.mapboxApiEndpoint}directions-matrix/v1/mapbox/${input.profile}/${joined}?${queryParams.toString()}`;
185
188
  // Make the request
186
- const response = await fetch(url);
189
+ const response = await this.fetch(url);
187
190
  if (!response.ok) {
188
191
  throw new Error(`Request failed with status ${response.status}: ${response.statusText}`);
189
192
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MatrixTool.js","sourceRoot":"","sources":["../../../src/tools/matrix-tool/MatrixTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MatrixTool.js","sourceRoot":"","sources":["../../../../src/tools/matrix-tool/MatrixTool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,119 @@
1
+ import { z } from 'zod';
2
+ import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
3
+ declare const PoiSearchInputSchema: z.ZodObject<{
4
+ q: z.ZodString;
5
+ language: z.ZodOptional<z.ZodString>;
6
+ limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
7
+ proximity: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
8
+ longitude: z.ZodNumber;
9
+ latitude: z.ZodNumber;
10
+ }, "strip", z.ZodTypeAny, {
11
+ longitude: number;
12
+ latitude: number;
13
+ }, {
14
+ longitude: number;
15
+ latitude: number;
16
+ }>, z.ZodEffects<z.ZodString, "ip" | {
17
+ longitude: any;
18
+ latitude: any;
19
+ }, string>]>>;
20
+ bbox: z.ZodOptional<z.ZodObject<{
21
+ minLongitude: z.ZodNumber;
22
+ minLatitude: z.ZodNumber;
23
+ maxLongitude: z.ZodNumber;
24
+ maxLatitude: z.ZodNumber;
25
+ }, "strip", z.ZodTypeAny, {
26
+ minLongitude: number;
27
+ minLatitude: number;
28
+ maxLongitude: number;
29
+ maxLatitude: number;
30
+ }, {
31
+ minLongitude: number;
32
+ minLatitude: number;
33
+ maxLongitude: number;
34
+ maxLatitude: number;
35
+ }>>;
36
+ country: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
37
+ types: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
38
+ poi_category: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
39
+ auto_complete: z.ZodOptional<z.ZodBoolean>;
40
+ eta_type: z.ZodOptional<z.ZodEnum<["navigation"]>>;
41
+ navigation_profile: z.ZodOptional<z.ZodEnum<["driving", "walking", "cycling", "driving-traffic"]>>;
42
+ origin: z.ZodOptional<z.ZodObject<{
43
+ longitude: z.ZodNumber;
44
+ latitude: z.ZodNumber;
45
+ }, "strip", z.ZodTypeAny, {
46
+ longitude: number;
47
+ latitude: number;
48
+ }, {
49
+ longitude: number;
50
+ latitude: number;
51
+ }>>;
52
+ format: z.ZodDefault<z.ZodOptional<z.ZodEnum<["json_string", "formatted_text"]>>>;
53
+ }, "strip", z.ZodTypeAny, {
54
+ limit: number;
55
+ format: "json_string" | "formatted_text";
56
+ q: string;
57
+ language?: string | undefined;
58
+ proximity?: "ip" | {
59
+ longitude: number;
60
+ latitude: number;
61
+ } | {
62
+ longitude: any;
63
+ latitude: any;
64
+ } | undefined;
65
+ bbox?: {
66
+ minLongitude: number;
67
+ minLatitude: number;
68
+ maxLongitude: number;
69
+ maxLatitude: number;
70
+ } | undefined;
71
+ country?: string[] | undefined;
72
+ types?: string[] | undefined;
73
+ poi_category?: string[] | undefined;
74
+ auto_complete?: boolean | undefined;
75
+ eta_type?: "navigation" | undefined;
76
+ navigation_profile?: "driving-traffic" | "driving" | "walking" | "cycling" | undefined;
77
+ origin?: {
78
+ longitude: number;
79
+ latitude: number;
80
+ } | undefined;
81
+ }, {
82
+ q: string;
83
+ language?: string | undefined;
84
+ limit?: number | undefined;
85
+ proximity?: string | {
86
+ longitude: number;
87
+ latitude: number;
88
+ } | undefined;
89
+ bbox?: {
90
+ minLongitude: number;
91
+ minLatitude: number;
92
+ maxLongitude: number;
93
+ maxLatitude: number;
94
+ } | undefined;
95
+ country?: string[] | undefined;
96
+ format?: "json_string" | "formatted_text" | undefined;
97
+ types?: string[] | undefined;
98
+ poi_category?: string[] | undefined;
99
+ auto_complete?: boolean | undefined;
100
+ eta_type?: "navigation" | undefined;
101
+ navigation_profile?: "driving-traffic" | "driving" | "walking" | "cycling" | undefined;
102
+ origin?: {
103
+ longitude: number;
104
+ latitude: number;
105
+ } | undefined;
106
+ }>;
107
+ export declare class PoiSearchTool extends MapboxApiBasedTool<typeof PoiSearchInputSchema> {
108
+ name: string;
109
+ description: string;
110
+ private fetch;
111
+ constructor(fetch?: typeof globalThis.fetch);
112
+ private formatGeoJsonToText;
113
+ protected execute(input: z.infer<typeof PoiSearchInputSchema>, accessToken: string): Promise<{
114
+ type: 'text';
115
+ text: string;
116
+ }>;
117
+ }
118
+ export {};
119
+ //# sourceMappingURL=PoiSearchTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PoiSearchTool.d.ts","sourceRoot":"","sources":["../../../../src/tools/poi-search-tool/PoiSearchTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAG9D,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0HxB,CAAC;AAEH,qBAAa,aAAc,SAAQ,kBAAkB,CACnD,OAAO,oBAAoB,CAC5B;IACC,IAAI,SAAqB;IACzB,WAAW,SACmjB;IAE9jB,OAAO,CAAC,KAAK,CAA0B;gBAE3B,KAAK,GAAE,OAAO,UAAU,CAAC,KAAmB;IAKxD,OAAO,CAAC,mBAAmB;cAsDX,OAAO,CACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAC3C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAoG3C"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
3
+ import { fetchClient } from '../../utils/fetchRequest.js';
3
4
  const PoiSearchInputSchema = z.object({
4
5
  q: z
5
6
  .string()
@@ -111,8 +112,10 @@ const PoiSearchInputSchema = z.object({
111
112
  export class PoiSearchTool extends MapboxApiBasedTool {
112
113
  name = 'poi_search_tool';
113
114
  description = "Find one specific place or brand location by its proper name or unique brand. Use only when the user's query includes a distinct title (e.g., \"The Met\", \"Starbucks Reserve Roastery\") or a brand they want all nearby branches of (e.g., \"Macy's stores near me\"). Do not use for generic place types such as 'museums', 'coffee shops', 'tacos', etc. Setting a proximity point is strongly encouraged for more relevant results. Always try to use a limit of at least 3 in case the user's intended result is not the first result. Supports both JSON and text output formats.";
114
- constructor() {
115
+ fetch;
116
+ constructor(fetch = fetchClient) {
115
117
  super({ inputSchema: PoiSearchInputSchema });
118
+ this.fetch = fetch;
116
119
  }
117
120
  formatGeoJsonToText(geoJsonResponse) {
118
121
  if (!geoJsonResponse ||
@@ -156,12 +159,12 @@ export class PoiSearchTool extends MapboxApiBasedTool {
156
159
  });
157
160
  return results.join('\n\n');
158
161
  }
159
- async execute(input) {
162
+ async execute(input, accessToken) {
160
163
  this.log('info', `PoiSearchTool: Starting search with input: ${JSON.stringify(input)}`);
161
- const url = new URL(`${MapboxApiBasedTool.MAPBOX_API_ENDPOINT}search/searchbox/v1/forward`);
164
+ const url = new URL(`${MapboxApiBasedTool.mapboxApiEndpoint}search/searchbox/v1/forward`);
162
165
  // Required parameters
163
166
  url.searchParams.append('q', input.q);
164
- url.searchParams.append('access_token', MapboxApiBasedTool.MAPBOX_ACCESS_TOKEN);
167
+ url.searchParams.append('access_token', accessToken);
165
168
  // Optional parameters
166
169
  if (input.language) {
167
170
  url.searchParams.append('language', input.language);
@@ -204,8 +207,8 @@ export class PoiSearchTool extends MapboxApiBasedTool {
204
207
  const { longitude, latitude } = input.origin;
205
208
  url.searchParams.append('origin', `${longitude},${latitude}`);
206
209
  }
207
- this.log('info', `PoiSearchTool: Fetching from URL: ${url.toString().replace(MapboxApiBasedTool.MAPBOX_ACCESS_TOKEN, '[REDACTED]')}`);
208
- const response = await fetch(url.toString());
210
+ this.log('info', `PoiSearchTool: Fetching from URL: ${url.toString().replace(accessToken, '[REDACTED]')}`);
211
+ const response = await this.fetch(url.toString());
209
212
  if (!response.ok) {
210
213
  const errorBody = await response.text();
211
214
  this.log('error', `PoiSearchTool: API Error - Status: ${response.status}, Body: ${errorBody}`);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PoiSearchTool.js","sourceRoot":"","sources":["../../../../src/tools/poi-search-tool/PoiSearchTool.ts"],"names":[],"mappings":"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"}