@unclick/mcp-server 0.1.0 → 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.
- package/dist/abn-tool.d.ts +3 -0
- package/dist/abn-tool.d.ts.map +1 -0
- package/dist/abn-tool.js +89 -0
- package/dist/abn-tool.js.map +1 -0
- package/dist/abuseipdb-tool.d.ts +4 -0
- package/dist/abuseipdb-tool.d.ts.map +1 -0
- package/dist/abuseipdb-tool.js +129 -0
- package/dist/abuseipdb-tool.js.map +1 -0
- package/dist/alphavantage-tool.d.ts +7 -0
- package/dist/alphavantage-tool.d.ts.map +1 -0
- package/dist/alphavantage-tool.js +208 -0
- package/dist/alphavantage-tool.js.map +1 -0
- package/dist/amber-tool.d.ts +4 -0
- package/dist/amber-tool.d.ts.map +1 -0
- package/dist/amber-tool.js +114 -0
- package/dist/amber-tool.js.map +1 -0
- package/dist/australiapost-tool.d.ts +4 -0
- package/dist/australiapost-tool.d.ts.map +1 -0
- package/dist/australiapost-tool.js +130 -0
- package/dist/australiapost-tool.js.map +1 -0
- package/dist/bandsintown-tool.d.ts +4 -0
- package/dist/bandsintown-tool.d.ts.map +1 -0
- package/dist/bandsintown-tool.js +76 -0
- package/dist/bandsintown-tool.js.map +1 -0
- package/dist/bungie-tool.d.ts +5 -0
- package/dist/bungie-tool.d.ts.map +1 -0
- package/dist/bungie-tool.js +138 -0
- package/dist/bungie-tool.js.map +1 -0
- package/dist/calculator-tool.d.ts +6 -0
- package/dist/calculator-tool.d.ts.map +1 -0
- package/dist/calculator-tool.js +196 -0
- package/dist/calculator-tool.js.map +1 -0
- package/dist/carboninterface-tool.d.ts +5 -0
- package/dist/carboninterface-tool.d.ts.map +1 -0
- package/dist/carboninterface-tool.js +143 -0
- package/dist/carboninterface-tool.js.map +1 -0
- package/dist/chessdotcom-tool.d.ts +6 -0
- package/dist/chessdotcom-tool.d.ts.map +1 -0
- package/dist/chessdotcom-tool.js +183 -0
- package/dist/chessdotcom-tool.js.map +1 -0
- package/dist/client.js +1 -1
- package/dist/clockify-tool.d.ts +2 -0
- package/dist/clockify-tool.d.ts.map +1 -0
- package/dist/clockify-tool.js +155 -0
- package/dist/clockify-tool.js.map +1 -0
- package/dist/coingecko-tool.d.ts +7 -0
- package/dist/coingecko-tool.d.ts.map +1 -0
- package/dist/coingecko-tool.js +176 -0
- package/dist/coingecko-tool.js.map +1 -0
- package/dist/coinmarketcap-tool.d.ts +6 -0
- package/dist/coinmarketcap-tool.d.ts.map +1 -0
- package/dist/coinmarketcap-tool.js +168 -0
- package/dist/coinmarketcap-tool.js.map +1 -0
- package/dist/color-tool.d.ts +6 -0
- package/dist/color-tool.d.ts.map +1 -0
- package/dist/color-tool.js +391 -0
- package/dist/color-tool.js.map +1 -0
- package/dist/connectors/bluesky.d.ts +3 -0
- package/dist/connectors/bluesky.d.ts.map +1 -0
- package/dist/connectors/bluesky.js +26 -0
- package/dist/connectors/bluesky.js.map +1 -0
- package/dist/connectors/discogs.d.ts +3 -0
- package/dist/connectors/discogs.d.ts.map +1 -0
- package/dist/connectors/discogs.js +18 -0
- package/dist/connectors/discogs.js.map +1 -0
- package/dist/connectors/discord.d.ts +3 -0
- package/dist/connectors/discord.d.ts.map +1 -0
- package/dist/connectors/discord.js +18 -0
- package/dist/connectors/discord.js.map +1 -0
- package/dist/connectors/guardian.d.ts +3 -0
- package/dist/connectors/guardian.d.ts.map +1 -0
- package/dist/connectors/guardian.js +18 -0
- package/dist/connectors/guardian.js.map +1 -0
- package/dist/connectors/index.d.ts +39 -0
- package/dist/connectors/index.d.ts.map +1 -0
- package/dist/connectors/index.js +23 -0
- package/dist/connectors/index.js.map +1 -0
- package/dist/connectors/lastfm.d.ts +3 -0
- package/dist/connectors/lastfm.d.ts.map +1 -0
- package/dist/connectors/lastfm.js +18 -0
- package/dist/connectors/lastfm.js.map +1 -0
- package/dist/connectors/mastodon.d.ts +3 -0
- package/dist/connectors/mastodon.d.ts.map +1 -0
- package/dist/connectors/mastodon.js +26 -0
- package/dist/connectors/mastodon.js.map +1 -0
- package/dist/connectors/newsapi.d.ts +3 -0
- package/dist/connectors/newsapi.d.ts.map +1 -0
- package/dist/connectors/newsapi.js +18 -0
- package/dist/connectors/newsapi.js.map +1 -0
- package/dist/connectors/ptv.d.ts +3 -0
- package/dist/connectors/ptv.d.ts.map +1 -0
- package/dist/connectors/ptv.js +26 -0
- package/dist/connectors/ptv.js.map +1 -0
- package/dist/connectors/reddit.d.ts +3 -0
- package/dist/connectors/reddit.d.ts.map +1 -0
- package/dist/connectors/reddit.js +28 -0
- package/dist/connectors/reddit.js.map +1 -0
- package/dist/connectors/seatgeek.d.ts +3 -0
- package/dist/connectors/seatgeek.d.ts.map +1 -0
- package/dist/connectors/seatgeek.js +18 -0
- package/dist/connectors/seatgeek.js.map +1 -0
- package/dist/connectors/shopify.d.ts +3 -0
- package/dist/connectors/shopify.d.ts.map +1 -0
- package/dist/connectors/shopify.js +38 -0
- package/dist/connectors/shopify.js.map +1 -0
- package/dist/connectors/slack.d.ts +3 -0
- package/dist/connectors/slack.d.ts.map +1 -0
- package/dist/connectors/slack.js +18 -0
- package/dist/connectors/slack.js.map +1 -0
- package/dist/connectors/telegram.d.ts +3 -0
- package/dist/connectors/telegram.d.ts.map +1 -0
- package/dist/connectors/telegram.js +18 -0
- package/dist/connectors/telegram.js.map +1 -0
- package/dist/connectors/ticketmaster.d.ts +3 -0
- package/dist/connectors/ticketmaster.d.ts.map +1 -0
- package/dist/connectors/ticketmaster.js +18 -0
- package/dist/connectors/ticketmaster.js.map +1 -0
- package/dist/connectors/twitch.d.ts +3 -0
- package/dist/connectors/twitch.d.ts.map +1 -0
- package/dist/connectors/twitch.js +26 -0
- package/dist/connectors/twitch.js.map +1 -0
- package/dist/connectors/xero.d.ts +3 -0
- package/dist/connectors/xero.d.ts.map +1 -0
- package/dist/connectors/xero.js +36 -0
- package/dist/connectors/xero.js.map +1 -0
- package/dist/connectors/yelp.d.ts +3 -0
- package/dist/connectors/yelp.d.ts.map +1 -0
- package/dist/connectors/yelp.js +18 -0
- package/dist/connectors/yelp.js.map +1 -0
- package/dist/datetime-tool.d.ts +8 -0
- package/dist/datetime-tool.d.ts.map +1 -0
- package/dist/datetime-tool.js +263 -0
- package/dist/datetime-tool.js.map +1 -0
- package/dist/deezer-tool.d.ts +7 -0
- package/dist/deezer-tool.d.ts.map +1 -0
- package/dist/deezer-tool.js +142 -0
- package/dist/deezer-tool.js.map +1 -0
- package/dist/discogs-tool.d.ts +7 -0
- package/dist/discogs-tool.d.ts.map +1 -0
- package/dist/discogs-tool.js +138 -0
- package/dist/discogs-tool.js.map +1 -0
- package/dist/domain-tool.d.ts +4 -0
- package/dist/domain-tool.d.ts.map +1 -0
- package/dist/domain-tool.js +155 -0
- package/dist/domain-tool.js.map +1 -0
- package/dist/ebird-tool.d.ts +5 -0
- package/dist/ebird-tool.d.ts.map +1 -0
- package/dist/ebird-tool.js +128 -0
- package/dist/ebird-tool.js.map +1 -0
- package/dist/email-tool.d.ts +8 -0
- package/dist/email-tool.d.ts.map +1 -0
- package/dist/email-tool.js +376 -0
- package/dist/email-tool.js.map +1 -0
- package/dist/espn-tool.d.ts +8 -0
- package/dist/espn-tool.d.ts.map +1 -0
- package/dist/espn-tool.js +147 -0
- package/dist/espn-tool.js.map +1 -0
- package/dist/eventbrite-tool.d.ts +7 -0
- package/dist/eventbrite-tool.d.ts.map +1 -0
- package/dist/eventbrite-tool.js +134 -0
- package/dist/eventbrite-tool.js.map +1 -0
- package/dist/feedly-tool.d.ts +2 -0
- package/dist/feedly-tool.d.ts.map +1 -0
- package/dist/feedly-tool.js +152 -0
- package/dist/feedly-tool.js.map +1 -0
- package/dist/foursquare-tool.d.ts +6 -0
- package/dist/foursquare-tool.d.ts.map +1 -0
- package/dist/foursquare-tool.js +102 -0
- package/dist/foursquare-tool.js.map +1 -0
- package/dist/fpl-tool.d.ts +8 -0
- package/dist/fpl-tool.d.ts.map +1 -0
- package/dist/fpl-tool.js +195 -0
- package/dist/fpl-tool.js.map +1 -0
- package/dist/genius-tool.d.ts +5 -0
- package/dist/genius-tool.d.ts.map +1 -0
- package/dist/genius-tool.js +62 -0
- package/dist/genius-tool.js.map +1 -0
- package/dist/guardian-tool.d.ts +6 -0
- package/dist/guardian-tool.d.ts.map +1 -0
- package/dist/guardian-tool.js +124 -0
- package/dist/guardian-tool.js.map +1 -0
- package/dist/hackernews-tool.d.ts +8 -0
- package/dist/hackernews-tool.d.ts.map +1 -0
- package/dist/hackernews-tool.js +96 -0
- package/dist/hackernews-tool.js.map +1 -0
- package/dist/haveibeenpwned-tool.d.ts +4 -0
- package/dist/haveibeenpwned-tool.d.ts.map +1 -0
- package/dist/haveibeenpwned-tool.js +162 -0
- package/dist/haveibeenpwned-tool.js.map +1 -0
- package/dist/hunter-tool.d.ts +4 -0
- package/dist/hunter-tool.d.ts.map +1 -0
- package/dist/hunter-tool.js +148 -0
- package/dist/hunter-tool.js.map +1 -0
- package/dist/instapaper-tool.d.ts +2 -0
- package/dist/instapaper-tool.d.ts.map +1 -0
- package/dist/instapaper-tool.js +257 -0
- package/dist/instapaper-tool.js.map +1 -0
- package/dist/ipapi-tool.d.ts +3 -0
- package/dist/ipapi-tool.d.ts.map +1 -0
- package/dist/ipapi-tool.js +78 -0
- package/dist/ipapi-tool.js.map +1 -0
- package/dist/ipaustralia-tool.d.ts +4 -0
- package/dist/ipaustralia-tool.d.ts.map +1 -0
- package/dist/ipaustralia-tool.js +138 -0
- package/dist/ipaustralia-tool.js.map +1 -0
- package/dist/lastfm-tool.d.ts +8 -0
- package/dist/lastfm-tool.d.ts.map +1 -0
- package/dist/lastfm-tool.js +169 -0
- package/dist/lastfm-tool.js.map +1 -0
- package/dist/lego-tool.d.ts +8 -0
- package/dist/lego-tool.d.ts.map +1 -0
- package/dist/lego-tool.js +235 -0
- package/dist/lego-tool.js.map +1 -0
- package/dist/lichess-tool.d.ts +6 -0
- package/dist/lichess-tool.d.ts.map +1 -0
- package/dist/lichess-tool.js +211 -0
- package/dist/lichess-tool.js.map +1 -0
- package/dist/meal-tool.d.ts +8 -0
- package/dist/meal-tool.d.ts.map +1 -0
- package/dist/meal-tool.js +143 -0
- package/dist/meal-tool.js.map +1 -0
- package/dist/monica-tool.d.ts +2 -0
- package/dist/monica-tool.d.ts.map +1 -0
- package/dist/monica-tool.js +160 -0
- package/dist/monica-tool.js.map +1 -0
- package/dist/musicbrainz-tool.d.ts +6 -0
- package/dist/musicbrainz-tool.d.ts.map +1 -0
- package/dist/musicbrainz-tool.js +65 -0
- package/dist/musicbrainz-tool.js.map +1 -0
- package/dist/nasa-tool.d.ts +6 -0
- package/dist/nasa-tool.d.ts.map +1 -0
- package/dist/nasa-tool.js +158 -0
- package/dist/nasa-tool.js.map +1 -0
- package/dist/newsapi-tool.d.ts +4 -0
- package/dist/newsapi-tool.d.ts.map +1 -0
- package/dist/newsapi-tool.js +108 -0
- package/dist/newsapi-tool.js.map +1 -0
- package/dist/notion-tool.d.ts +2 -0
- package/dist/notion-tool.d.ts.map +1 -0
- package/dist/notion-tool.js +167 -0
- package/dist/notion-tool.js.map +1 -0
- package/dist/numbers-tool.d.ts +3 -0
- package/dist/numbers-tool.d.ts.map +1 -0
- package/dist/numbers-tool.js +47 -0
- package/dist/numbers-tool.js.map +1 -0
- package/dist/nvd-tool.d.ts +4 -0
- package/dist/nvd-tool.d.ts.map +1 -0
- package/dist/nvd-tool.js +150 -0
- package/dist/nvd-tool.js.map +1 -0
- package/dist/omdb-tool.d.ts +4 -0
- package/dist/omdb-tool.d.ts.map +1 -0
- package/dist/omdb-tool.js +62 -0
- package/dist/omdb-tool.js.map +1 -0
- package/dist/openaq-tool.d.ts +5 -0
- package/dist/openaq-tool.d.ts.map +1 -0
- package/dist/openaq-tool.js +141 -0
- package/dist/openaq-tool.js.map +1 -0
- package/dist/openexchangerates-tool.d.ts +5 -0
- package/dist/openexchangerates-tool.d.ts.map +1 -0
- package/dist/openexchangerates-tool.js +101 -0
- package/dist/openexchangerates-tool.js.map +1 -0
- package/dist/openf1-tool.d.ts +9 -0
- package/dist/openf1-tool.d.ts.map +1 -0
- package/dist/openf1-tool.js +194 -0
- package/dist/openf1-tool.js.map +1 -0
- package/dist/openfoodfacts-tool.d.ts +5 -0
- package/dist/openfoodfacts-tool.d.ts.map +1 -0
- package/dist/openfoodfacts-tool.js +106 -0
- package/dist/openfoodfacts-tool.js.map +1 -0
- package/dist/openlibrary-tool.d.ts +7 -0
- package/dist/openlibrary-tool.d.ts.map +1 -0
- package/dist/openlibrary-tool.js +67 -0
- package/dist/openlibrary-tool.js.map +1 -0
- package/dist/openmeteo-tool.d.ts +4 -0
- package/dist/openmeteo-tool.d.ts.map +1 -0
- package/dist/openmeteo-tool.js +160 -0
- package/dist/openmeteo-tool.js.map +1 -0
- package/dist/pandascore-tool.d.ts +6 -0
- package/dist/pandascore-tool.d.ts.map +1 -0
- package/dist/pandascore-tool.js +239 -0
- package/dist/pandascore-tool.js.map +1 -0
- package/dist/podcastindex-tool.d.ts +7 -0
- package/dist/podcastindex-tool.d.ts.map +1 -0
- package/dist/podcastindex-tool.js +98 -0
- package/dist/podcastindex-tool.js.map +1 -0
- package/dist/ptv-tool.d.ts +6 -0
- package/dist/ptv-tool.d.ts.map +1 -0
- package/dist/ptv-tool.js +95 -0
- package/dist/ptv-tool.js.map +1 -0
- package/dist/radiobrowser-tool.d.ts +7 -0
- package/dist/radiobrowser-tool.d.ts.map +1 -0
- package/dist/radiobrowser-tool.js +125 -0
- package/dist/radiobrowser-tool.js.map +1 -0
- package/dist/raindrop-tool.d.ts +2 -0
- package/dist/raindrop-tool.d.ts.map +1 -0
- package/dist/raindrop-tool.js +137 -0
- package/dist/raindrop-tool.js.map +1 -0
- package/dist/random-tool.d.ts +9 -0
- package/dist/random-tool.d.ts.map +1 -0
- package/dist/random-tool.js +198 -0
- package/dist/random-tool.js.map +1 -0
- package/dist/rawg-tool.d.ts +7 -0
- package/dist/rawg-tool.d.ts.map +1 -0
- package/dist/rawg-tool.js +172 -0
- package/dist/rawg-tool.js.map +1 -0
- package/dist/readwise-tool.d.ts +2 -0
- package/dist/readwise-tool.d.ts.map +1 -0
- package/dist/readwise-tool.js +133 -0
- package/dist/readwise-tool.js.map +1 -0
- package/dist/resend-tool.d.ts +4 -0
- package/dist/resend-tool.d.ts.map +1 -0
- package/dist/resend-tool.js +133 -0
- package/dist/resend-tool.js.map +1 -0
- package/dist/restcountries-tool.d.ts +7 -0
- package/dist/restcountries-tool.d.ts.map +1 -0
- package/dist/restcountries-tool.js +141 -0
- package/dist/restcountries-tool.js.map +1 -0
- package/dist/riot-tool.d.ts +6 -0
- package/dist/riot-tool.d.ts.map +1 -0
- package/dist/riot-tool.js +166 -0
- package/dist/riot-tool.js.map +1 -0
- package/dist/seatgeek-tool.d.ts +7 -0
- package/dist/seatgeek-tool.d.ts.map +1 -0
- package/dist/seatgeek-tool.js +144 -0
- package/dist/seatgeek-tool.js.map +1 -0
- package/dist/sendle-tool.d.ts +4 -0
- package/dist/sendle-tool.d.ts.map +1 -0
- package/dist/sendle-tool.js +146 -0
- package/dist/sendle-tool.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +114 -1825
- package/dist/server.js.map +1 -1
- package/dist/setlistfm-tool.d.ts +5 -0
- package/dist/setlistfm-tool.d.ts.map +1 -0
- package/dist/setlistfm-tool.js +89 -0
- package/dist/setlistfm-tool.js.map +1 -0
- package/dist/shodan-tool.d.ts +4 -0
- package/dist/shodan-tool.d.ts.map +1 -0
- package/dist/shodan-tool.js +139 -0
- package/dist/shodan-tool.js.map +1 -0
- package/dist/sleeper-tool.d.ts +7 -0
- package/dist/sleeper-tool.d.ts.map +1 -0
- package/dist/sleeper-tool.js +147 -0
- package/dist/sleeper-tool.js.map +1 -0
- package/dist/splitwise-tool.d.ts +2 -0
- package/dist/splitwise-tool.d.ts.map +1 -0
- package/dist/splitwise-tool.js +133 -0
- package/dist/splitwise-tool.js.map +1 -0
- package/dist/supercell-tool.d.ts +8 -0
- package/dist/supercell-tool.d.ts.map +1 -0
- package/dist/supercell-tool.js +258 -0
- package/dist/supercell-tool.js.map +1 -0
- package/dist/tab-tool.d.ts +4 -0
- package/dist/tab-tool.d.ts.map +1 -0
- package/dist/tab-tool.js +128 -0
- package/dist/tab-tool.js.map +1 -0
- package/dist/text-tool.d.ts +8 -0
- package/dist/text-tool.d.ts.map +1 -0
- package/dist/text-tool.js +190 -0
- package/dist/text-tool.js.map +1 -0
- package/dist/thelott-tool.d.ts +3 -0
- package/dist/thelott-tool.d.ts.map +1 -0
- package/dist/thelott-tool.js +93 -0
- package/dist/thelott-tool.js.map +1 -0
- package/dist/ticketmaster-tool.d.ts +6 -0
- package/dist/ticketmaster-tool.d.ts.map +1 -0
- package/dist/ticketmaster-tool.js +140 -0
- package/dist/ticketmaster-tool.js.map +1 -0
- package/dist/tmdb-tool.d.ts +9 -0
- package/dist/tmdb-tool.d.ts.map +1 -0
- package/dist/tmdb-tool.js +204 -0
- package/dist/tmdb-tool.js.map +1 -0
- package/dist/toggl-tool.d.ts +5 -0
- package/dist/toggl-tool.d.ts.map +1 -0
- package/dist/toggl-tool.js +203 -0
- package/dist/toggl-tool.js.map +1 -0
- package/dist/toilets-tool.d.ts +3 -0
- package/dist/toilets-tool.d.ts.map +1 -0
- package/dist/toilets-tool.js +260 -0
- package/dist/toilets-tool.js.map +1 -0
- package/dist/tomorrowio-tool.d.ts +4 -0
- package/dist/tomorrowio-tool.d.ts.map +1 -0
- package/dist/tomorrowio-tool.js +114 -0
- package/dist/tomorrowio-tool.js.map +1 -0
- package/dist/tool-wiring.d.ts +7370 -0
- package/dist/tool-wiring.d.ts.map +1 -0
- package/dist/tool-wiring.js +6068 -0
- package/dist/tool-wiring.js.map +1 -0
- package/dist/trivia-tool.d.ts +3 -0
- package/dist/trivia-tool.d.ts.map +1 -0
- package/dist/trivia-tool.js +91 -0
- package/dist/trivia-tool.js.map +1 -0
- package/dist/trove-tool.d.ts +4 -0
- package/dist/trove-tool.d.ts.map +1 -0
- package/dist/trove-tool.js +121 -0
- package/dist/trove-tool.js.map +1 -0
- package/dist/twitch-tool.d.ts +8 -0
- package/dist/twitch-tool.d.ts.map +1 -0
- package/dist/twitch-tool.js +188 -0
- package/dist/twitch-tool.js.map +1 -0
- package/dist/unit-converter-tool.d.ts +8 -0
- package/dist/unit-converter-tool.d.ts.map +1 -0
- package/dist/unit-converter-tool.js +176 -0
- package/dist/unit-converter-tool.js.map +1 -0
- package/dist/untappd-tool.d.ts +6 -0
- package/dist/untappd-tool.d.ts.map +1 -0
- package/dist/untappd-tool.js +193 -0
- package/dist/untappd-tool.js.map +1 -0
- package/dist/urlscan-tool.d.ts +4 -0
- package/dist/urlscan-tool.d.ts.map +1 -0
- package/dist/urlscan-tool.js +154 -0
- package/dist/urlscan-tool.js.map +1 -0
- package/dist/usgs-tool.d.ts +5 -0
- package/dist/usgs-tool.d.ts.map +1 -0
- package/dist/usgs-tool.js +140 -0
- package/dist/usgs-tool.js.map +1 -0
- package/dist/vault-bridge.d.ts +16 -0
- package/dist/vault-bridge.d.ts.map +1 -0
- package/dist/vault-bridge.js +139 -0
- package/dist/vault-bridge.js.map +1 -0
- package/dist/vercel-tool.d.ts +6 -0
- package/dist/vercel-tool.d.ts.map +1 -0
- package/dist/vercel-tool.js +202 -0
- package/dist/vercel-tool.js.map +1 -0
- package/dist/virustotal-tool.d.ts +5 -0
- package/dist/virustotal-tool.d.ts.map +1 -0
- package/dist/virustotal-tool.js +154 -0
- package/dist/virustotal-tool.js.map +1 -0
- package/dist/willyweather-tool.d.ts +4 -0
- package/dist/willyweather-tool.d.ts.map +1 -0
- package/dist/willyweather-tool.js +128 -0
- package/dist/willyweather-tool.js.map +1 -0
- package/dist/wise-tool.d.ts +5 -0
- package/dist/wise-tool.d.ts.map +1 -0
- package/dist/wise-tool.js +129 -0
- package/dist/wise-tool.js.map +1 -0
- package/dist/xero-tool.d.ts.map +1 -1
- package/dist/xero-tool.js +40 -35
- package/dist/xero-tool.js.map +1 -1
- package/dist/yelp-tool.d.ts +6 -0
- package/dist/yelp-tool.d.ts.map +1 -0
- package/dist/yelp-tool.js +150 -0
- package/dist/yelp-tool.js.map +1 -0
- package/package.json +6 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare function seatgeekSearchEvents(args: Record<string, unknown>): Promise<unknown>;
|
|
2
|
+
export declare function seatgeekGetEvent(args: Record<string, unknown>): Promise<unknown>;
|
|
3
|
+
export declare function seatgeekSearchPerformers(args: Record<string, unknown>): Promise<unknown>;
|
|
4
|
+
export declare function seatgeekGetPerformer(args: Record<string, unknown>): Promise<unknown>;
|
|
5
|
+
export declare function seatgeekSearchVenues(args: Record<string, unknown>): Promise<unknown>;
|
|
6
|
+
export declare function seatgeekGetVenue(args: Record<string, unknown>): Promise<unknown>;
|
|
7
|
+
//# sourceMappingURL=seatgeek-tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seatgeek-tool.d.ts","sourceRoot":"","sources":["../src/seatgeek-tool.ts"],"names":[],"mappings":"AAgCA,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAqB1F;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAUtF;AAED,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAgB9F;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAU1F;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAkB1F;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAUtF"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
// ── SeatGeek API tool ───────────────────────────────────────────────────────────
|
|
2
|
+
// SeatGeek Platform API for events, performers, and venues.
|
|
3
|
+
// Docs: https://platform.seatgeek.com/
|
|
4
|
+
// Env var: SEATGEEK_CLIENT_ID
|
|
5
|
+
const SEATGEEK_BASE = "https://api.seatgeek.com/2";
|
|
6
|
+
async function seatgeekGet(clientId, path, params = {}) {
|
|
7
|
+
const qs = new URLSearchParams({ client_id: clientId });
|
|
8
|
+
for (const [k, v] of Object.entries(params)) {
|
|
9
|
+
if (v !== undefined && v !== "")
|
|
10
|
+
qs.set(k, String(v));
|
|
11
|
+
}
|
|
12
|
+
const res = await fetch(`${SEATGEEK_BASE}${path}?${qs}`);
|
|
13
|
+
if (!res.ok) {
|
|
14
|
+
const body = await res.text().catch(() => "");
|
|
15
|
+
throw new Error(`SeatGeek API HTTP ${res.status}: ${body || res.statusText}`);
|
|
16
|
+
}
|
|
17
|
+
return res.json();
|
|
18
|
+
}
|
|
19
|
+
function getClientId(args) {
|
|
20
|
+
const id = String(args.client_id ?? process.env.SEATGEEK_CLIENT_ID ?? "").trim();
|
|
21
|
+
if (!id)
|
|
22
|
+
throw new Error("client_id is required (or set SEATGEEK_CLIENT_ID env var).");
|
|
23
|
+
return id;
|
|
24
|
+
}
|
|
25
|
+
// ── Tool functions ─────────────────────────────────────────────────────────────
|
|
26
|
+
export async function seatgeekSearchEvents(args) {
|
|
27
|
+
try {
|
|
28
|
+
const clientId = getClientId(args);
|
|
29
|
+
const params = {};
|
|
30
|
+
if (args.query)
|
|
31
|
+
params.q = String(args.query);
|
|
32
|
+
if (args.venue_id)
|
|
33
|
+
params["venue.id"] = String(args.venue_id);
|
|
34
|
+
if (args.type)
|
|
35
|
+
params.type = String(args.type);
|
|
36
|
+
if (args.datetime_local)
|
|
37
|
+
params.datetime_local = String(args.datetime_local);
|
|
38
|
+
if (args.city)
|
|
39
|
+
params["venue.city"] = String(args.city);
|
|
40
|
+
if (args.state)
|
|
41
|
+
params["venue.state"] = String(args.state);
|
|
42
|
+
if (args.country)
|
|
43
|
+
params["venue.country"] = String(args.country);
|
|
44
|
+
if (args.per_page)
|
|
45
|
+
params.per_page = Number(args.per_page);
|
|
46
|
+
if (args.page)
|
|
47
|
+
params.page = Number(args.page);
|
|
48
|
+
const data = await seatgeekGet(clientId, "/events", params);
|
|
49
|
+
return {
|
|
50
|
+
total: data.meta ? data.meta.total : undefined,
|
|
51
|
+
events: data.events,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
catch (err) {
|
|
55
|
+
return { error: err instanceof Error ? err.message : String(err) };
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
export async function seatgeekGetEvent(args) {
|
|
59
|
+
try {
|
|
60
|
+
const clientId = getClientId(args);
|
|
61
|
+
const id = String(args.id ?? "").trim();
|
|
62
|
+
if (!id)
|
|
63
|
+
return { error: "id is required." };
|
|
64
|
+
const data = await seatgeekGet(clientId, `/events/${encodeURIComponent(id)}`);
|
|
65
|
+
return data;
|
|
66
|
+
}
|
|
67
|
+
catch (err) {
|
|
68
|
+
return { error: err instanceof Error ? err.message : String(err) };
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
export async function seatgeekSearchPerformers(args) {
|
|
72
|
+
try {
|
|
73
|
+
const clientId = getClientId(args);
|
|
74
|
+
const query = String(args.query ?? "").trim();
|
|
75
|
+
if (!query)
|
|
76
|
+
return { error: "query is required." };
|
|
77
|
+
const params = { q: query };
|
|
78
|
+
if (args.per_page)
|
|
79
|
+
params.per_page = Number(args.per_page);
|
|
80
|
+
if (args.page)
|
|
81
|
+
params.page = Number(args.page);
|
|
82
|
+
const data = await seatgeekGet(clientId, "/performers", params);
|
|
83
|
+
return {
|
|
84
|
+
total: data.meta ? data.meta.total : undefined,
|
|
85
|
+
performers: data.performers,
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
catch (err) {
|
|
89
|
+
return { error: err instanceof Error ? err.message : String(err) };
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
export async function seatgeekGetPerformer(args) {
|
|
93
|
+
try {
|
|
94
|
+
const clientId = getClientId(args);
|
|
95
|
+
const id = String(args.id ?? "").trim();
|
|
96
|
+
if (!id)
|
|
97
|
+
return { error: "id is required." };
|
|
98
|
+
const data = await seatgeekGet(clientId, `/performers/${encodeURIComponent(id)}`);
|
|
99
|
+
return data;
|
|
100
|
+
}
|
|
101
|
+
catch (err) {
|
|
102
|
+
return { error: err instanceof Error ? err.message : String(err) };
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
export async function seatgeekSearchVenues(args) {
|
|
106
|
+
try {
|
|
107
|
+
const clientId = getClientId(args);
|
|
108
|
+
const params = {};
|
|
109
|
+
if (args.query)
|
|
110
|
+
params.q = String(args.query);
|
|
111
|
+
if (args.city)
|
|
112
|
+
params["venue.city"] = String(args.city);
|
|
113
|
+
if (args.state)
|
|
114
|
+
params["venue.state"] = String(args.state);
|
|
115
|
+
if (args.country)
|
|
116
|
+
params["venue.country"] = String(args.country);
|
|
117
|
+
if (args.per_page)
|
|
118
|
+
params.per_page = Number(args.per_page);
|
|
119
|
+
if (args.page)
|
|
120
|
+
params.page = Number(args.page);
|
|
121
|
+
const data = await seatgeekGet(clientId, "/venues", params);
|
|
122
|
+
return {
|
|
123
|
+
total: data.meta ? data.meta.total : undefined,
|
|
124
|
+
venues: data.venues,
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
catch (err) {
|
|
128
|
+
return { error: err instanceof Error ? err.message : String(err) };
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
export async function seatgeekGetVenue(args) {
|
|
132
|
+
try {
|
|
133
|
+
const clientId = getClientId(args);
|
|
134
|
+
const id = String(args.id ?? "").trim();
|
|
135
|
+
if (!id)
|
|
136
|
+
return { error: "id is required." };
|
|
137
|
+
const data = await seatgeekGet(clientId, `/venues/${encodeURIComponent(id)}`);
|
|
138
|
+
return data;
|
|
139
|
+
}
|
|
140
|
+
catch (err) {
|
|
141
|
+
return { error: err instanceof Error ? err.message : String(err) };
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=seatgeek-tool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seatgeek-tool.js","sourceRoot":"","sources":["../src/seatgeek-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare function getSendleQuote(args: Record<string, unknown>): Promise<unknown>;
|
|
2
|
+
export declare function createSendleOrder(args: Record<string, unknown>): Promise<unknown>;
|
|
3
|
+
export declare function trackSendleParcel(args: Record<string, unknown>): Promise<unknown>;
|
|
4
|
+
//# sourceMappingURL=sendle-tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sendle-tool.d.ts","sourceRoot":"","sources":["../src/sendle-tool.ts"],"names":[],"mappings":"AAwDA,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CA0CpF;AAID,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CA+BvF;AAID,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAsBvF"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
// Sendle AU courier integration.
|
|
2
|
+
// Quote, order, and track domestic and international courier shipments.
|
|
3
|
+
// Docs: https://developers.sendle.com/
|
|
4
|
+
// Auth: SENDLE_ID + SENDLE_API_KEY env vars (HTTP Basic Auth).
|
|
5
|
+
// Base URL: https://api.sendle.com/api/
|
|
6
|
+
const SENDLE_BASE = "https://api.sendle.com/api";
|
|
7
|
+
function getAuth(args) {
|
|
8
|
+
const id = String(args.sendle_id ?? process.env.SENDLE_ID ?? "").trim();
|
|
9
|
+
const key = String(args.api_key ?? process.env.SENDLE_API_KEY ?? "").trim();
|
|
10
|
+
if (!id)
|
|
11
|
+
throw new Error("sendle_id is required (or set SENDLE_ID env var).");
|
|
12
|
+
if (!key)
|
|
13
|
+
throw new Error("api_key is required (or set SENDLE_API_KEY env var).");
|
|
14
|
+
return { id, key };
|
|
15
|
+
}
|
|
16
|
+
function basicAuth(auth) {
|
|
17
|
+
return "Basic " + Buffer.from(`${auth.id}:${auth.key}`).toString("base64");
|
|
18
|
+
}
|
|
19
|
+
async function sendleFetch(auth, path, method = "GET", body) {
|
|
20
|
+
const res = await fetch(`${SENDLE_BASE}${path}`, {
|
|
21
|
+
method,
|
|
22
|
+
headers: {
|
|
23
|
+
Authorization: basicAuth(auth),
|
|
24
|
+
"Content-Type": "application/json",
|
|
25
|
+
Accept: "application/json",
|
|
26
|
+
},
|
|
27
|
+
...(body ? { body: JSON.stringify(body) } : {}),
|
|
28
|
+
});
|
|
29
|
+
if (res.status === 401 || res.status === 403)
|
|
30
|
+
throw new Error("Invalid Sendle credentials.");
|
|
31
|
+
if (res.status === 404)
|
|
32
|
+
throw new Error("Resource not found.");
|
|
33
|
+
if (res.status === 422) {
|
|
34
|
+
const text = await res.text().catch(() => "");
|
|
35
|
+
throw new Error(`Sendle validation error: ${text.slice(0, 300)}`);
|
|
36
|
+
}
|
|
37
|
+
if (res.status === 429)
|
|
38
|
+
throw new Error("Sendle API rate limit exceeded.");
|
|
39
|
+
if (!res.ok) {
|
|
40
|
+
const text = await res.text().catch(() => "");
|
|
41
|
+
throw new Error(`Sendle API HTTP ${res.status}${text ? `: ${text.slice(0, 200)}` : ""}`);
|
|
42
|
+
}
|
|
43
|
+
return res.json();
|
|
44
|
+
}
|
|
45
|
+
// ─── get_sendle_quote ─────────────────────────────────────────────────────────
|
|
46
|
+
export async function getSendleQuote(args) {
|
|
47
|
+
try {
|
|
48
|
+
const auth = getAuth(args);
|
|
49
|
+
const pickupPostcode = String(args.pickup_postcode ?? "").trim();
|
|
50
|
+
const deliveryPostcode = String(args.delivery_postcode ?? "").trim();
|
|
51
|
+
if (!pickupPostcode)
|
|
52
|
+
return { error: "pickup_postcode is required." };
|
|
53
|
+
if (!deliveryPostcode)
|
|
54
|
+
return { error: "delivery_postcode is required." };
|
|
55
|
+
const params = new URLSearchParams({
|
|
56
|
+
"pickup_suburb": String(args.pickup_suburb ?? ""),
|
|
57
|
+
"pickup_postcode": pickupPostcode,
|
|
58
|
+
"pickup_country": String(args.pickup_country ?? "AU"),
|
|
59
|
+
"delivery_suburb": String(args.delivery_suburb ?? ""),
|
|
60
|
+
"delivery_postcode": deliveryPostcode,
|
|
61
|
+
"delivery_country": String(args.delivery_country ?? "AU"),
|
|
62
|
+
"weight_value": String(args.weight_kg ?? "1"),
|
|
63
|
+
"weight_units": "kg",
|
|
64
|
+
});
|
|
65
|
+
if (args.volume_l)
|
|
66
|
+
params.set("volume_value", String(args.volume_l));
|
|
67
|
+
if (args.volume_l)
|
|
68
|
+
params.set("volume_units", "l");
|
|
69
|
+
const data = await sendleFetch(auth, `/quote?${params}`);
|
|
70
|
+
return {
|
|
71
|
+
pickup_postcode: pickupPostcode,
|
|
72
|
+
delivery_postcode: deliveryPostcode,
|
|
73
|
+
weight_kg: args.weight_kg ?? 1,
|
|
74
|
+
quotes: Array.isArray(data)
|
|
75
|
+
? data.map((q) => ({
|
|
76
|
+
plan: q["plan_name"],
|
|
77
|
+
product: q["product"],
|
|
78
|
+
eta_days_min: q["eta"]?.["days_range"]?.[0],
|
|
79
|
+
eta_days_max: q["eta"]?.["days_range"]?.[1],
|
|
80
|
+
price_aud: q["quote"]?.["gross"],
|
|
81
|
+
price_aud_tax: q["quote"]?.["tax"],
|
|
82
|
+
}))
|
|
83
|
+
: [],
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
catch (err) {
|
|
87
|
+
return { error: err instanceof Error ? err.message : String(err) };
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
// ─── create_sendle_order ──────────────────────────────────────────────────────
|
|
91
|
+
export async function createSendleOrder(args) {
|
|
92
|
+
try {
|
|
93
|
+
const auth = getAuth(args);
|
|
94
|
+
const body = {
|
|
95
|
+
pickup_date: args.pickup_date,
|
|
96
|
+
description: args.description ?? "Parcel",
|
|
97
|
+
weight: { value: Number(args.weight_kg ?? 1), units: "kg" },
|
|
98
|
+
sender: args.sender,
|
|
99
|
+
receiver: args.receiver,
|
|
100
|
+
};
|
|
101
|
+
if (args.customer_reference)
|
|
102
|
+
body["customer_reference"] = args.customer_reference;
|
|
103
|
+
if (args.metadata)
|
|
104
|
+
body["metadata"] = args.metadata;
|
|
105
|
+
const data = await sendleFetch(auth, "/orders", "POST", body);
|
|
106
|
+
return {
|
|
107
|
+
order_id: data["order_id"],
|
|
108
|
+
state: data["state"],
|
|
109
|
+
tracking_url: data["tracking_url"],
|
|
110
|
+
label_url: data["labels"]?.[0]?.["url"],
|
|
111
|
+
sendle_reference: data["sendle_reference"],
|
|
112
|
+
customer_reference: data["customer_reference"],
|
|
113
|
+
pickup_date: data["pickup_date"],
|
|
114
|
+
eta: data["eta"],
|
|
115
|
+
price_aud: data["quote"]?.["gross"],
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
catch (err) {
|
|
119
|
+
return { error: err instanceof Error ? err.message : String(err) };
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
// ─── track_sendle_parcel ──────────────────────────────────────────────────────
|
|
123
|
+
export async function trackSendleParcel(args) {
|
|
124
|
+
try {
|
|
125
|
+
const auth = getAuth(args);
|
|
126
|
+
const ref = String(args.tracking_ref ?? args.sendle_reference ?? "").trim();
|
|
127
|
+
if (!ref)
|
|
128
|
+
return { error: "tracking_ref is required (Sendle reference number)." };
|
|
129
|
+
const data = await sendleFetch(auth, `/tracking/${encodeURIComponent(ref)}`);
|
|
130
|
+
return {
|
|
131
|
+
tracking_ref: ref,
|
|
132
|
+
state: data["state"],
|
|
133
|
+
tracking_events: data["tracking_events"]?.map((e) => ({
|
|
134
|
+
event_type: e["event_type"],
|
|
135
|
+
description: e["description"],
|
|
136
|
+
scan_time: e["scan_time"],
|
|
137
|
+
location: e["location"],
|
|
138
|
+
})),
|
|
139
|
+
estimated_delivery: data["estimated_delivery"],
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
catch (err) {
|
|
143
|
+
return { error: err instanceof Error ? err.message : String(err) };
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=sendle-tool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sendle-tool.js","sourceRoot":"","sources":["../src/sendle-tool.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AA4fnE,wBAAgB,YAAY,IAAI,MAAM,CAwMrC;AAED,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAMjD"}
|