composio-scavio 0.5.3 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -36,6 +36,8 @@ interface BuildScavioToolkitOptions {
36
36
  enableCapterra?: boolean;
37
37
  enableGoogleAds?: boolean;
38
38
  enableMetaAds?: boolean;
39
+ enableHeb?: boolean;
40
+ enableKroger?: boolean;
39
41
  /**
40
42
  * Website map, crawl and batch extract (five tools: MAP_WEBSITE, CRAWL_WEBSITE,
41
43
  * CRAWL_STATUS, BATCH_EXTRACT, BATCH_STATUS). Opt-in: a crawl bills per page.
@@ -52,7 +54,7 @@ interface BuildScavioToolkitOptions {
52
54
  /**
53
55
  * Build a Composio custom toolkit exposing Scavio search tools.
54
56
  *
55
- * Scavio is a single Search API over Google, YouTube, Amazon, Walmart, Reddit,
57
+ * Scavio is a single Search API over Google, YouTube, Amazon, Walmart, HEB, Kroger, Reddit,
56
58
  * TikTok, TikTok Shop, Instagram, X and LinkedIn; this toolkit covers all ten.
57
59
  * Pass to `composio.create(userId, { experimental:
58
60
  * { customToolkits: [toolkit] } })`. Agent-facing slugs are prefixed `LOCAL_SCAVIO_`.
package/dist/index.d.ts CHANGED
@@ -36,6 +36,8 @@ interface BuildScavioToolkitOptions {
36
36
  enableCapterra?: boolean;
37
37
  enableGoogleAds?: boolean;
38
38
  enableMetaAds?: boolean;
39
+ enableHeb?: boolean;
40
+ enableKroger?: boolean;
39
41
  /**
40
42
  * Website map, crawl and batch extract (five tools: MAP_WEBSITE, CRAWL_WEBSITE,
41
43
  * CRAWL_STATUS, BATCH_EXTRACT, BATCH_STATUS). Opt-in: a crawl bills per page.
@@ -52,7 +54,7 @@ interface BuildScavioToolkitOptions {
52
54
  /**
53
55
  * Build a Composio custom toolkit exposing Scavio search tools.
54
56
  *
55
- * Scavio is a single Search API over Google, YouTube, Amazon, Walmart, Reddit,
57
+ * Scavio is a single Search API over Google, YouTube, Amazon, Walmart, HEB, Kroger, Reddit,
56
58
  * TikTok, TikTok Shop, Instagram, X and LinkedIn; this toolkit covers all ten.
57
59
  * Pass to `composio.create(userId, { experimental:
58
60
  * { customToolkits: [toolkit] } })`. Agent-facing slugs are prefixed `LOCAL_SCAVIO_`.
package/dist/index.js CHANGED
@@ -104,6 +104,8 @@ function buildScavioToolkit(options = {}) {
104
104
  enableCapterra = false,
105
105
  enableGoogleAds = false,
106
106
  enableMetaAds = false,
107
+ enableHeb = false,
108
+ enableKroger = false,
107
109
  enableCrawl = false,
108
110
  pollIntervalMs = JOB_POLL_INTERVAL_MS,
109
111
  all = false
@@ -1568,7 +1570,7 @@ function buildScavioToolkit(options = {}) {
1568
1570
  page: onum("Results page, 1-based."),
1569
1571
  count: onum("Results per page, 1-28. Defaults to 24; Target rejects anything above 28 outright."),
1570
1572
  sort: ostr("Result sort order. Defaults to 'relevance'. Accepted values: 'relevance', 'featured', 'price_low', 'price_high', 'rating_high', 'best_seller', 'newest'."),
1571
- store_id: ostr("Numeric Target store id whose prices and availability the response reflects. Defaults to '3991', the store target.com uses with no store context.")
1573
+ store_id: ostr("Numeric Target store id whose prices the response reflects. Defaults to '3991', the store target.com uses with no store context.")
1572
1574
  }),
1573
1575
  (i) => client.target.search(i)
1574
1576
  ),
@@ -1581,7 +1583,7 @@ function buildScavioToolkit(options = {}) {
1581
1583
  page: onum("Results page, 1-based."),
1582
1584
  count: onum("Results per page, 1-28. Defaults to 24; Target rejects anything above 28 outright."),
1583
1585
  sort: ostr("Result sort order. Defaults to 'relevance'. Accepted values: 'relevance', 'featured', 'price_low', 'price_high', 'rating_high', 'best_seller', 'newest'."),
1584
- store_id: ostr("Numeric Target store id whose prices and availability the response reflects. Defaults to '3991'.")
1586
+ store_id: ostr("Numeric Target store id whose prices the response reflects. Defaults to '3991'.")
1585
1587
  }),
1586
1588
  (i) => client.target.category(i)
1587
1589
  ),
@@ -1591,7 +1593,7 @@ function buildScavioToolkit(options = {}) {
1591
1593
  "Target product details by TCIN: price, rating, images, specifications, variants, return policy, fulfillment. seller_id/seller_name are null for stock sold by Target. Costs 1 credit.",
1592
1594
  z.object({
1593
1595
  tcin: str("Target catalog id (tcin, e.g. '1010453160'). A colour/size child tcin is answered by its variation parent, with the child present in 'variants'."),
1594
- store_id: ostr("Numeric Target store id whose prices and availability the response reflects. Defaults to '3991'.")
1596
+ store_id: ostr("Numeric Target store id whose prices the response reflects. Defaults to '3991'.")
1595
1597
  }),
1596
1598
  (i) => client.target.product(i)
1597
1599
  ),
@@ -1602,9 +1604,21 @@ function buildScavioToolkit(options = {}) {
1602
1604
  z.object({
1603
1605
  tcin: str("Target catalog id (tcin, e.g. '1010453160')."),
1604
1606
  limit: onum("Trim the returned reviews to at most this many (1 or greater). Target publishes 8 anonymously and offers no paging, so this only trims."),
1605
- store_id: ostr("Numeric Target store id whose prices and availability the response reflects. Defaults to '3991'.")
1607
+ store_id: ostr("Numeric Target store id whose prices the response reflects. Defaults to '3991'.")
1606
1608
  }),
1607
1609
  (i) => client.target.reviews(i)
1610
+ ),
1611
+ tool(
1612
+ "TARGET_AVAILABILITY",
1613
+ "Scavio Target Availability",
1614
+ "In-store stock for a Target product at every store near a ZIP: units available, in-store, pickup, curbside and ship-to-store status, distance, address and hours. Costs 1 credit.",
1615
+ z.object({
1616
+ tcin: str("Target catalog id (tcin, e.g. '85978609')."),
1617
+ zip: str("5-digit US ZIP code to search around."),
1618
+ radius: onum("Search radius in miles, 1-100. Defaults to 25. At most 20 stores."),
1619
+ store_id: ostr("Return only this Target store. It must be within radius of zip.")
1620
+ }),
1621
+ (i) => client.target.availability(i)
1608
1622
  )
1609
1623
  );
1610
1624
  }
@@ -2446,6 +2460,67 @@ function buildScavioToolkit(options = {}) {
2446
2460
  )
2447
2461
  );
2448
2462
  }
2463
+ if (all || enableHeb) {
2464
+ tools.push(
2465
+ tool(
2466
+ "HEB_SEARCH",
2467
+ "Scavio HEB Search",
2468
+ "Search HEB grocery products: price in cents, sale status, unit price, size, UPC, stock, EBT/SNAP eligibility, aisle location and product URL. Costs 2 credits.",
2469
+ z.object({
2470
+ query: str("Search keywords (1-200 characters)."),
2471
+ page: onum("Results page, 1-based (1-100)."),
2472
+ page_size: onum("Results per page, 1-60. Server default 30.")
2473
+ }),
2474
+ (i) => client.heb.search(i)
2475
+ ),
2476
+ tool(
2477
+ "HEB_PRODUCT",
2478
+ "Scavio HEB Product",
2479
+ "Full HEB product detail: nutrition facts, ingredients, description, images, similar products, coupons, EBT/SNAP eligibility and breadcrumbs. Pass product_url (from search) or slug + product_id. Costs 2 credits.",
2480
+ z.object({
2481
+ product_url: ostr("Full or relative product URL from heb.com. Preferred over slug + product_id."),
2482
+ product_id: ostr("HEB product id (numeric id at the end of a product URL). Requires slug."),
2483
+ slug: ostr("Product slug (readable part of the URL). Required with product_id.")
2484
+ }),
2485
+ (i) => client.heb.product(i)
2486
+ ),
2487
+ tool(
2488
+ "HEB_STORES",
2489
+ "Scavio HEB Stores",
2490
+ "HEB stores near a US ZIP code or city: store number, address, phone, hours, pharmacy availability, fulfillment channels, distance and store URL. Pass zip or city. Costs 2 credits.",
2491
+ z.object({
2492
+ zip: ostr("5-digit US ZIP code (e.g. '78701')."),
2493
+ city: ostr("City name (e.g. 'Austin'). Pass zip or city.")
2494
+ }),
2495
+ (i) => client.heb.stores(i)
2496
+ )
2497
+ );
2498
+ }
2499
+ if (all || enableKroger) {
2500
+ tools.push(
2501
+ tool(
2502
+ "KROGER_SEARCH",
2503
+ "Scavio Kroger Search",
2504
+ "Search Kroger grocery products: price in cents, promo price, n-for deals, unit price, size, UPC, stock, SNAP eligibility, dietary info, rating and category. Kroger operates Kroger, Ralphs, Fred Meyer, Harris Teeter, King Soopers and Fry's. Costs 2 credits.",
2505
+ z.object({
2506
+ query: str("Search keywords (1-200 characters)."),
2507
+ page: onum("Results page, 1-based (1-100).")
2508
+ }),
2509
+ (i) => client.kroger.search(i)
2510
+ ),
2511
+ tool(
2512
+ "KROGER_PRODUCT",
2513
+ "Scavio Kroger Product",
2514
+ "Full Kroger product detail by URL or UPC: nutrition facts, allergens, ingredients, nutrients with daily values, description, images, rating distribution, store aisle, stock, dietary flags, SNAP eligibility, dimensions and country of origin. Costs 2 credits.",
2515
+ z.object({
2516
+ product_url: ostr("Full or relative product URL from kroger.com. Preferred."),
2517
+ upc: ostr("Kroger product UPC (from search or product URLs: /p/{slug}/{upc})."),
2518
+ slug: ostr("Product slug for readable URL. Optional with upc.")
2519
+ }),
2520
+ (i) => client.kroger.product(i)
2521
+ )
2522
+ );
2523
+ }
2449
2524
  if (all || enableExtract) {
2450
2525
  tools.push(
2451
2526
  tool(
@@ -2549,7 +2624,7 @@ function buildScavioToolkit(options = {}) {
2549
2624
  }
2550
2625
  return experimental_createToolkit("SCAVIO", {
2551
2626
  name: "Scavio",
2552
- description: "Real-time structured search over 31 platforms - Google (SERP, AI Mode, Maps, Shopping, Flights, Hotels, News, Trends), YouTube, Amazon, Walmart, eBay, Target, Home Depot, Reddit, TikTok, TikTok Shop, Instagram, X, LinkedIn, Threads, Kuaishou, Zillow, Redfin, Booking.com, Airbnb, Tripadvisor, Yelp, Indeed, Glassdoor, the Apple App Store, Google Play, SEC EDGAR, Companies House, G2, Capterra, Google Ads Transparency and the Meta Ad Library - plus extract, which reads any URL as Markdown, plain text or raw HTML, and website map, crawl and batch extract.",
2627
+ description: "Real-time structured search over 33 platforms - Google (SERP, AI Mode, Maps, Shopping, Flights, Hotels, News, Trends), YouTube, Amazon, Walmart, eBay, Target, Home Depot, HEB, Kroger, Reddit, TikTok, TikTok Shop, Instagram, X, LinkedIn, Threads, Kuaishou, Zillow, Redfin, Booking.com, Airbnb, Tripadvisor, Yelp, Indeed, Glassdoor, the Apple App Store, Google Play, SEC EDGAR, Companies House, G2, Capterra, Google Ads Transparency and the Meta Ad Library - plus extract, which reads any URL as Markdown, plain text or raw HTML, and website map, crawl and batch extract.",
2553
2628
  tools
2554
2629
  });
2555
2630
  }