@unclick/mcp-server 0.1.1 → 0.2.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 (444) hide show
  1. package/dist/abn-tool.d.ts +3 -0
  2. package/dist/abn-tool.d.ts.map +1 -0
  3. package/dist/abn-tool.js +89 -0
  4. package/dist/abn-tool.js.map +1 -0
  5. package/dist/abuseipdb-tool.d.ts +4 -0
  6. package/dist/abuseipdb-tool.d.ts.map +1 -0
  7. package/dist/abuseipdb-tool.js +129 -0
  8. package/dist/abuseipdb-tool.js.map +1 -0
  9. package/dist/alphavantage-tool.d.ts +7 -0
  10. package/dist/alphavantage-tool.d.ts.map +1 -0
  11. package/dist/alphavantage-tool.js +208 -0
  12. package/dist/alphavantage-tool.js.map +1 -0
  13. package/dist/amber-tool.d.ts +4 -0
  14. package/dist/amber-tool.d.ts.map +1 -0
  15. package/dist/amber-tool.js +114 -0
  16. package/dist/amber-tool.js.map +1 -0
  17. package/dist/australiapost-tool.d.ts +4 -0
  18. package/dist/australiapost-tool.d.ts.map +1 -0
  19. package/dist/australiapost-tool.js +130 -0
  20. package/dist/australiapost-tool.js.map +1 -0
  21. package/dist/bandsintown-tool.d.ts +4 -0
  22. package/dist/bandsintown-tool.d.ts.map +1 -0
  23. package/dist/bandsintown-tool.js +76 -0
  24. package/dist/bandsintown-tool.js.map +1 -0
  25. package/dist/bungie-tool.d.ts +5 -0
  26. package/dist/bungie-tool.d.ts.map +1 -0
  27. package/dist/bungie-tool.js +138 -0
  28. package/dist/bungie-tool.js.map +1 -0
  29. package/dist/calculator-tool.d.ts +6 -0
  30. package/dist/calculator-tool.d.ts.map +1 -0
  31. package/dist/calculator-tool.js +196 -0
  32. package/dist/calculator-tool.js.map +1 -0
  33. package/dist/carboninterface-tool.d.ts +5 -0
  34. package/dist/carboninterface-tool.d.ts.map +1 -0
  35. package/dist/carboninterface-tool.js +143 -0
  36. package/dist/carboninterface-tool.js.map +1 -0
  37. package/dist/chessdotcom-tool.d.ts +6 -0
  38. package/dist/chessdotcom-tool.d.ts.map +1 -0
  39. package/dist/chessdotcom-tool.js +183 -0
  40. package/dist/chessdotcom-tool.js.map +1 -0
  41. package/dist/client.js +1 -1
  42. package/dist/clockify-tool.d.ts +2 -0
  43. package/dist/clockify-tool.d.ts.map +1 -0
  44. package/dist/clockify-tool.js +155 -0
  45. package/dist/clockify-tool.js.map +1 -0
  46. package/dist/coingecko-tool.d.ts +7 -0
  47. package/dist/coingecko-tool.d.ts.map +1 -0
  48. package/dist/coingecko-tool.js +176 -0
  49. package/dist/coingecko-tool.js.map +1 -0
  50. package/dist/coinmarketcap-tool.d.ts +6 -0
  51. package/dist/coinmarketcap-tool.d.ts.map +1 -0
  52. package/dist/coinmarketcap-tool.js +168 -0
  53. package/dist/coinmarketcap-tool.js.map +1 -0
  54. package/dist/color-tool.d.ts +6 -0
  55. package/dist/color-tool.d.ts.map +1 -0
  56. package/dist/color-tool.js +391 -0
  57. package/dist/color-tool.js.map +1 -0
  58. package/dist/connectors/bluesky.d.ts +3 -0
  59. package/dist/connectors/bluesky.d.ts.map +1 -0
  60. package/dist/connectors/bluesky.js +26 -0
  61. package/dist/connectors/bluesky.js.map +1 -0
  62. package/dist/connectors/discogs.d.ts +3 -0
  63. package/dist/connectors/discogs.d.ts.map +1 -0
  64. package/dist/connectors/discogs.js +18 -0
  65. package/dist/connectors/discogs.js.map +1 -0
  66. package/dist/connectors/discord.d.ts +3 -0
  67. package/dist/connectors/discord.d.ts.map +1 -0
  68. package/dist/connectors/discord.js +18 -0
  69. package/dist/connectors/discord.js.map +1 -0
  70. package/dist/connectors/guardian.d.ts +3 -0
  71. package/dist/connectors/guardian.d.ts.map +1 -0
  72. package/dist/connectors/guardian.js +18 -0
  73. package/dist/connectors/guardian.js.map +1 -0
  74. package/dist/connectors/index.d.ts +39 -0
  75. package/dist/connectors/index.d.ts.map +1 -0
  76. package/dist/connectors/index.js +23 -0
  77. package/dist/connectors/index.js.map +1 -0
  78. package/dist/connectors/lastfm.d.ts +3 -0
  79. package/dist/connectors/lastfm.d.ts.map +1 -0
  80. package/dist/connectors/lastfm.js +18 -0
  81. package/dist/connectors/lastfm.js.map +1 -0
  82. package/dist/connectors/mastodon.d.ts +3 -0
  83. package/dist/connectors/mastodon.d.ts.map +1 -0
  84. package/dist/connectors/mastodon.js +26 -0
  85. package/dist/connectors/mastodon.js.map +1 -0
  86. package/dist/connectors/newsapi.d.ts +3 -0
  87. package/dist/connectors/newsapi.d.ts.map +1 -0
  88. package/dist/connectors/newsapi.js +18 -0
  89. package/dist/connectors/newsapi.js.map +1 -0
  90. package/dist/connectors/ptv.d.ts +3 -0
  91. package/dist/connectors/ptv.d.ts.map +1 -0
  92. package/dist/connectors/ptv.js +26 -0
  93. package/dist/connectors/ptv.js.map +1 -0
  94. package/dist/connectors/reddit.d.ts +3 -0
  95. package/dist/connectors/reddit.d.ts.map +1 -0
  96. package/dist/connectors/reddit.js +28 -0
  97. package/dist/connectors/reddit.js.map +1 -0
  98. package/dist/connectors/seatgeek.d.ts +3 -0
  99. package/dist/connectors/seatgeek.d.ts.map +1 -0
  100. package/dist/connectors/seatgeek.js +18 -0
  101. package/dist/connectors/seatgeek.js.map +1 -0
  102. package/dist/connectors/shopify.d.ts +3 -0
  103. package/dist/connectors/shopify.d.ts.map +1 -0
  104. package/dist/connectors/shopify.js +38 -0
  105. package/dist/connectors/shopify.js.map +1 -0
  106. package/dist/connectors/slack.d.ts +3 -0
  107. package/dist/connectors/slack.d.ts.map +1 -0
  108. package/dist/connectors/slack.js +18 -0
  109. package/dist/connectors/slack.js.map +1 -0
  110. package/dist/connectors/telegram.d.ts +3 -0
  111. package/dist/connectors/telegram.d.ts.map +1 -0
  112. package/dist/connectors/telegram.js +18 -0
  113. package/dist/connectors/telegram.js.map +1 -0
  114. package/dist/connectors/ticketmaster.d.ts +3 -0
  115. package/dist/connectors/ticketmaster.d.ts.map +1 -0
  116. package/dist/connectors/ticketmaster.js +18 -0
  117. package/dist/connectors/ticketmaster.js.map +1 -0
  118. package/dist/connectors/twitch.d.ts +3 -0
  119. package/dist/connectors/twitch.d.ts.map +1 -0
  120. package/dist/connectors/twitch.js +26 -0
  121. package/dist/connectors/twitch.js.map +1 -0
  122. package/dist/connectors/xero.d.ts +3 -0
  123. package/dist/connectors/xero.d.ts.map +1 -0
  124. package/dist/connectors/xero.js +36 -0
  125. package/dist/connectors/xero.js.map +1 -0
  126. package/dist/connectors/yelp.d.ts +3 -0
  127. package/dist/connectors/yelp.d.ts.map +1 -0
  128. package/dist/connectors/yelp.js +18 -0
  129. package/dist/connectors/yelp.js.map +1 -0
  130. package/dist/datetime-tool.d.ts +8 -0
  131. package/dist/datetime-tool.d.ts.map +1 -0
  132. package/dist/datetime-tool.js +263 -0
  133. package/dist/datetime-tool.js.map +1 -0
  134. package/dist/deezer-tool.d.ts +7 -0
  135. package/dist/deezer-tool.d.ts.map +1 -0
  136. package/dist/deezer-tool.js +142 -0
  137. package/dist/deezer-tool.js.map +1 -0
  138. package/dist/discogs-tool.d.ts +7 -0
  139. package/dist/discogs-tool.d.ts.map +1 -0
  140. package/dist/discogs-tool.js +138 -0
  141. package/dist/discogs-tool.js.map +1 -0
  142. package/dist/domain-tool.d.ts +4 -0
  143. package/dist/domain-tool.d.ts.map +1 -0
  144. package/dist/domain-tool.js +155 -0
  145. package/dist/domain-tool.js.map +1 -0
  146. package/dist/ebird-tool.d.ts +5 -0
  147. package/dist/ebird-tool.d.ts.map +1 -0
  148. package/dist/ebird-tool.js +128 -0
  149. package/dist/ebird-tool.js.map +1 -0
  150. package/dist/email-tool.d.ts +8 -0
  151. package/dist/email-tool.d.ts.map +1 -0
  152. package/dist/email-tool.js +376 -0
  153. package/dist/email-tool.js.map +1 -0
  154. package/dist/espn-tool.d.ts +8 -0
  155. package/dist/espn-tool.d.ts.map +1 -0
  156. package/dist/espn-tool.js +147 -0
  157. package/dist/espn-tool.js.map +1 -0
  158. package/dist/eventbrite-tool.d.ts +7 -0
  159. package/dist/eventbrite-tool.d.ts.map +1 -0
  160. package/dist/eventbrite-tool.js +134 -0
  161. package/dist/eventbrite-tool.js.map +1 -0
  162. package/dist/feedly-tool.d.ts +2 -0
  163. package/dist/feedly-tool.d.ts.map +1 -0
  164. package/dist/feedly-tool.js +152 -0
  165. package/dist/feedly-tool.js.map +1 -0
  166. package/dist/foursquare-tool.d.ts +6 -0
  167. package/dist/foursquare-tool.d.ts.map +1 -0
  168. package/dist/foursquare-tool.js +102 -0
  169. package/dist/foursquare-tool.js.map +1 -0
  170. package/dist/fpl-tool.d.ts +8 -0
  171. package/dist/fpl-tool.d.ts.map +1 -0
  172. package/dist/fpl-tool.js +195 -0
  173. package/dist/fpl-tool.js.map +1 -0
  174. package/dist/genius-tool.d.ts +5 -0
  175. package/dist/genius-tool.d.ts.map +1 -0
  176. package/dist/genius-tool.js +62 -0
  177. package/dist/genius-tool.js.map +1 -0
  178. package/dist/guardian-tool.d.ts +6 -0
  179. package/dist/guardian-tool.d.ts.map +1 -0
  180. package/dist/guardian-tool.js +124 -0
  181. package/dist/guardian-tool.js.map +1 -0
  182. package/dist/hackernews-tool.d.ts +8 -0
  183. package/dist/hackernews-tool.d.ts.map +1 -0
  184. package/dist/hackernews-tool.js +96 -0
  185. package/dist/hackernews-tool.js.map +1 -0
  186. package/dist/haveibeenpwned-tool.d.ts +4 -0
  187. package/dist/haveibeenpwned-tool.d.ts.map +1 -0
  188. package/dist/haveibeenpwned-tool.js +162 -0
  189. package/dist/haveibeenpwned-tool.js.map +1 -0
  190. package/dist/hunter-tool.d.ts +4 -0
  191. package/dist/hunter-tool.d.ts.map +1 -0
  192. package/dist/hunter-tool.js +148 -0
  193. package/dist/hunter-tool.js.map +1 -0
  194. package/dist/instapaper-tool.d.ts +2 -0
  195. package/dist/instapaper-tool.d.ts.map +1 -0
  196. package/dist/instapaper-tool.js +257 -0
  197. package/dist/instapaper-tool.js.map +1 -0
  198. package/dist/ipapi-tool.d.ts +3 -0
  199. package/dist/ipapi-tool.d.ts.map +1 -0
  200. package/dist/ipapi-tool.js +78 -0
  201. package/dist/ipapi-tool.js.map +1 -0
  202. package/dist/ipaustralia-tool.d.ts +4 -0
  203. package/dist/ipaustralia-tool.d.ts.map +1 -0
  204. package/dist/ipaustralia-tool.js +138 -0
  205. package/dist/ipaustralia-tool.js.map +1 -0
  206. package/dist/lastfm-tool.d.ts +8 -0
  207. package/dist/lastfm-tool.d.ts.map +1 -0
  208. package/dist/lastfm-tool.js +169 -0
  209. package/dist/lastfm-tool.js.map +1 -0
  210. package/dist/lego-tool.d.ts +8 -0
  211. package/dist/lego-tool.d.ts.map +1 -0
  212. package/dist/lego-tool.js +235 -0
  213. package/dist/lego-tool.js.map +1 -0
  214. package/dist/lichess-tool.d.ts +6 -0
  215. package/dist/lichess-tool.d.ts.map +1 -0
  216. package/dist/lichess-tool.js +211 -0
  217. package/dist/lichess-tool.js.map +1 -0
  218. package/dist/meal-tool.d.ts +8 -0
  219. package/dist/meal-tool.d.ts.map +1 -0
  220. package/dist/meal-tool.js +143 -0
  221. package/dist/meal-tool.js.map +1 -0
  222. package/dist/monica-tool.d.ts +2 -0
  223. package/dist/monica-tool.d.ts.map +1 -0
  224. package/dist/monica-tool.js +160 -0
  225. package/dist/monica-tool.js.map +1 -0
  226. package/dist/musicbrainz-tool.d.ts +6 -0
  227. package/dist/musicbrainz-tool.d.ts.map +1 -0
  228. package/dist/musicbrainz-tool.js +65 -0
  229. package/dist/musicbrainz-tool.js.map +1 -0
  230. package/dist/nasa-tool.d.ts +6 -0
  231. package/dist/nasa-tool.d.ts.map +1 -0
  232. package/dist/nasa-tool.js +158 -0
  233. package/dist/nasa-tool.js.map +1 -0
  234. package/dist/newsapi-tool.d.ts +4 -0
  235. package/dist/newsapi-tool.d.ts.map +1 -0
  236. package/dist/newsapi-tool.js +108 -0
  237. package/dist/newsapi-tool.js.map +1 -0
  238. package/dist/notion-tool.d.ts +2 -0
  239. package/dist/notion-tool.d.ts.map +1 -0
  240. package/dist/notion-tool.js +167 -0
  241. package/dist/notion-tool.js.map +1 -0
  242. package/dist/numbers-tool.d.ts +3 -0
  243. package/dist/numbers-tool.d.ts.map +1 -0
  244. package/dist/numbers-tool.js +47 -0
  245. package/dist/numbers-tool.js.map +1 -0
  246. package/dist/nvd-tool.d.ts +4 -0
  247. package/dist/nvd-tool.d.ts.map +1 -0
  248. package/dist/nvd-tool.js +150 -0
  249. package/dist/nvd-tool.js.map +1 -0
  250. package/dist/omdb-tool.d.ts +4 -0
  251. package/dist/omdb-tool.d.ts.map +1 -0
  252. package/dist/omdb-tool.js +62 -0
  253. package/dist/omdb-tool.js.map +1 -0
  254. package/dist/openaq-tool.d.ts +5 -0
  255. package/dist/openaq-tool.d.ts.map +1 -0
  256. package/dist/openaq-tool.js +141 -0
  257. package/dist/openaq-tool.js.map +1 -0
  258. package/dist/openexchangerates-tool.d.ts +5 -0
  259. package/dist/openexchangerates-tool.d.ts.map +1 -0
  260. package/dist/openexchangerates-tool.js +101 -0
  261. package/dist/openexchangerates-tool.js.map +1 -0
  262. package/dist/openf1-tool.d.ts +9 -0
  263. package/dist/openf1-tool.d.ts.map +1 -0
  264. package/dist/openf1-tool.js +194 -0
  265. package/dist/openf1-tool.js.map +1 -0
  266. package/dist/openfoodfacts-tool.d.ts +5 -0
  267. package/dist/openfoodfacts-tool.d.ts.map +1 -0
  268. package/dist/openfoodfacts-tool.js +106 -0
  269. package/dist/openfoodfacts-tool.js.map +1 -0
  270. package/dist/openlibrary-tool.d.ts +7 -0
  271. package/dist/openlibrary-tool.d.ts.map +1 -0
  272. package/dist/openlibrary-tool.js +67 -0
  273. package/dist/openlibrary-tool.js.map +1 -0
  274. package/dist/openmeteo-tool.d.ts +4 -0
  275. package/dist/openmeteo-tool.d.ts.map +1 -0
  276. package/dist/openmeteo-tool.js +160 -0
  277. package/dist/openmeteo-tool.js.map +1 -0
  278. package/dist/pandascore-tool.d.ts +6 -0
  279. package/dist/pandascore-tool.d.ts.map +1 -0
  280. package/dist/pandascore-tool.js +239 -0
  281. package/dist/pandascore-tool.js.map +1 -0
  282. package/dist/podcastindex-tool.d.ts +7 -0
  283. package/dist/podcastindex-tool.d.ts.map +1 -0
  284. package/dist/podcastindex-tool.js +98 -0
  285. package/dist/podcastindex-tool.js.map +1 -0
  286. package/dist/ptv-tool.d.ts +6 -0
  287. package/dist/ptv-tool.d.ts.map +1 -0
  288. package/dist/ptv-tool.js +95 -0
  289. package/dist/ptv-tool.js.map +1 -0
  290. package/dist/radiobrowser-tool.d.ts +7 -0
  291. package/dist/radiobrowser-tool.d.ts.map +1 -0
  292. package/dist/radiobrowser-tool.js +125 -0
  293. package/dist/radiobrowser-tool.js.map +1 -0
  294. package/dist/raindrop-tool.d.ts +2 -0
  295. package/dist/raindrop-tool.d.ts.map +1 -0
  296. package/dist/raindrop-tool.js +137 -0
  297. package/dist/raindrop-tool.js.map +1 -0
  298. package/dist/random-tool.d.ts +9 -0
  299. package/dist/random-tool.d.ts.map +1 -0
  300. package/dist/random-tool.js +198 -0
  301. package/dist/random-tool.js.map +1 -0
  302. package/dist/rawg-tool.d.ts +7 -0
  303. package/dist/rawg-tool.d.ts.map +1 -0
  304. package/dist/rawg-tool.js +172 -0
  305. package/dist/rawg-tool.js.map +1 -0
  306. package/dist/readwise-tool.d.ts +2 -0
  307. package/dist/readwise-tool.d.ts.map +1 -0
  308. package/dist/readwise-tool.js +133 -0
  309. package/dist/readwise-tool.js.map +1 -0
  310. package/dist/resend-tool.d.ts +4 -0
  311. package/dist/resend-tool.d.ts.map +1 -0
  312. package/dist/resend-tool.js +133 -0
  313. package/dist/resend-tool.js.map +1 -0
  314. package/dist/restcountries-tool.d.ts +7 -0
  315. package/dist/restcountries-tool.d.ts.map +1 -0
  316. package/dist/restcountries-tool.js +141 -0
  317. package/dist/restcountries-tool.js.map +1 -0
  318. package/dist/riot-tool.d.ts +6 -0
  319. package/dist/riot-tool.d.ts.map +1 -0
  320. package/dist/riot-tool.js +166 -0
  321. package/dist/riot-tool.js.map +1 -0
  322. package/dist/seatgeek-tool.d.ts +7 -0
  323. package/dist/seatgeek-tool.d.ts.map +1 -0
  324. package/dist/seatgeek-tool.js +144 -0
  325. package/dist/seatgeek-tool.js.map +1 -0
  326. package/dist/sendle-tool.d.ts +4 -0
  327. package/dist/sendle-tool.d.ts.map +1 -0
  328. package/dist/sendle-tool.js +146 -0
  329. package/dist/sendle-tool.js.map +1 -0
  330. package/dist/server.d.ts.map +1 -1
  331. package/dist/server.js +114 -1825
  332. package/dist/server.js.map +1 -1
  333. package/dist/setlistfm-tool.d.ts +5 -0
  334. package/dist/setlistfm-tool.d.ts.map +1 -0
  335. package/dist/setlistfm-tool.js +89 -0
  336. package/dist/setlistfm-tool.js.map +1 -0
  337. package/dist/shodan-tool.d.ts +4 -0
  338. package/dist/shodan-tool.d.ts.map +1 -0
  339. package/dist/shodan-tool.js +139 -0
  340. package/dist/shodan-tool.js.map +1 -0
  341. package/dist/sleeper-tool.d.ts +7 -0
  342. package/dist/sleeper-tool.d.ts.map +1 -0
  343. package/dist/sleeper-tool.js +147 -0
  344. package/dist/sleeper-tool.js.map +1 -0
  345. package/dist/splitwise-tool.d.ts +2 -0
  346. package/dist/splitwise-tool.d.ts.map +1 -0
  347. package/dist/splitwise-tool.js +133 -0
  348. package/dist/splitwise-tool.js.map +1 -0
  349. package/dist/supercell-tool.d.ts +8 -0
  350. package/dist/supercell-tool.d.ts.map +1 -0
  351. package/dist/supercell-tool.js +258 -0
  352. package/dist/supercell-tool.js.map +1 -0
  353. package/dist/tab-tool.d.ts +4 -0
  354. package/dist/tab-tool.d.ts.map +1 -0
  355. package/dist/tab-tool.js +128 -0
  356. package/dist/tab-tool.js.map +1 -0
  357. package/dist/text-tool.d.ts +8 -0
  358. package/dist/text-tool.d.ts.map +1 -0
  359. package/dist/text-tool.js +190 -0
  360. package/dist/text-tool.js.map +1 -0
  361. package/dist/thelott-tool.d.ts +3 -0
  362. package/dist/thelott-tool.d.ts.map +1 -0
  363. package/dist/thelott-tool.js +93 -0
  364. package/dist/thelott-tool.js.map +1 -0
  365. package/dist/ticketmaster-tool.d.ts +6 -0
  366. package/dist/ticketmaster-tool.d.ts.map +1 -0
  367. package/dist/ticketmaster-tool.js +140 -0
  368. package/dist/ticketmaster-tool.js.map +1 -0
  369. package/dist/tmdb-tool.d.ts +9 -0
  370. package/dist/tmdb-tool.d.ts.map +1 -0
  371. package/dist/tmdb-tool.js +204 -0
  372. package/dist/tmdb-tool.js.map +1 -0
  373. package/dist/toggl-tool.d.ts +5 -0
  374. package/dist/toggl-tool.d.ts.map +1 -0
  375. package/dist/toggl-tool.js +203 -0
  376. package/dist/toggl-tool.js.map +1 -0
  377. package/dist/toilets-tool.d.ts +3 -0
  378. package/dist/toilets-tool.d.ts.map +1 -0
  379. package/dist/toilets-tool.js +260 -0
  380. package/dist/toilets-tool.js.map +1 -0
  381. package/dist/tomorrowio-tool.d.ts +4 -0
  382. package/dist/tomorrowio-tool.d.ts.map +1 -0
  383. package/dist/tomorrowio-tool.js +114 -0
  384. package/dist/tomorrowio-tool.js.map +1 -0
  385. package/dist/tool-wiring.d.ts +7370 -0
  386. package/dist/tool-wiring.d.ts.map +1 -0
  387. package/dist/tool-wiring.js +6068 -0
  388. package/dist/tool-wiring.js.map +1 -0
  389. package/dist/trivia-tool.d.ts +3 -0
  390. package/dist/trivia-tool.d.ts.map +1 -0
  391. package/dist/trivia-tool.js +91 -0
  392. package/dist/trivia-tool.js.map +1 -0
  393. package/dist/trove-tool.d.ts +4 -0
  394. package/dist/trove-tool.d.ts.map +1 -0
  395. package/dist/trove-tool.js +121 -0
  396. package/dist/trove-tool.js.map +1 -0
  397. package/dist/twitch-tool.d.ts +8 -0
  398. package/dist/twitch-tool.d.ts.map +1 -0
  399. package/dist/twitch-tool.js +188 -0
  400. package/dist/twitch-tool.js.map +1 -0
  401. package/dist/unit-converter-tool.d.ts +8 -0
  402. package/dist/unit-converter-tool.d.ts.map +1 -0
  403. package/dist/unit-converter-tool.js +176 -0
  404. package/dist/unit-converter-tool.js.map +1 -0
  405. package/dist/untappd-tool.d.ts +6 -0
  406. package/dist/untappd-tool.d.ts.map +1 -0
  407. package/dist/untappd-tool.js +193 -0
  408. package/dist/untappd-tool.js.map +1 -0
  409. package/dist/urlscan-tool.d.ts +4 -0
  410. package/dist/urlscan-tool.d.ts.map +1 -0
  411. package/dist/urlscan-tool.js +154 -0
  412. package/dist/urlscan-tool.js.map +1 -0
  413. package/dist/usgs-tool.d.ts +5 -0
  414. package/dist/usgs-tool.d.ts.map +1 -0
  415. package/dist/usgs-tool.js +140 -0
  416. package/dist/usgs-tool.js.map +1 -0
  417. package/dist/vault-bridge.d.ts +16 -0
  418. package/dist/vault-bridge.d.ts.map +1 -0
  419. package/dist/vault-bridge.js +139 -0
  420. package/dist/vault-bridge.js.map +1 -0
  421. package/dist/vercel-tool.d.ts +6 -0
  422. package/dist/vercel-tool.d.ts.map +1 -0
  423. package/dist/vercel-tool.js +202 -0
  424. package/dist/vercel-tool.js.map +1 -0
  425. package/dist/virustotal-tool.d.ts +5 -0
  426. package/dist/virustotal-tool.d.ts.map +1 -0
  427. package/dist/virustotal-tool.js +154 -0
  428. package/dist/virustotal-tool.js.map +1 -0
  429. package/dist/willyweather-tool.d.ts +4 -0
  430. package/dist/willyweather-tool.d.ts.map +1 -0
  431. package/dist/willyweather-tool.js +128 -0
  432. package/dist/willyweather-tool.js.map +1 -0
  433. package/dist/wise-tool.d.ts +5 -0
  434. package/dist/wise-tool.d.ts.map +1 -0
  435. package/dist/wise-tool.js +129 -0
  436. package/dist/wise-tool.js.map +1 -0
  437. package/dist/xero-tool.d.ts.map +1 -1
  438. package/dist/xero-tool.js +40 -35
  439. package/dist/xero-tool.js.map +1 -1
  440. package/dist/yelp-tool.d.ts +6 -0
  441. package/dist/yelp-tool.d.ts.map +1 -0
  442. package/dist/yelp-tool.js +150 -0
  443. package/dist/yelp-tool.js.map +1 -0
  444. package/package.json +5 -1
@@ -0,0 +1,376 @@
1
+ // ─── Universal Email Tool ─────────────────────────────────────────────────────
2
+ // Sending via Nodemailer (SMTP) + reading/managing via node-imap (IMAP).
3
+ // Credentials fall back to SMTP_USER/SMTP_PASS and IMAP_USER/IMAP_PASS env vars.
4
+ import nodemailer from "nodemailer";
5
+ import Imap from "imap";
6
+ // ─── SMTP helpers ─────────────────────────────────────────────────────────────
7
+ function getSmtpArgs(args) {
8
+ const smtp_host = String(args.smtp_host ?? process.env.SMTP_HOST ?? "").trim();
9
+ const smtp_user = String(args.smtp_user ?? process.env.SMTP_USER ?? "").trim();
10
+ const smtp_pass = String(args.smtp_pass ?? process.env.SMTP_PASS ?? "").trim();
11
+ const smtp_port = Number(args.smtp_port ?? process.env.SMTP_PORT ?? 587);
12
+ if (!smtp_host)
13
+ throw new Error("smtp_host is required (or set SMTP_HOST env).");
14
+ if (!smtp_user)
15
+ throw new Error("smtp_user is required (or set SMTP_USER env).");
16
+ if (!smtp_pass)
17
+ throw new Error("smtp_pass is required (or set SMTP_PASS env).");
18
+ return { smtp_host, smtp_port, smtp_user, smtp_pass };
19
+ }
20
+ // ─── IMAP helpers ─────────────────────────────────────────────────────────────
21
+ function getImapArgs(args) {
22
+ const imap_host = String(args.imap_host ?? process.env.IMAP_HOST ?? "").trim();
23
+ const imap_user = String(args.imap_user ?? process.env.IMAP_USER ?? "").trim();
24
+ const imap_pass = String(args.imap_pass ?? process.env.IMAP_PASS ?? "").trim();
25
+ const imap_port = Number(args.imap_port ?? process.env.IMAP_PORT ?? 993);
26
+ const imap_tls = args.imap_tls !== false; // default true
27
+ if (!imap_host)
28
+ throw new Error("imap_host is required (or set IMAP_HOST env).");
29
+ if (!imap_user)
30
+ throw new Error("imap_user is required (or set IMAP_USER env).");
31
+ if (!imap_pass)
32
+ throw new Error("imap_pass is required (or set IMAP_PASS env).");
33
+ return { imap_host, imap_user, imap_pass, imap_port, imap_tls };
34
+ }
35
+ function makeImap(cfg) {
36
+ return new Imap({
37
+ user: cfg.imap_user,
38
+ password: cfg.imap_pass,
39
+ host: cfg.imap_host,
40
+ port: cfg.imap_port ?? 993,
41
+ tls: cfg.imap_tls ?? true,
42
+ tlsOptions: { rejectUnauthorized: false },
43
+ authTimeout: 10000,
44
+ connTimeout: 15000,
45
+ });
46
+ }
47
+ function imapConnect(imap) {
48
+ return new Promise((resolve, reject) => {
49
+ imap.once("ready", () => resolve());
50
+ imap.once("error", (err) => reject(err));
51
+ imap.once("end", () => reject(new Error("IMAP connection ended unexpectedly.")));
52
+ imap.connect();
53
+ });
54
+ }
55
+ function imapOpenBox(imap, folder, readOnly = false) {
56
+ return new Promise((resolve, reject) => {
57
+ imap.openBox(folder, readOnly, (err, box) => {
58
+ if (err)
59
+ reject(err);
60
+ else
61
+ resolve(box);
62
+ });
63
+ });
64
+ }
65
+ function imapFetchMessages(imap, source, opts) {
66
+ return new Promise((resolve, reject) => {
67
+ const messages = [];
68
+ let fetch;
69
+ try {
70
+ fetch = imap.fetch(source, opts);
71
+ }
72
+ catch (err) {
73
+ return reject(err);
74
+ }
75
+ fetch.on("message", (msg, seqno) => {
76
+ const message = { uid: seqno };
77
+ const bodyChunks = [];
78
+ msg.on("body", (stream) => {
79
+ stream.on("data", (chunk) => bodyChunks.push(chunk));
80
+ stream.on("end", () => {
81
+ const raw = Buffer.concat(bodyChunks).toString("utf8");
82
+ // Extract key headers from raw message
83
+ const getHeader = (name) => {
84
+ const match = raw.match(new RegExp(`^${name}:\\s*(.+)`, "im"));
85
+ return match ? match[1].trim() : "";
86
+ };
87
+ message.subject = message.subject || getHeader("Subject");
88
+ message.from = message.from || getHeader("From");
89
+ message.to = message.to || getHeader("To");
90
+ message.date = message.date || getHeader("Date");
91
+ // Include a snippet of the body (strip headers)
92
+ const bodyStart = raw.indexOf("\r\n\r\n");
93
+ if (bodyStart !== -1) {
94
+ message.body = raw.slice(bodyStart + 4, bodyStart + 500).trim() || undefined;
95
+ }
96
+ });
97
+ });
98
+ msg.once("attributes", (attrs) => {
99
+ message.uid = attrs.uid ?? seqno;
100
+ message.flags = (attrs.flags ?? []);
101
+ // Also parse date/subject from envelope if available
102
+ const env = attrs.envelope;
103
+ if (env) {
104
+ message.subject = message.subject || String(env.subject ?? "");
105
+ message.date = message.date || String(env.date ?? "");
106
+ const fromArr = env.from;
107
+ if (fromArr?.[0]) {
108
+ message.from = message.from ||
109
+ `${fromArr[0].name ?? ""} <${fromArr[0].mailbox}@${fromArr[0].host}>`.trim();
110
+ }
111
+ const toArr = env.to;
112
+ if (toArr?.[0]) {
113
+ message.to = message.to ||
114
+ `${toArr[0].name ?? ""} <${toArr[0].mailbox}@${toArr[0].host}>`.trim();
115
+ }
116
+ }
117
+ });
118
+ msg.once("end", () => {
119
+ messages.push(message);
120
+ });
121
+ });
122
+ fetch.once("error", reject);
123
+ fetch.once("end", () => resolve(messages));
124
+ });
125
+ }
126
+ function imapSearch(imap, criteria) {
127
+ return new Promise((resolve, reject) => {
128
+ imap.search(criteria, (err, results) => {
129
+ if (err)
130
+ reject(err);
131
+ else
132
+ resolve(results ?? []);
133
+ });
134
+ });
135
+ }
136
+ function imapAddFlags(imap, uid, flags) {
137
+ return new Promise((resolve, reject) => {
138
+ imap.addFlags(String(uid), flags, (err) => {
139
+ if (err)
140
+ reject(err);
141
+ else
142
+ resolve();
143
+ });
144
+ });
145
+ }
146
+ function imapMove(imap, uid, dest) {
147
+ return new Promise((resolve, reject) => {
148
+ imap.move(String(uid), dest, (err) => {
149
+ if (err)
150
+ reject(err);
151
+ else
152
+ resolve();
153
+ });
154
+ });
155
+ }
156
+ // ─── Operations ──────────────────────────────────────────────────────────────
157
+ export async function sendEmail(args) {
158
+ const { smtp_host, smtp_port, smtp_user, smtp_pass } = getSmtpArgs(args);
159
+ const from = String(args.from ?? smtp_user).trim();
160
+ const to = Array.isArray(args.to) ? args.to.map(String) : [String(args.to ?? "")];
161
+ const subject = String(args.subject ?? "").trim();
162
+ const body = String(args.body ?? "").trim();
163
+ const isHtml = args.html === true || /<[a-z][\s\S]*>/i.test(body);
164
+ if (!to[0])
165
+ throw new Error("to is required (array of email addresses).");
166
+ if (!subject)
167
+ throw new Error("subject is required.");
168
+ if (!body)
169
+ throw new Error("body is required.");
170
+ const transporter = nodemailer.createTransport({
171
+ host: smtp_host,
172
+ port: smtp_port,
173
+ secure: smtp_port === 465,
174
+ auth: { user: smtp_user, pass: smtp_pass },
175
+ });
176
+ const mailOptions = {
177
+ from,
178
+ to: to.join(", "),
179
+ subject,
180
+ ...(isHtml ? { html: body } : { text: body }),
181
+ };
182
+ if (args.cc) {
183
+ mailOptions.cc = Array.isArray(args.cc)
184
+ ? args.cc.map(String).join(", ")
185
+ : String(args.cc);
186
+ }
187
+ if (args.bcc) {
188
+ mailOptions.bcc = Array.isArray(args.bcc)
189
+ ? args.bcc.map(String).join(", ")
190
+ : String(args.bcc);
191
+ }
192
+ const info = await transporter.sendMail(mailOptions);
193
+ return {
194
+ success: true,
195
+ message_id: info.messageId,
196
+ accepted: info.accepted,
197
+ rejected: info.rejected,
198
+ };
199
+ }
200
+ export async function readInbox(args) {
201
+ const cfg = getImapArgs(args);
202
+ const folder = String(args.folder ?? "INBOX");
203
+ const limit = Math.min(50, Math.max(1, Number(args.limit ?? 10)));
204
+ const unreadOnly = args.unread_only === true;
205
+ const imap = makeImap(cfg);
206
+ await imapConnect(imap);
207
+ try {
208
+ await imapOpenBox(imap, folder, true);
209
+ const criteria = unreadOnly ? ["UNSEEN"] : ["ALL"];
210
+ const uids = await imapSearch(imap, criteria);
211
+ if (uids.length === 0) {
212
+ return { folder, total: 0, messages: [] };
213
+ }
214
+ const recent = uids.slice(-limit);
215
+ const messages = await imapFetchMessages(imap, recent, {
216
+ bodies: "HEADER.FIELDS (FROM TO SUBJECT DATE)",
217
+ envelope: true,
218
+ struct: false,
219
+ });
220
+ return {
221
+ folder,
222
+ total: uids.length,
223
+ fetched: messages.length,
224
+ messages: messages.reverse(),
225
+ };
226
+ }
227
+ finally {
228
+ imap.end();
229
+ }
230
+ }
231
+ export async function searchEmail(args) {
232
+ const cfg = getImapArgs(args);
233
+ const folder = String(args.folder ?? "INBOX");
234
+ const query = String(args.query ?? "").trim();
235
+ if (!query)
236
+ throw new Error("query is required.");
237
+ const criteria = [];
238
+ // Support subject: or from: prefixes, otherwise search subject
239
+ if (query.toLowerCase().startsWith("from:")) {
240
+ criteria.push(["FROM", query.slice(5).trim()]);
241
+ }
242
+ else if (query.toLowerCase().startsWith("subject:")) {
243
+ criteria.push(["SUBJECT", query.slice(8).trim()]);
244
+ }
245
+ else {
246
+ criteria.push(["SUBJECT", query]);
247
+ }
248
+ if (args.since_date) {
249
+ criteria.push(["SINCE", new Date(String(args.since_date))]);
250
+ }
251
+ const imap = makeImap(cfg);
252
+ await imapConnect(imap);
253
+ try {
254
+ await imapOpenBox(imap, folder, true);
255
+ const uids = await imapSearch(imap, criteria.length > 0 ? criteria : [["ALL"]]);
256
+ if (uids.length === 0) {
257
+ return { query, folder, total: 0, messages: [] };
258
+ }
259
+ const messages = await imapFetchMessages(imap, uids.slice(-20), {
260
+ bodies: "HEADER.FIELDS (FROM TO SUBJECT DATE)",
261
+ envelope: true,
262
+ struct: false,
263
+ });
264
+ return {
265
+ query,
266
+ folder,
267
+ total: uids.length,
268
+ messages: messages.reverse(),
269
+ };
270
+ }
271
+ finally {
272
+ imap.end();
273
+ }
274
+ }
275
+ export async function getEmail(args) {
276
+ const cfg = getImapArgs(args);
277
+ const uid = Number(args.uid);
278
+ if (!uid)
279
+ throw new Error("uid is required.");
280
+ const folder = String(args.folder ?? "INBOX");
281
+ const imap = makeImap(cfg);
282
+ await imapConnect(imap);
283
+ try {
284
+ await imapOpenBox(imap, folder, true);
285
+ const messages = await imapFetchMessages(imap, [uid], {
286
+ bodies: "",
287
+ envelope: true,
288
+ struct: false,
289
+ });
290
+ if (messages.length === 0) {
291
+ return { error: `Email with UID ${uid} not found.` };
292
+ }
293
+ return messages[0];
294
+ }
295
+ finally {
296
+ imap.end();
297
+ }
298
+ }
299
+ export async function markRead(args) {
300
+ const cfg = getImapArgs(args);
301
+ const uid = Number(args.uid);
302
+ if (!uid)
303
+ throw new Error("uid is required.");
304
+ const folder = String(args.folder ?? "INBOX");
305
+ const imap = makeImap(cfg);
306
+ await imapConnect(imap);
307
+ try {
308
+ await imapOpenBox(imap, folder, false);
309
+ await imapAddFlags(imap, uid, ["\\Seen"]);
310
+ return { success: true, uid, message: `Email ${uid} marked as read.` };
311
+ }
312
+ finally {
313
+ imap.end();
314
+ }
315
+ }
316
+ export async function deleteEmail(args) {
317
+ if (args.must_confirm !== true) {
318
+ throw new Error("Destructive action: pass must_confirm=true to confirm email deletion.");
319
+ }
320
+ const cfg = getImapArgs(args);
321
+ const uid = Number(args.uid);
322
+ if (!uid)
323
+ throw new Error("uid is required.");
324
+ const folder = String(args.folder ?? "INBOX");
325
+ const imap = makeImap(cfg);
326
+ await imapConnect(imap);
327
+ try {
328
+ await imapOpenBox(imap, folder, false);
329
+ // Try to move to Trash; fall back to flagging as deleted
330
+ const trashFolders = ["Trash", "[Gmail]/Trash", "INBOX.Trash", "Deleted Items"];
331
+ let moved = false;
332
+ for (const trash of trashFolders) {
333
+ try {
334
+ await imapMove(imap, uid, trash);
335
+ moved = true;
336
+ break;
337
+ }
338
+ catch {
339
+ // Try next candidate
340
+ }
341
+ }
342
+ if (!moved) {
343
+ await imapAddFlags(imap, uid, ["\\Deleted"]);
344
+ await new Promise((resolve, reject) => {
345
+ imap.expunge((err) => (err ? reject(err) : resolve()));
346
+ });
347
+ }
348
+ return {
349
+ success: true,
350
+ uid,
351
+ message: moved
352
+ ? `Email ${uid} moved to Trash.`
353
+ : `Email ${uid} permanently deleted.`,
354
+ };
355
+ }
356
+ finally {
357
+ imap.end();
358
+ }
359
+ }
360
+ // ─── Public dispatcher ────────────────────────────────────────────────────────
361
+ export async function emailAction(action, args) {
362
+ switch (action) {
363
+ case "send_email": return sendEmail(args);
364
+ case "read_inbox": return readInbox(args);
365
+ case "search_email": return searchEmail(args);
366
+ case "get_email": return getEmail(args);
367
+ case "mark_read": return markRead(args);
368
+ case "delete_email": return deleteEmail(args);
369
+ default:
370
+ return {
371
+ error: `Unknown email action: "${action}". ` +
372
+ "Valid: send_email, read_inbox, search_email, get_email, mark_read, delete_email.",
373
+ };
374
+ }
375
+ }
376
+ //# sourceMappingURL=email-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-tool.js","sourceRoot":"","sources":["../src/email-tool.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,yEAAyE;AACzE,iFAAiF;AAEjF,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AA6BxB,iFAAiF;AAEjF,SAAS,WAAW,CAAC,IAA6B;IAChD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/E,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/E,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/E,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC;IACzE,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACjF,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACjF,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACjF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AACxD,CAAC;AAED,iFAAiF;AAEjF,SAAS,WAAW,CAAC,IAA6B;IAChD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/E,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/E,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/E,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC;IACzE,MAAM,QAAQ,GAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,eAAe;IAC1D,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACjF,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACjF,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACjF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;AAClE,CAAC;AAED,SAAS,QAAQ,CAAC,GAAa;IAC7B,OAAO,IAAI,IAAI,CAAC;QACd,IAAI,EAAM,GAAG,CAAC,SAAS;QACvB,QAAQ,EAAE,GAAG,CAAC,SAAS;QACvB,IAAI,EAAM,GAAG,CAAC,SAAS;QACvB,IAAI,EAAM,GAAG,CAAC,SAAS,IAAI,GAAG;QAC9B,GAAG,EAAO,GAAG,CAAC,QAAQ,IAAI,IAAI;QAC9B,UAAU,EAAE,EAAE,kBAAkB,EAAE,KAAK,EAAE;QACzC,WAAW,EAAE,KAAK;QAClB,WAAW,EAAE,KAAK;KACnB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,WAAW,CAAC,IAAU;IAC7B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAI,CAAC,GAAU,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAM,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC,CAAC,CAAC;QACrF,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,WAAW,CAAC,IAAU,EAAE,MAAc,EAAE,QAAQ,GAAG,KAAK;IAC/D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC1C,IAAI,GAAG;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;gBAChB,OAAO,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CACxB,IAAU,EACV,MAAyB,EACzB,IAAuB;IAEvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,QAAQ,GAAmB,EAAE,CAAC;QACpC,IAAI,KAAqB,CAAC;QAC1B,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QAED,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACjC,MAAM,OAAO,GAA4C,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;YACxE,MAAM,UAAU,GAAa,EAAE,CAAC;YAEhC,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;gBACxB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC7D,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;oBACpB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBACvD,uCAAuC;oBACvC,MAAM,SAAS,GAAG,CAAC,IAAY,EAAU,EAAE;wBACzC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,IAAI,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;wBAC/D,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACtC,CAAC,CAAC;oBACF,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;oBAC1D,OAAO,CAAC,IAAI,GAAM,OAAO,CAAC,IAAI,IAAO,SAAS,CAAC,MAAM,CAAC,CAAC;oBACvD,OAAO,CAAC,EAAE,GAAQ,OAAO,CAAC,EAAE,IAAS,SAAS,CAAC,IAAI,CAAC,CAAC;oBACrD,OAAO,CAAC,IAAI,GAAM,OAAO,CAAC,IAAI,IAAO,SAAS,CAAC,MAAM,CAAC,CAAC;oBACvD,gDAAgD;oBAChD,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBAC1C,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;wBACrB,OAAO,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,EAAE,SAAS,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;oBAC/E,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC/B,OAAO,CAAC,GAAG,GAAK,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC;gBACnC,OAAO,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAa,CAAC;gBAChD,qDAAqD;gBACrD,MAAM,GAAG,GAAG,KAAK,CAAC,QAA+C,CAAC;gBAClE,IAAI,GAAG,EAAE,CAAC;oBACR,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;oBAC/D,OAAO,CAAC,IAAI,GAAM,OAAO,CAAC,IAAI,IAAO,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;oBAC5D,MAAM,OAAO,GAAG,GAAG,CAAC,IAAiD,CAAC;oBACtE,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACjB,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI;4BACzB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;oBACjF,CAAC;oBACD,MAAM,KAAK,GAAG,GAAG,CAAC,EAA+C,CAAC;oBAClE,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACf,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE;4BACrB,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;oBAC3E,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE;gBACnB,QAAQ,CAAC,IAAI,CAAC,OAAuB,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,IAAU,EAAE,QAAmB;IACjD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;YACrC,IAAI,GAAG;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;gBAChB,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,YAAY,CAAC,IAAU,EAAE,GAAW,EAAE,KAAe;IAC5D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;YACxC,IAAI,GAAG;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;gBAChB,OAAO,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,QAAQ,CAAC,IAAU,EAAE,GAAW,EAAE,IAAY;IACrD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;YACnC,IAAI,GAAG;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;gBAChB,OAAO,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAA6B;IAC3D,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAEzE,MAAM,IAAI,GAAM,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;IACtD,MAAM,EAAE,GAAQ,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACvF,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAClD,MAAM,IAAI,GAAM,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/C,MAAM,MAAM,GAAI,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEnE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAC1E,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACtD,IAAI,CAAC,IAAI;QAAK,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAEnD,MAAM,WAAW,GAAG,UAAU,CAAC,eAAe,CAAC;QAC7C,IAAI,EAAI,SAAS;QACjB,IAAI,EAAI,SAAS;QACjB,MAAM,EAAE,SAAS,KAAK,GAAG;QACzB,IAAI,EAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;KAC7C,CAAC,CAAC;IAEH,MAAM,WAAW,GAA+B;QAC9C,IAAI;QACJ,EAAE,EAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;QACtB,OAAO;QACP,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;KAC9C,CAAC;IAEF,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;QACZ,WAAW,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAChC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtB,CAAC;IACD,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,WAAW,CAAC,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;YACvC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACjC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAErD,OAAO;QACL,OAAO,EAAK,IAAI;QAChB,UAAU,EAAE,IAAI,CAAC,SAAS;QAC1B,QAAQ,EAAI,IAAI,CAAC,QAAQ;QACzB,QAAQ,EAAI,IAAI,CAAC,QAAQ;KAC1B,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAA6B;IAC3D,MAAM,GAAG,GAAM,WAAW,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAI,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACnE,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC;IAE7C,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC3B,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;IAExB,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAc,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC9D,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAE9C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAC5C,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE;YACrD,MAAM,EAAI,sCAAsC;YAChD,QAAQ,EAAE,IAAI;YACd,MAAM,EAAI,KAAK;SAChB,CAAC,CAAC;QAEH,OAAO;YACL,MAAM;YACN,KAAK,EAAK,IAAI,CAAC,MAAM;YACrB,OAAO,EAAG,QAAQ,CAAC,MAAM;YACzB,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE;SAC7B,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAA6B;IAC7D,MAAM,GAAG,GAAK,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAI,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/C,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,+DAA+D;IAC/D,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5C,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC;SAAM,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACpD,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC3B,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;IAExB,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEhF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACnD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE;YAC9D,MAAM,EAAI,sCAAsC;YAChD,QAAQ,EAAE,IAAI;YACd,MAAM,EAAI,KAAK;SAChB,CAAC,CAAC;QAEH,OAAO;YACL,KAAK;YACL,MAAM;YACN,KAAK,EAAK,IAAI,CAAC,MAAM;YACrB,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE;SAC7B,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAA6B;IAC1D,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC;IAE9C,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC3B,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;IAExB,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE;YACpD,MAAM,EAAI,EAAE;YACZ,QAAQ,EAAE,IAAI;YACd,MAAM,EAAI,KAAK;SAChB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,KAAK,EAAE,kBAAkB,GAAG,aAAa,EAAE,CAAC;QACvD,CAAC;QAED,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAA6B;IAC1D,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC;IAE9C,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC3B,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;IAExB,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QACvC,MAAM,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,GAAG,kBAAkB,EAAE,CAAC;IACzE,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAA6B;IAC7D,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAI,WAAW,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,GAAG,GAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC;IAE9C,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC3B,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;IAExB,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAEvC,yDAAyD;QACzD,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC;QAChF,IAAI,KAAK,GAAG,KAAK,CAAC;QAElB,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;gBACjC,KAAK,GAAG,IAAI,CAAC;gBACb,MAAM;YACR,CAAC;YAAC,MAAM,CAAC;gBACP,qBAAqB;YACvB,CAAC;QACH,CAAC;QAED,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;YAC7C,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC1C,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACzD,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI;YACb,GAAG;YACH,OAAO,EAAE,KAAK;gBACZ,CAAC,CAAC,SAAS,GAAG,kBAAkB;gBAChC,CAAC,CAAC,SAAS,GAAG,uBAAuB;SACxC,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,iFAAiF;AAEjF,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAc,EACd,IAA6B;IAE7B,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,YAAY,CAAC,CAAI,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QAC7C,KAAK,YAAY,CAAC,CAAI,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QAC7C,KAAK,cAAc,CAAC,CAAE,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;QAC/C,KAAK,WAAW,CAAC,CAAK,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC5C,KAAK,WAAW,CAAC,CAAK,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC5C,KAAK,cAAc,CAAC,CAAE,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;QAC/C;YACE,OAAO;gBACL,KAAK,EACH,0BAA0B,MAAM,KAAK;oBACrC,kFAAkF;aACrF,CAAC;IACN,CAAC;AACH,CAAC"}
@@ -0,0 +1,8 @@
1
+ export declare function getNflScores(_args: Record<string, unknown>): Promise<unknown>;
2
+ export declare function getNbaScores(_args: Record<string, unknown>): Promise<unknown>;
3
+ export declare function getMlbScores(_args: Record<string, unknown>): Promise<unknown>;
4
+ export declare function getNhlScores(_args: Record<string, unknown>): Promise<unknown>;
5
+ export declare function getSoccerScores(args: Record<string, unknown>): Promise<unknown>;
6
+ export declare function getEspnNews(args: Record<string, unknown>): Promise<unknown>;
7
+ export declare function getTeamInfo(args: Record<string, unknown>): Promise<unknown>;
8
+ //# sourceMappingURL=espn-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"espn-tool.d.ts","sourceRoot":"","sources":["../src/espn-tool.ts"],"names":[],"mappings":"AA0EA,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CASnF;AAID,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAQnF;AAID,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAQnF;AAID,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAQnF;AAiBD,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAarF;AAiBD,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAgBjF;AAmBD,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CA0BjF"}
@@ -0,0 +1,147 @@
1
+ // ESPN sports data via the unofficial public ESPN API.
2
+ // No API key required.
3
+ // Base URL: https://site.api.espn.com/apis/site/v2/sports/
4
+ const ESPN_BASE = "https://site.api.espn.com/apis/site/v2/sports";
5
+ async function espnFetch(path) {
6
+ const res = await fetch(`${ESPN_BASE}${path}`, {
7
+ headers: { "User-Agent": "UnClickMCP/1.0 (https://unclick.io)" },
8
+ });
9
+ if (!res.ok)
10
+ throw new Error(`ESPN API HTTP ${res.status}`);
11
+ return res.json();
12
+ }
13
+ function normalizeEvent(event) {
14
+ const comp = event.competitions?.[0];
15
+ const competitors = (comp?.competitors ?? []).map((c) => ({
16
+ team: c.team?.displayName ?? "Unknown",
17
+ abbreviation: c.team?.abbreviation ?? null,
18
+ score: c.score ?? null,
19
+ home_away: c.homeAway ?? null,
20
+ winner: c.winner ?? null,
21
+ }));
22
+ const broadcasts = comp?.broadcasts?.flatMap((b) => b.names ?? []) ?? [];
23
+ const venue = comp?.venue
24
+ ? `${comp.venue.fullName ?? ""}${comp.venue.address?.city ? ", " + comp.venue.address.city : ""}`
25
+ : null;
26
+ return {
27
+ id: event.id,
28
+ name: event.name,
29
+ short_name: event.shortName ?? null,
30
+ date: event.date,
31
+ status: event.status?.type?.description ?? event.status?.type?.name ?? null,
32
+ completed: event.status?.type?.completed ?? null,
33
+ clock: event.status?.displayClock ?? null,
34
+ period: event.status?.period ?? null,
35
+ competitors,
36
+ venue: venue?.trim() || null,
37
+ broadcasts,
38
+ };
39
+ }
40
+ // ─── get_nfl_scores ───────────────────────────────────────────────────────────
41
+ export async function getNflScores(_args) {
42
+ const data = await espnFetch("/football/nfl/scoreboard");
43
+ return {
44
+ sport: "NFL",
45
+ season_year: data.season?.year ?? null,
46
+ week: data.week?.number ?? null,
47
+ event_count: data.events?.length ?? 0,
48
+ events: (data.events ?? []).map(normalizeEvent),
49
+ };
50
+ }
51
+ // ─── get_nba_scores ───────────────────────────────────────────────────────────
52
+ export async function getNbaScores(_args) {
53
+ const data = await espnFetch("/basketball/nba/scoreboard");
54
+ return {
55
+ sport: "NBA",
56
+ season_year: data.season?.year ?? null,
57
+ event_count: data.events?.length ?? 0,
58
+ events: (data.events ?? []).map(normalizeEvent),
59
+ };
60
+ }
61
+ // ─── get_mlb_scores ───────────────────────────────────────────────────────────
62
+ export async function getMlbScores(_args) {
63
+ const data = await espnFetch("/baseball/mlb/scoreboard");
64
+ return {
65
+ sport: "MLB",
66
+ season_year: data.season?.year ?? null,
67
+ event_count: data.events?.length ?? 0,
68
+ events: (data.events ?? []).map(normalizeEvent),
69
+ };
70
+ }
71
+ // ─── get_nhl_scores ───────────────────────────────────────────────────────────
72
+ export async function getNhlScores(_args) {
73
+ const data = await espnFetch("/hockey/nhl/scoreboard");
74
+ return {
75
+ sport: "NHL",
76
+ season_year: data.season?.year ?? null,
77
+ event_count: data.events?.length ?? 0,
78
+ events: (data.events ?? []).map(normalizeEvent),
79
+ };
80
+ }
81
+ // ─── get_soccer_scores ────────────────────────────────────────────────────────
82
+ const SOCCER_LEAGUES = {
83
+ "eng.1": "English Premier League",
84
+ "eng.2": "Championship",
85
+ "esp.1": "La Liga",
86
+ "ger.1": "Bundesliga",
87
+ "ita.1": "Serie A",
88
+ "fra.1": "Ligue 1",
89
+ "usa.1": "MLS",
90
+ "aus.1": "A-League",
91
+ "uefa.champions": "UEFA Champions League",
92
+ "uefa.europa": "UEFA Europa League",
93
+ };
94
+ export async function getSoccerScores(args) {
95
+ const league = String(args.league ?? "eng.1").trim();
96
+ const data = await espnFetch(`/soccer/${encodeURIComponent(league)}/scoreboard`);
97
+ return {
98
+ sport: "Soccer",
99
+ league,
100
+ league_name: SOCCER_LEAGUES[league] ?? league,
101
+ common_leagues: SOCCER_LEAGUES,
102
+ season_year: data.season?.year ?? null,
103
+ event_count: data.events?.length ?? 0,
104
+ events: (data.events ?? []).map(normalizeEvent),
105
+ };
106
+ }
107
+ export async function getEspnNews(args) {
108
+ const sport = String(args.sport ?? "football/nfl").trim();
109
+ const data = await espnFetch(`/${sport}/news`);
110
+ return {
111
+ sport,
112
+ count: data.articles?.length ?? 0,
113
+ articles: (data.articles ?? []).slice(0, 20).map((a) => ({
114
+ headline: a.headline ?? null,
115
+ description: a.description ?? null,
116
+ byline: a.byline ?? null,
117
+ published: a.published ?? null,
118
+ url: a.links?.web?.href ?? null,
119
+ })),
120
+ tip: 'sport examples: "football/nfl", "basketball/nba", "baseball/mlb", "hockey/nhl", "soccer/eng.1"',
121
+ };
122
+ }
123
+ export async function getTeamInfo(args) {
124
+ const sport = String(args.sport ?? "").trim();
125
+ const league = String(args.league ?? "").trim();
126
+ const teamId = String(args.team_id ?? "").trim();
127
+ if (!sport || !league || !teamId) {
128
+ return { error: "sport, league, and team_id are all required. Example: sport=football, league=nfl, team_id=12." };
129
+ }
130
+ const data = await espnFetch(`/${sport}/${league}/teams/${encodeURIComponent(teamId)}`);
131
+ if (!data.team)
132
+ return { error: `No team found for ${sport}/${league}/${teamId}.` };
133
+ const t = data.team;
134
+ return {
135
+ id: t.id ?? null,
136
+ name: t.displayName ?? null,
137
+ abbreviation: t.abbreviation ?? null,
138
+ nickname: t.nickname ?? null,
139
+ location: t.location ?? null,
140
+ primary_color: t.color ? `#${t.color}` : null,
141
+ alternate_color: t.alternateColor ? `#${t.alternateColor}` : null,
142
+ logo: t.logos?.[0]?.href ?? null,
143
+ record: t.record?.items?.map((r) => ({ name: r.name, summary: r.summary })) ?? [],
144
+ links: t.links?.map((l) => ({ text: l.text, url: l.href })) ?? [],
145
+ };
146
+ }
147
+ //# sourceMappingURL=espn-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"espn-tool.js","sourceRoot":"","sources":["../src/espn-tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare function eventbriteSearchEvents(args: Record<string, unknown>): Promise<unknown>;
2
+ export declare function eventbriteGetEvent(args: Record<string, unknown>): Promise<unknown>;
3
+ export declare function eventbriteGetEventAttendees(args: Record<string, unknown>): Promise<unknown>;
4
+ export declare function eventbriteCreateEvent(args: Record<string, unknown>): Promise<unknown>;
5
+ export declare function eventbriteListCategories(args: Record<string, unknown>): Promise<unknown>;
6
+ export declare function eventbriteGetVenue(args: Record<string, unknown>): Promise<unknown>;
7
+ //# sourceMappingURL=eventbrite-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eventbrite-tool.d.ts","sourceRoot":"","sources":["../src/eventbrite-tool.ts"],"names":[],"mappings":"AAsEA,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAW5F;AAID,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAQxF;AAID,wBAAsB,2BAA2B,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAQjG;AAID,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CA4B3F;AAID,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAK9F;AAID,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAQxF"}