iDevice Buyer's Guide
Measured conclusion: Alive, not deep-tested. L2 outcome: not_attempted.
Independent buyer's guide for wearables and phones: buy now or wait, compatibility, prices. Sourced.
| Author | com.idevice |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Alive, not deep-tested |
| L1 liveness | alive |
| L1 latency | 2608 ms |
| Last measured | 2026-10-26 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"iDevice Buyer's Guide": {
"url": "https://idevice.com/api/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (27)
should_i_buyread-onlyFor one product: buy now, wait, skip or check fit first, optionally for a shopper who already owns a device or uses iPhone or Android, with a budget or a use. Returns a verdict (buy_now, wait, skip, check_fit or not_enough_data) and the rule behind it, reasons that each carry a source link and how sure iDevice is (Confirmed, Reported, Our read or Not confirmed), the fit with the shopper's phone platform, timing (a newer model out, announced or reported), price (iDevice's published verdict and the lowest verified price over the period iDevice has checked it, low_period; none under 30 days of checks), what changed from the model the shopper owns when that comparison is available, and which of those four parts could not be answered. Reported dates are worded as reported. No probability is given. For a shopper who owns the model this one directly replaces, the answer also carries the two parts the /upgrade page on idevice.com says apart: upgrade_merit, whether replacing the owned model is worth it (worth_upgrading, not_a_clear_upgrade, depends_on_your_needs or too_early_to_say), and purchase_timing, whether today is a good time to buy the new one (good_time_to_buy, fine_at_this_price, no_rush, wait_for_price, newer_model_close, price_not_confirmed or not_on_sale_yet), each with its basis, and upgrade_answer, both parts in the page's own words; all five are null for any other question. decision_word is the word iDevice shows for the verdict: BUY NOW, FINE TO BUY (a buy_now because the model is new and at its launch price, with no price signal: no reason to wait, no deal to chase), NO RUSH, WAIT, SKIP, KEEP YOURS, UPGRADE, CHECK FIT, NOT ENOUGH DATA or NEWER MODEL OUT (PRICE NOT CONFIRMED when no price is confirmed for the exact model); the verdict field is the same whichever word is shown. display_label is the same answer in the words idevice.com prints (Good to buy, Fine to buy, No need to rush, Hold off for now, Look elsewhere, Newer model out, Price not confirmed, Keep what you have, Worth upgrading, Check the fit first, Too early to say); say that label to a person, and key on decision_word. A line slug (for example 'samsung-galaxy-ring') names the line's newest model; when that model is not on sale the answer is for the newest model of the line that is, and resolved_to says which and why. With buyer_context, the answer also carries buyer_decision: the personal answer the idevice.com decision page for the same question gives for that context (a recommendation class, its rule_id, the decisive factors, the trade-offs, what would change it and what is unknown, each with its evidence), and buyer_decision_info with the same answer in plain words and the page it belongs to. buyer_decision.base_answers are that page's own answers, which can differ from this tool's answer for a phone platform or a budget given as arguments.
Parameters:
product_slug(required) — string — The product being considered, a product_slug, e.g. 'apple-watch'use_case— string — What it is for, e.g. 'running' or 'sleep tracking'budget_usd— number — A price ceiling in US dollarsbuyer_context— Optional. The shopper's own situation, in the closed grammar of the form on the idevice.com decision pages: { context_version: "buyer-context-v1", context, provenance }. context: currency "USD", risk_tolerance "normal", urgency (today, within_30_days, within_90_days or can_wait), priorities (up to three { id, importance }, importance must_have, high or medium; an id is a use or buying criterion the page can weigh, such as sleep, fitness or battery_life), hard_constraints (up to three: { id: "phone_platform", value: "iphone" or "android" }, { id: "no_subscription", value: true }, { id: "max_budget", value: a dollar amount }), cost_inputs (up to three { kind: offered_price, trade_in or required_accessories, amount, currency "USD", explicit_zero }), and optionally platform, expected_ownership_months (12, 24, 36 or 48), owned_condition and ecosystem_switch_willingness. Amounts are numbers from 0 to 100000 with at most two decimals. provenance: for each hard constraint, "hard_constraints:<id>": "selected" when the shopper stated it; a hard constraint without "selected" is not applied. The products come from this call's own arguments. A context outside the grammar is answered with buyer_decision_info naming the fields to fix, and the rest of the answer is unchanged. The context is used for this one answer and then dropped: it goes into no log.owned_platform— string — The phone platform the shopper usesowned_device_slug— string — A product_slug of a device the shopper already owns, e.g. 'iphone-17'
Hints: read-only yes · destructive no · idempotent yes · open-world no
check_dealread-onlyWhether a price offered for one product is a good deal: GOOD DEAL, NOT A GOOD DEAL or NOT ENOUGH DATA, by the same written rules as should_i_buy. Compares the price with the lowest current retailer price iDevice read today, the lowest verified price of this exact model (over low_period_days, said as low_period; only once iDevice has 30 days of verified checks, and called a 90-day low only when 90 days are covered) and the near-low band the rules use, and gives the buy-or-wait verdict at that price where the rules can state one. Each line says what it rests on. No model is involved and no probability is given. A line slug (for example 'samsung-galaxy-ring') names the line's newest model; when that model is not on sale the answer is for the newest model of the line that is, and resolved_to says which and why.
Parameters:
product_slug(required) — string — The product, a product_slug, e.g. 'oura-ring-4'price_usd(required) — number — The price offered, in US dollarsretailer— string — Where the price was offered, e.g. 'Best Buy'. Repeated in the answer as given.
Hints: read-only yes · destructive no · idempotent yes · open-world no
pick_betweenread-onlyFor two or three products, which one the written buy-or-wait rules put ahead, or that neither is ahead, optionally for a shopper who owns a device or uses iPhone or Android, with a budget. Each product comes with its verdict (buy_now, wait, skip, check_fit or not_enough_data), its fit with the phone given, today's retailer price and the reasons, each with its source and how sure iDevice is. A product that does not work with the phone given goes last; then the verdict decides, then the fit answer. Price alone does not put one ahead. When the rules leave two products level, review_tiebreak says whether outlets' published review scores separate them (at least two independent outlets that reviewed each, all one way, a clear margin) and lists the themes reviewers agree on, each with the outlets that reported it. purchase_today and product_for_you split the answer in two: the better purchase today on the rules, and the better product, named only on the phone or fit answer or on outlets' review scores, else No clear winner; where the companies' own figures lean one way, product_for_you says which product leads on which criteria, conditionally, and names no winner (lead null). A lead on the verdict alone (lead_basis timing) is about when to buy, not which product is better; a product that only reads BUY NOW or FINE TO BUY against NO RUSH is not a lead, and a product whose answer is not_enough_data (NEWER MODEL OUT, NOT ENOUGH DATA) is not out-bought unless the other product is its own newer model already out. The same comparison as the decision card on idevice.com. No model is involved. A line slug (for example 'samsung-galaxy-ring') names the line's newest model; when that model is not on sale the answer is for the newest model of the line that is, and resolved_to says which and why. With buyer_context, the answer also carries buyer_decision: the personal answer the idevice.com decision page for the same question gives for that context (a recommendation class, its rule_id, the decisive factors, the trade-offs, what would change it and what is unknown, each with its evidence), and buyer_decision_info with the same answer in plain words and the page it belongs to. buyer_decision.base_answers are that page's own answers, which can differ from this tool's answer for a phone platform or a budget given as arguments.
Parameters:
product_slugs(required) — array — Two or three product_slugs, e.g. ['oura-ring-4','samsung-galaxy-ring-1']budget_usd— number — A price ceiling in US dollarsbuyer_context— Optional. The shopper's own situation, in the closed grammar of the form on the idevice.com decision pages: { context_version: "buyer-context-v1", context, provenance }. context: currency "USD", risk_tolerance "normal", urgency (today, within_30_days, within_90_days or can_wait), priorities (up to three { id, importance }, importance must_have, high or medium; an id is a use or buying criterion the page can weigh, such as sleep, fitness or battery_life), hard_constraints (up to three: { id: "phone_platform", value: "iphone" or "android" }, { id: "no_subscription", value: true }, { id: "max_budget", value: a dollar amount }), cost_inputs (up to three { kind: offered_price, trade_in or required_accessories, amount, currency "USD", explicit_zero }), and optionally platform, expected_ownership_months (12, 24, 36 or 48), owned_condition and ecosystem_switch_willingness. Amounts are numbers from 0 to 100000 with at most two decimals. provenance: for each hard constraint, "hard_constraints:<id>": "selected" when the shopper stated it; a hard constraint without "selected" is not applied. The products come from this call's own arguments. A context outside the grammar is answered with buyer_decision_info naming the fields to fix, and the rest of the answer is unchanged. The context is used for this one answer and then dropped: it goes into no log.owned_platform— string — The phone platform the shopper usesowned_device_slug— string — A product_slug of a device the shopper already owns, e.g. 'iphone-17'
Hints: read-only yes · destructive no · idempotent yes · open-world no
find_best_deviceread-onlyA short ranked list of on-sale products in one category for a shopper: optionally the phone platform they use, a budget, and up to three priorities from the uses iDevice's Guides assign (for example sleep, running, battery-life, photos-video). Each product comes with its verdict (buy_now or wait), its fit with the phone given, today's retailer price, a one-line reason and its sources, and the place its Guide gives a named priority. In the list: a verdict of Buy now or Wait, and Works or Works with limits with the phone given. Order: the verdict, then the fit answer, then where the product's Guide places a named priority among the uses it lists, then price. A priority outside the Guides' uses is refused and the uses are listed. The same list rule as the decision card on idevice.com. No model is involved. For earbuds, when iDevice's earbuds recommendation is published, the order is that recommendation's instead: quality and fit from independent reviewers' findings, card by card (all-around, music and sound, workouts, noise cancellation, calls, value), with the buy-or-wait verdict shown beside each product, where it does not move the product; the answer adds a recommendation block naming each card's pick, strong choices or why there is none, and reads at most two priorities from calls, sound, anc, workouts and comfort. iDevice's own pick answers first, in every category it covers (earbuds, headphones, watches, fitness trackers, glasses, headsets and phones): the product it names for your question, then the alternatives it names, each with its verdict, fit, price and sources, and a best_answer block with the reviews behind the pick. Your phone and budget decide which products fit you, not which is better. Priorities are the uses the pick covers (for example sleep, running, battery life, calls); a use outside them is refused and the uses are listed.
Parameters:
category(required) — string — The kind of productlimit— integer — How many products, 1 to 5, default 3budget_usd— number — A price ceiling in US dollarspriorities— array — Up to three uses, e.g. ['sleep','battery-life']. A use iDevice's Guides do not assign is refused, with the list.owned_platform— string — The phone platform the shopper uses
Hints: read-only yes · destructive no · idempotent yes · open-world no
whats_comingread-onlyFor one product: its stage, the release window with who stated it (the company, a company event, pre-release reports, or iDevice's own estimate), and the pre-release reports its Guide lists, each with its status (Confirmed, Reported, Expected or Our estimate), the track record of reporting like it with the group that record comes from, how many independent origins and outlets carried it, whether sources disagree, and the outlet and link it names. A detail that has already turned out right or wrong is not listed. The same rows as the Guide's own tab on idevice.com.
Parameters:
product_slug(required) — string — A product_slug, e.g. 'iphone-pro'
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_product_newsread-onlyLatest iDevice news about one product, each story with the sources it rests on. Newest first: the title, the date, the story page on idevice.com, a one-line summary, the kind of story (standalone or cluster) and the outlets and links it is based on (outlet, URL, date). The same stories as the News tab on the product's Guide. Optional limit (default 5, at most 15) and since (YYYY-MM-DD); a company_key returns a company's news instead. A story with no source link says so.
Parameters:
limit— integer — Default 5, max 15since— string — Only stories published on or after this day, YYYY-MM-DDcompany_key— string — A company key such as 'apple' or 'samsung', instead of a product_slugproduct_slug— string — A product_slug, e.g. 'apple-watch'
Hints: read-only yes · destructive no · idempotent yes · open-world no
list_productsread-onlyEvery product iDevice covers, with its lifecycle (reported, announced, preorder, shipping, previous) and how many well-sourced reports it has (can be 0). Each entry includes its product_slug. Optional query filters by name, e.g. 'iphone 18 pro'. A line slug such as 'samsung-galaxy-ring' names the line's newest model (which can be one not yet on sale); a generation slug such as 'samsung-galaxy-ring-1' names one model; is_line: true marks a line slug, and part_of names a generation's line. Up to 20 entries per call with the total; a query narrows a longer list.
Parameters:
query— string — Words in the product name, e.g. 'galaxy ring'
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_productread-onlyLifecycle, official or estimated price, key dates, availability (on sale or not, release date and its basis, where to buy), report count and how well-sourced the reports are. Works for products with no reports yet.
Parameters:
product_slug(required) — string — A product_slug, e.g. 'apple-watch'
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_product_factsread-onlyOfficial price (only when it was officially announced or is sold officially; otherwise labelled as an estimate), announcement and availability dates with their source, availability (is it on sale, and where to buy with the last price we read), a short compatibility summary, and specs. Every spec is marked Confirmed, Reported, Our read or Not confirmed, with the source outlet and date.
Parameters:
product_slug(required) — string — A product_slug, e.g. 'apple-watch'
Hints: read-only yes · destructive no · idempotent yes · open-world no
compare_productsread-onlySide-by-side specs for 2 or 3 products, from the same engine as idevice.com/compare. Each cell carries Confirmed/Reported/Our read and its source outlet and date. Products in different categories are compared on shared structured facts only. Optional specs filters rows by keyword, e.g. ['battery','sleep'].
Parameters:
product_slugs(required) — array — e.g. ['oura-ring-4','samsung-galaxy-ring-1']specs— array — Keywords to keep only matching rows
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_compatibilityread-onlyWhether a product works with a given phone or device, from its Guide's Works with tab: iPhone, Android, apps, other devices and standards. Each answer says Works, Works with limits (to a person, say "Some features missing" and name what is missing), Needs extra hardware, Does not work or Not confirmed, with its requirements, limits, an evidence word (Confirmed, Reported, Our read or Not confirmed) and the source page link. Not confirmed means unknown, never incompatible. Optional query narrows to one thing, e.g. 'iphone' or 'android'.
Parameters:
product_slug(required) — string — A product_slug, e.g. 'apple-airpods-pro-3'query— string — What it should work with, e.g. 'iphone', 'android', 'ps5'
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_reportsread-onlyEvery well-sourced pre-release report for one product, each with its status (Right, Partly right, Wrong, Never settled, Not comparable, Not checked yet, No outcome yet), how many outlets reported it, who reported it first, and a link to the evidence on idevice.com.
Parameters:
product_slug(required) — string — A product_slug, e.g. 'apple-glasses'category— string — Filter by report type, e.g. 'hardware', 'design', 'pricing'
Hints: read-only yes · destructive no · idempotent yes · open-world no
search_reportsread-onlyFind well-sourced pre-release reports by keyword across every covered product, e.g. 'battery', 'display', 'price'. Each result carries its status and product lifecycle.
Parameters:
query(required) — string — Keyword or phraselimit— integer — Default 20, max 20
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_in_the_boxread-onlyWhat ships in the box for one product, per model or configuration, as the official product page states it: each item, its quantity, whether it is included (false means the official page says it is not), and the page it came from. Optional variant narrows to one configuration.
Parameters:
product_slug(required) — string — A product_slug, e.g. 'apple-watch'variant— string — Part of a configuration name, e.g. 'Pro'
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_release_historyread-onlyEvery generation of a product's line with its announcement and release dates, sources and launch price, plus the gaps between releases: mean, median, shortest and longest, in days and months.
Parameters:
product_slug(required) — string — A product_slug, e.g. 'apple-watch'
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_reviewsread-onlyWhat other outlets scored one product: the Review Consensus (a normalized average, shown only from two scored reviews by two different publishers), the themes reviewers agree on, and each review with its outlet, published rating and link. The scores are the outlets' work; iDevice did not test these products for them.
Parameters:
product_slug(required) — string — A product_slug, e.g. 'apple-watch'
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_price_historyread-onlyDated prices for one product: today's verified price for this exact model (price_verified; when it is not verified the price is null and price_unverified_reason says Price not confirmed and why), when iDevice began checking it (tracking_since) and on how many days (history_days). Lows come only from verified checks of this exact model, one price a day: none under 30 days of checks; from 30 to 89 days the low (lowest_checked) with the days it covers (low_period_days, low_period), and lowest_last_30_days with the 30-day low and high; lowest_last_90_days only when 90 days are covered. Also the researched history (first and last observation, range, the points themselves, with bundles and refurbs marked and left out of the range).
Parameters:
product_slug(required) — string — A product_slug, e.g. 'apple-watch'
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_detailed_factsread-onlyEvery individual fact for one product, grouped by topic: water and durability, temperature, battery and charging, display, camera, audio, connectivity, health sensors, lenses and sun, size and weight, chip and software. Each carries its value, unit, who stated it (Confirmed is an official first-party statement) and the source page. Optional topic narrows the list, e.g. 'temperature' or 'battery'. A product with more than 20 facts is read in pages with offset and limit.
Parameters:
product_slug(required) — string — A product_slug, e.g. 'apple-watch'limit— integer — Facts per page. Default and maximum 20.topic— string — A topic or keyword, e.g. 'water', 'temperature', 'camera'offset— integer — How many facts to skip, to read the next page. Default 0.
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_release_calendarread-onlyProducts not yet on sale, in date order: a release date, an announcement event, or a window shown as written (for example Fall 2026), each with who stated it (Announced by the company, Company event, Reported date, Reported window, iDevice estimate) and how many pre-release reports it has. Defaults to the next 120 days; optional from and to (YYYY-MM-DD, at most one year), category (watches, earbuds, glasses, phones, rings) and company narrow it. Products with no dated or sourced window are counted, not listed.
Parameters:
to— string — Last day, YYYY-MM-DD. Default 120 days after from; at most 366 days.from— string — First day, YYYY-MM-DD. Default today.company— string — A company or brand word, e.g. 'apple', 'samsung', 'meta'category— string — A category word, e.g. 'watches', 'earbuds', 'glasses', 'phones', 'rings'
Hints: read-only yes · destructive no · idempotent yes · open-world no
find_productsread-onlyWhat is on sale in one category (glasses, rings, watches, earbuds, phones, headsets, fitness trackers), optionally at or under a price or from one company, cheapest first. Each carries its current retailer price with the retailer and date, its list price, iDevice's published verdict and the Guide link. Current and previous models are listed; pre-orders and unreleased products are in get_release_calendar.
Parameters:
category(required) — string — glasses, rings, watches, earbuds, phones, headsets or fitness trackerscompany— string — A company or brand word, e.g. 'apple', 'samsung', 'meta'max_price— number — Price ceiling in US dollarsworks_with— string — Keep only products that work with this, e.g. 'iPhone', 'Android' or a device name. Not confirmed counts as unknown, not incompatible.
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_guide_summaryread-onlyThe buying summary of one product's Guide: its one-line summary and bottom line, the at-a-glance facts, price and dates, where it sits in its line (the newest released model), and the facts that bear on buying now or waiting: whether a newer model is out or announced, the expected window with who stated it, the current retailer read against the list price and the lowest and typical price seen, and iDevice's published verdict with its reasons.
Parameters:
product_slug(required) — string — A product_slug, e.g. 'apple-airpods-pro-3'
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_report_cardread-onlyA roll-up of one product's pre-release reports by how they turned out (Right, Partly right, Wrong, Never settled, Not comparable, Not checked yet, No outcome yet), and the reports themselves, newest first: the date, a one-sentence summary, who reported it, the outlet that carried it, its status and a link on idevice.com. Optional query narrows the reports to words in the summary or the outlet.
Parameters:
product_slug(required) — string — A product_slug, e.g. 'apple-watch'query— string — Words to look for in the reports, e.g. 'battery' or 'Gurman'
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_ownership_factsread-onlyWhat owning one product involves, each fact with its source page and date: the official return window, who pays return shipping and any restocking fee; the warranty length and what it covers; whether a subscription is needed, its price and the first-year cost where the price and billing period are both stated; the official support status as of a stated date; and published recalls, service programs and security-update windows. Optional section narrows the answer to one part.
Parameters:
product_slug(required) — string — A product_slug, e.g. 'apple-watch'section— string — Only this part: returns, warranty, subscription, support or programs (recalls and service programs)
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_best_forread-onlyWhat a product is best for, from its Guide's Best For: up to three uses, each with a one-line reason and how it is known (the official page, the specification, a reported detail, or iDevice's own judgement). Or pass use_case (for example 'sleep', 'running', 'gaming', 'travel', 'photos and video') with an optional category to list the products on sale whose Guide puts that use in its top three.
Parameters:
category— string — Narrows a use_case search: glasses, rings, watches, earbuds, phones, headsets, fitness trackers or pendantsuse_case— string — A use, e.g. 'sleep', 'running', 'gaming'. With no product_slug, lists the products best for it.product_slug— string — A product_slug, e.g. 'oura-ring-4'. Gives that product's own uses.
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_variants_and_offersread-onlyThe configurations of one product with their launch prices, to answer '$399 for which one?': storage, size, colour and material, each with its source; the retailer listings that are this exact model; and the conditions retailers attach to a member price, coupon, bundle, refurbished or trade-in offer, for the retailers where iDevice has read a price for it. Pass retailer (for example 'Best Buy') to see one store's conditions, with or without a product.
Parameters:
retailer— string — A store name, e.g. 'Best Buy', 'Costco', 'Verizon'. Adds that store's offer conditions.product_slug— string — A product_slug, e.g. 'oura-ring-4'
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_company_profileread-onlyA company as iDevice's public directory lists it: its name, homepage and a short description, the categories iDevice covers for it, and each of its products that has a Guide, with lifecycle, price and the Guide link. Pass the company's name or key, for example 'oura' or 'Samsung'.
Parameters:
company(required) — string — A company name or key, e.g. 'oura', 'Samsung', 'meta'
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_guide_extrasread-onlyThree parts of the Guide: section 'timeline' gives a product's Timeline tab events, oldest first, with their sources, plus the official lifecycle dates; section 'faq' gives the Guide's questions and answers (optional query narrows them); section 'glossary' defines one term, the same text as the Guide's mouse-over.
Parameters:
section(required) — string — timeline, faq or glossaryterm— string — The term to define, e.g. 'field of view'. Needed for glossary.query— string — For faq: words to look for in the questions and answersproduct_slug— string — A product_slug, e.g. 'apple-watch'. Needed for timeline and faq.
Hints: read-only yes · destructive no · idempotent yes · open-world no
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.