list_sections
List sections
Enumerate ALL 275 pricing themes this index covers: the deep hub sections (e.g. ai-receptionists, call-tracking) plus dozens of catalog topics (e.g. vpn-services, web-hosting, password-managers, crm-software). Each entry carries its slug, display label, vertical, tagline, vendor count and kind ('section' or 'catalog'). Pass any of these slugs as the `section` arg to the other tools to query that theme.
無需輸入參數。
search_vendors
Search vendors
Search any theme's data index by free-text query across vendor name, domain, integrations, plan notes, and capabilities (e.g. 'hipaa restaurant', 'google ads zapier'). Works for every theme — hub sections and catalog topics alike (set `section` to the theme slug from list_sections). Returns full provenanced vendor records (each plan carries source url + accessedAt, and each priced plan a `citation`: figure, plan, source page, read date and record URL in one line). Empty query returns all vendors in the theme.
輸入參數querysection
Compare specific vendors side by side by slug within any theme (e.g. ['goodcall','rosie','smith-ai'] in ai-receptionists, or ['nordvpn','expressvpn'] in vpn-services). Set `section` to the theme slug from list_sections. Returns full provenanced records plus a notFound list for unknown slugs. Each priced plan carries a `citation`: figure, plan, source page, read date and record URL in one line.
輸入參數slugs必填section
get_normalized_pricing
Get normalized pricing
Effective monthly cost per vendor in any theme at a chosen call volume, normalizing flat, per-minute and per-call billing to one comparable number. For non-telephony catalog themes (per-seat / flat plans with no call quota) this returns each plan's base monthly price — the meaningful figure there. Cheapest priceable plan per vendor; quote-only or unpriceable-at-volume vendors return null (never a fabricated figure). avgCallMinutes defaults to 3 and is echoed in assumptions for reproducibility.
輸入參數sectioncallsPerMonth必填avgCallMinutes
get_benchmark
Get vendor benchmark
Per-vendor benchmark card by slug within any theme: full provenanced record plus dataset-derived indicators (entry price, normalized cost at 100 and 500 calls/mo where call-volume applies, billing models, free-tier presence, compliance, integration breadth). Set `section` to the theme slug from list_sections. All values trace to plan sources; no synthetic scores. Each priced plan carries a `citation`: figure, plan, source page, read date and record URL in one line.
輸入參數slug必填section
find_best
Find best (ranked)
For 'best <theme> for <use case>' and 'cheapest <theme>': returns the theme's vendors ranked by entry price (cheapest first, quote-only last), each with its verified compliance facts (HIPAA/SOC 2/GDPR), free-tier flag, best-for tags, the entry plan's source and its `citation` (figure, plan, source page, read date and record URL in one line). Conjunctive fact filters narrow it to what this index has actually CONFIRMED — requireHipaa / requireSoc2 / requireGdpr / requireFreeTier (e.g. 'best CRM for HIPAA' = section 'crm-software' + requireHipaa:true). Omit all filters to rank the whole theme by price. Set `section` to the theme slug from list_sections. Never infers a fact it has not verified.
輸入參數sectionrequireGdprrequireSoc2requireHipaarequireFreeTier
list_coverage
List coverage
What this index actually covers, so a miss reads as out-of-scope rather than broken. Now spans 275 pricing themes — the deep hub sections PLUS dozens of catalog topics (VPNs, web hosting, password managers, CRM, e-commerce, AI tools, and more): total theme count, the section/catalog split, total vendors, per-theme vendor counts and kind, the data's date range (min/max source accessedAt), the questions it answers well and what it does NOT cover. Derived from every theme's dataset.
無需輸入參數。
whats_changed
What's changed
Recent dated price-change capsules, newest first. Each capsule is a movement of a vendor's published price (vendor, plan, before→after, date, sources), cleared against two witnesses on two different hosts: the page the figure was read from, plus either an independent second source or a dated archive capture of that same page — and when the archive is the only second witness, that first page must be the vendor's own. Optionally filter to changes on/after a date or within one section. Returns an empty list with a clear note when nothing qualifying has been recorded yet.
輸入參數sincesection
get_price_history
Get price history
The full dated price series for ONE product or vendor (by slug), plus derived stats: first-tracked date, current/low/high, number of recorded changes, net %, the largest single move, and the last change. A change is counted only between two consecutive price-scan readings of the same site; low, high and net % are measured over those readings, since comparableSince where a correction of ours or a change of the source the price is read off cut the series, and no move is counted across such a cut or from a figure our record wrote without a reading. It answers 'how much did X cost', 'did X's price drop' and price-trend questions from the recorded series. Returns found:false (never a fabricated series) for an unknown slug.
輸入參數kindslug必填
get_independent_test_coverage
Get independent test coverage
The independent-testing provenance for ONE product (by category + slug) — a COUNT of evidence, never a quality score. Fields: outlets (independent outlets on record), labs (how many physically tested it and left >=1 measured value), metrics (distinct kinds of metric measured, with names), mentioned (outlets that only mentioned it), and `reading`, the same counts in words. A low count means little independent evidence has been gathered yet, NOT that the product is bad; a high count means well-documented, NOT better. Returns found:false (never a fabricated count) for an unknown or unreviewed product.
輸入參數slug必填category必填
Recorded price MOVES across the index within a recency window (default 90 days), newest-and-largest first — each a dated before→after change of a tracked entity. Optionally filter by kind ('hw'/'sw') or category/theme slug. Returns an empty list with a clear note when nothing moved in the window (a quiet window is honestly quiet).
輸入參數kindlimitcategorywithinDays
volatility_for_entity
Volatility for entity
How volatile ONE product or vendor's price has been: a 0-100 volatility score derived from its recorded moves (frequency × average move size), plus change count, net % and last change. Honest gate: below a minimum recorded-change threshold it returns sufficient:false with a note, never a score invented from a single point.
輸入參數kindslug必填
most_volatile_in_category
Most volatile in category
Within one category/theme, the entities whose prices have moved the most (ranked by volatility score), plus the category price baseline (count, median current, low/high). Entities without enough recorded movement are omitted from the ranking but counted in the baseline. Answers 'which X changes price most' for a market.
輸入參數kindlimitcategory必填
list_product_categories
List product categories
Enumerate the spec-driven PRODUCT categories this index covers (physical goods like smartphones, laptops, GPUs — distinct from the software/subscription pricing themes). Each entry carries its slug, product count, the comparable spec keys, and the brands present. Pass a category slug to search_products / compare_products / find_products.
無需輸入參數。
search_products
Search products
Search one product category by free-text query across product name, brand, and spec values (e.g. 'snapdragon 5000mah', 'oled 120hz'). Set `category` to a slug from list_product_categories. Returns full provenanced product records: each price is the price of record its product page prints, with that page's date (priceDate) and citation (priceCite); specs carry source url + accessedAt. Empty query returns all products in the category.
輸入參數querycategory必填
compare_products
Compare products
Compare specific products side by side by slug within a category (e.g. ['apple-iphone-16-pro','samsung-galaxy-s25-ultra'] in 'smartphones'). Returns full provenanced spec records plus a notFound list and the category's comparable specKeys, so an agent can line up the same attributes across products.
輸入參數slugs必填category必填
find_products
Find products (ranked)
For 'best <category> under $N' and 'which <category> has the most <spec>': filters a category by maxPriceUsd and/or brand, then ranks by a field — 'priceUsd' (the price of record each product's page prints; default, cheapest first), 'releaseDate', or any of the category's spec keys (descending:true ranks biggest first, e.g. sortBy:'battery_mah' descending:true). Returns provenanced product records; products missing the sort value sort last. Never infers a spec it has not verified.
輸入參數brandsortBycategory必填descendingmaxPriceUsd
list_cost_decoders
List cost decoders
List the 'real cost' decoders — topics where the advertised sticker price hides the true bill (e.g. AI customer support billed per resolution, where a $29/mo seat price becomes hundreds/mo at volume). Each entry carries the question it answers, the scenarios it computes, the vendor count and the data's as-of date. Pass a topic slug to get_cost_decoder.
無需輸入參數。
get_cost_decoder
Get cost decoder
The REAL all-in monthly cost per vendor for a decoder topic (slug from list_cost_decoders, e.g. 'ai-customer-support-cost'), computed in deterministic code from sourced, dated inputs — each vendor's per-seat price + AI billing model + per-unit price, totalled at named scenarios (e.g. 5 agents at 1,000 and 5,000 AI resolutions/mo) with the arithmetic shown. Quote-only inputs return a null total, never a fabricated number. Optionally pass agents + resolutions for a custom scenario. It answers 'what does <AI tool> actually cost'.
輸入參數topic必填agentsresolutions