MCP App Store
by KeenEthics

Overview

Turbodato monitors your products' prices across online retailers and marketplaces every day and compares them against your own site. This connector gives Claude read-only access to the dashboards you already see in Turbodato, so you can ask questions in plain language instead of filtering by hand. Ask things like: - Which of my products are cheaper at a competitor today? - Who is selling below our suggested retail price? - How is our price position in the Beverages category? - Export the price matrix for brand X and summarize the biggest gaps. Tools: - list_clients: the dashboards you can access - get_semaphore: traffic-light summary of how many products are priced above, at or below the competition - get_data: the detailed price matrix per retailer and seller, with filters and sorting - get_suggested_price: MAP/RRP compliance, with the offers below the suggested price, worst first - get_filters and get_dates: valid brands, categories, sites, sellers and dates - export_data: bulk export of up to 500 products for broader analysis Read-only and scoped to your user. Claude sees exactly the dashboards your Turbodato account can see, and access is re-checked on every call. Requires a Turbodato account

Tools

export_data

ChatGPT
Bulk export of the price matrix as JSON, capped at 500 products. For analysis over many products at once; for a handful, get_data is cheaper.

get_category_summary

ChatGPT
The Sellers screen's Categories tab: per category (or brand), across sellers that list on the client's own site and elsewhere, how many seller × product pairs are cheaper elsewhere than on the client's site, similar (within 1%) or pricier. Same reading as get_seller_ranking. Optional feature: on a dashboard without it the call says so — tell the user, and do not rebuild the answer from get_data.

get_data

ChatGPT
Paginated competitive price matrix: products with every observed offer per retailer and seller. For open-ended questions about specific products; for 'who is cheaper' use get_price_gaps, for RRP use get_suggested_price. On clients that sell multi-unit packs, each retailer+seller comes as a packs ladder — compare unitPrice, never price. On brands with a suggested retail price, each product carries suggestedPrice and offers below it are flagged belowRrp: true.

get_dates

ChatGPT
Dates that have price observations for this client. Use one of these as the date filter.

get_filters

ChatGPT
Valid values for the brand, category, seller and site filters, with how many there are. Up to limit per list; use search to find one value ("samsung") instead of listing hundreds of sellers.

get_price_changes

ChatGPT
What changed price between the latest day and the previous day with data (or compare_date): one row per product × site × seller whose price moved, biggest change first, with old and new price. Includes the client's own site (own: true). For 'what went up / down since yesterday?'. bySeller already summarizes the whole day per site and seller (how many offers moved, median/min/max change), so a blanket repricing reads from page 1: do not page through the rows to find it.

get_price_gaps

ChatGPT
The answer to 'what is cheap / where am I being undercut / where am I the cheapest?'. One row per product with the client's own price, the cheapest competitor (site and seller) and the gap in percent, ranked by the gap, biggest first — computed over the whole catalogue in one call. direction=undercut (default): products where some competitor sells below the client's own site. direction=cheapest: products where the client's own site is below every competitor. Same-day comparison against the client's own site, like the dashboard. Prefer this over get_data for any question about who is cheaper. cheapestCompetitor.isYou means that seller is the client itself on another marketplace: report it as a price gap between its own channels, not as a competitor.

get_price_position_summary

ChatGPT
Traffic-light counts over the whole filtered catalogue: red = the client's own price is the highest of all sites carrying the product, green = it is the lowest, yellow = in between or tied. Cheap overall read; for the products behind the counts use get_price_gaps.

get_product

ChatGPT
One product: every offer on the latest day (or date) and its daily price history per site — the cheapest price each site had each day. Find it by name, EAN, SKU or the client's product code; when more than one product matches, the candidates come back instead so you can pick.

get_pvp_breakers_by_seller

ChatGPT
Sellers ranked by how many products they sell below the suggested retail price, with average depth. Pass seller to get that seller's breaking offers instead. Optional feature: on a dashboard without it the call says so — tell the user, and do not rebuild the answer from get_data.

get_seller_ranking

ChatGPT
For clients whose own site is a marketplace where third-party sellers list (the Sellers screen): every seller that sells on the client's site and elsewhere, with in how many products its price elsewhere is lower than on the client's site (cheaperElsewhere), similar (within 1%) or higher. Sorted by cheaperElsewhere. It compares each seller against itself, not against the client — for 'which competitor is cheaper than me' use get_price_gaps, whose rows name the cheapest seller. Optional feature: on a dashboard without it the call says so — tell the user, and do not rebuild the answer from get_data.

get_stockouts

ChatGPT
Who stopped listing what, over the last days. lens=mineOut: products the client's own site stopped listing; rivalOut: products competitors stopped listing; lowOffer: products few sites carry. Returns the counts for all three plus one page of the chosen lens. Optional feature: on a dashboard without it the call says so — tell the user, and do not rebuild the answer from get_data.

get_suggested_price

ChatGPT
Who is selling below the brand's suggested retail price (RRP), counted exactly like the Control de PVP screen. Returns the counters plus one entry per breaching product, worst first, with every seller that breaks it inside. Products the RRP list does not cover are measured against the client's own price that day and carry referenceSource: "ownSite" — say so rather than reporting them as breaking the brand's price. Breakers marked own: true are the client's own site. Optional feature: on a dashboard without it the call says so — tell the user, and do not rebuild the answer from get_data.

list_clients

ChatGPT
List the dashboards (clients) this user can access: id, name, currency, and which optional tools each one has. Only needed when there is more than one: every other tool takes an optional clientId and resolves it on its own when the user has exactly one dashboard.

export_data

Claude

get_data

Claude

get_dates

Claude

get_filters

Claude

get_semaphore

Claude

get_suggested_price

Claude

list_clients

Claude

Example Prompts

Click any prompt to copy it.

Similar Apps