Price Drop Back
Server Details
Did the price drop after you bought it? Store price-adjustment rules, deadlines and a claim message.
- Status
- Healthy
- Uptime
- 100.0% over 22 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- GoodTurnStudio/goodturn-mcp
- GitHub Stars
- 0
- Server Listing
- goodturn-mcp
TDQS
Scored across 4 tools
Each tool targets a distinct user intent: evaluating a specific claim, generating a reminder, retrieving a specific store's policy, and listing all stores. While check_price_drop_claim includes a small policy flag, it is clearly separate from get_store_policy and list_stores. No two tools appear to do the same thing.
All tool names use a consistent snake_case verb_noun pattern: check_price_drop_claim, get_claim_reminder, get_store_policy, list_stores. The verbs are distinct and the nouns clearly indicate the target resource.
Four tools are well-scoped for a price-drop claim assistant. Each tool covers a necessary part of the workflow (claim check, reminder, policy lookup, store list) without redundancy. The count is appropriate and no tool feels extraneous.
The surface covers the full lifecycle: checking claim eligibility, generating a reminder file, retrieving store-specific policies, and listing all supported stores including credit card protection. There are no obvious gaps for the stated purpose, and the stateless design (no add/update) is intentional and clearly communicated.
Available Tools
4 toolscheck_price_drop_claimCan I get the difference back?ARead-onlyIdempotentInspect
Can I get the difference back? For requests like "I bought a TV at Best Buy 9 days ago for $499 and it's $449 now, can I get the difference?". Says whether a claim is likely (likely, likely_if_member, unlikely, check or no_drop), the amount, and the steps. With an item name it adds a Cheapest Price link and Amazon and eBay links to check today's price. Likely claims also get claim_message, ready to paste into the store's chat or email. policy.refund_paid_as flags stores that pay store credit (Newegg)
| Name | Required | Description | Default |
|---|---|---|---|
| now | No | Today's price, 0 to 100000 (US dollars, or pounds for UK stores). | |
| item | No | Optional item name, up to 100 characters, to link today's price on Cheapest Price, Amazon and eBay. | |
| paid | No | What you paid, 0 to 100000 (US dollars, or pounds for UK stores). | |
| store | Yes | Store name, up to 60 characters. | |
| country | No | Two-letter country code. GB (or UK) gives the UK policy where the store has one (Apple, Amazon, IKEA) and UK rules; it also picks the price links (US, GB and IE get local Amazon and eBay links). Default from the request. | |
| purchase_date | No | The date you bought it, YYYY-MM-DD, instead of days_since_purchase. Adds deadlines: the last day to claim with the store (and in a members' longer window) and Capital One card protection. | |
| days_since_purchase | No | Days since you bought it (or since delivery), 0 to 400. Give this or purchase_date. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety profile (readOnly, idempotent, non-destructive), and the description usefully adds conditional output behavior: likely levels, claim_message for likely claims, and policy.refund_paid_as flagging store-credit stores. Rich behavioral context beyond the annotations, though return format details remain partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core question and then the return contents, so an agent gets the essentials immediately. The opening sentence duplicates the title and the example quote is slightly verbose, but overall it is dense and purposeful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 7 params, no output schema, and only one required field, the description carries the return-value burden and does so reasonably, enumerating likelihood outcomes, amounts, steps, and message fields. Minor gaps remain around link/deadline edge cases, but nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is already 100%, so the baseline is 3, but the description adds consequence-level meaning: an item name triggers price-check links, purchase_date adds claim deadlines, and country selects UK policy and local links. This goes beyond restating the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action and resource — assessing whether a price-drop claim is likely, with the amount and steps — reinforced by a concrete example request. It is clearly distinguishable from siblings like get_store_policy or list_stores, though it never names them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The example request ('I bought a TV at Best Buy 9 days ago...') makes the intended use case concrete and unambiguous. It stops short of naming alternatives or when-not-to-use conditions, so no explicit routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_claim_reminderCalendar reminder for the last day to claim a price dropARead-onlyIdempotentInspect
Calendar reminder for the last day to claim a price drop. Returns a calendar file (.ics) with an all-day event on the store's last claim day, how to claim and the policy link, with alerts 3 days before and on the day. Nothing is stored. check_price_drop_claim gives this link as add_to_calendar when purchase_date is given and a claim is likely.
| Name | Required | Description | Default |
|---|---|---|---|
| item | No | Optional item name for the event title, up to 100 characters. | |
| store | Yes | Store name. | |
| member | No | Set to true to use the longer members' window where the store has one (for example My Best Buy Plus or Total). | |
| country | No | Two-letter country code. GB (or UK) uses the UK policy where the store has one. Default from the request. | |
| purchase_date | Yes | The date you bought it, YYYY-MM-DD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly/idempotent/non-destructive/openWorld, so the bar is lower, yet the description still adds real value: it details the .ics contents (all-day event, how to claim, policy link), the alert schedule (3 days before and on the day), and that nothing is stored. It stops short of describing failure modes for stores without a claim policy.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences that front-load the deliverable, followed by contents/behavior and then the sibling cross-reference. Every sentence carries weight, though the final routing sentence is slightly compressed with two conditions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully compensates by describing the returned .ics content and alert timing, and all parameters are documented. The main gap is the absence of error/edge behavior (e.g., store with no claim window), which slightly limits completeness for a policy-driven tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters (including the member window and country policy behavior) are already documented in the schema. The description adds only the informal 'store's last claim day' and purchase_date reference, not new syntax or semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and artifact: it produces a calendar reminder (.ics) for the last day to claim a price drop. It is unambiguous against siblings get_store_policy and list_stores, and it explicitly positions itself relative to check_price_drop_claim.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The final sentence tells the agent where the input originates: check_price_drop_claim returns this link as add_to_calendar when purchase_date is given and a claim is likely. That is clear routing context, but it does not state exclusions (e.g., what to do when no claim window exists) or give an explicit 'use this when' clause.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_store_policyA store's price adjustment and price match policyARead-onlyIdempotentInspect
A store's price adjustment and price match policy. For requests like "does Target do price matching?", "does John Lewis refund if the price drops?", "Currys price promise", "what's Best Buy's price adjustment policy?", "will Costco refund the difference?". With an item name it adds links to check today's price.
| Name | Required | Description | Default |
|---|---|---|---|
| item | No | Optional item name, up to 100 characters, to link today's prices for it. | |
| store | Yes | Store name in everyday words, up to 60 characters. | |
| country | No | Two-letter country code. GB (or UK) gives the UK policy where the store has one (Apple, Amazon, IKEA) and UK rules; it also picks the price links (US, GB and IE get local Amazon and eBay links). Default from the request. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, openWorld), so the description's job is to add context. It does: supplying an item name changes the output by adding today's-price links, which is a non-obvious behavioral trait. It doesn't mention latency, coverage limits, or what a policy-less store returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The opening sentence is a verbatim duplicate of the title, which is pure waste. The example list is long but genuinely aids intent matching, and the scoping line about item names is useful, so the description is functional rather than bloated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only lookup with only three fully documented parameters and no output schema, the description supplies enough to call the tool correctly and even hints at the shape of the result when an item is given. It could say more about what the policy payload contains, but nothing required is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters are already documented in the schema, including the item parameter's link-adding behavior. The description merely restates that behavior and adds nothing on store or country syntax, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific resource (a store's price adjustment and price match policy) and anchors it with concrete natural-language queries an agent can match intent against. It does not, however, distinguish itself from the sibling check_price_drop_claim, which the example "will Costco refund the difference?" could plausibly belong to.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The example phrasings give a clear, practical picture of when to reach for this tool over a general store lookup. It stops short of stating any when-not condition or naming an alternative tool for claim checking, so the boundary with check_price_drop_claim remains implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_storesEvery store covered, plus card price protectionBRead-onlyIdempotentInspect
Every store covered, plus card price protection. For requests like "which stores give you money back if the price drops?" or "does my credit card have price protection?". With country=GB, lists the UK policies.
| Name | Required | Description | Default |
|---|---|---|---|
| country | No | Two-letter country code. GB (or UK) lists only stores with a UK policy. Default from the request. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds scope context (it covers all stores plus card-issuer price protection policies), which is real but modest; no pagination, result count, or response-shape context is given.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short clauses and no bloat, but the lead sentence duplicates the title verbatim rather than front-loading the operation the tool performs, so the most useful content (the example queries) is not first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (one optional parameter, annotations covering safety, no output schema), and the description does explain triggering scenarios and country filtering. It is still ambiguous whether the output mixes store policies and card-issuer policies, a distinction the agent needs given the sibling get_store_policy.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the single country parameter is already fully documented, including that GB/UK limits results to UK policies. The description merely echoes the country=GB behavior, adding no syntax or meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening sentence 'Every store covered, plus card price protection' is largely a restatement of the title and never states a clean verb+resource; only the trailing clause 'lists the UK policies' hints at the listing operation. It does not distinguish this tool from sibling get_store_policy, so an agent must infer the difference from the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The example requests ('which stores give you money back if the price drops?', 'does my credit card have price protection?') are genuinely useful routing cues for when to call this tool. However, no alternatives are named and there is no when-not-to-use guidance against get_store_policy or check_price_drop_claim.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
get_claim_reminder1 field changed- changed
Input schema / properties / member / descriptionPrevious value: -"true to use the longer members' window where the store has one (for example My Best Buy Plus or Total)."New value: +"Set to true to use the longer members' window where the store has one (for example My Best Buy Plus or Total)."
4 tool updates
- First observed
check_price_drop_claim - First observed
get_claim_reminder - First observed
get_store_policy - First observed
list_stores
Related MCP Connectors
US return policies, price-match rules, discounts, deals and Amazon price verdicts. Read-only.
Track price drops, stock-outs, restocks, and new/removed products across Shopify stores.
Track prices & price history on any online shop, with alerts and an API
Check a shop page price now, keep a watch list, see history and target alerts. All data stays local.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables tracking post-purchase prices across Shopify, Walmart, Best Buy, and Target, detecting drops within merchant price-match windows, verifying eligibility, and synthesizing automated refund claims.7MIT
- AlicenseNot gradedqualityBmaintenanceEnables users to register post-purchase receipts, monitor retailer price drops within price-match guarantee windows, verify eligibility, and synthesize automated refund claims.7MIT
- FlicenseNot gradedqualityBmaintenanceEnables scanning past order receipts against retailer price-protection policy windows, verifying eligibility, and synthesizing auto-claim refund filing packets for retailers such as Target, Best Buy, Amazon, and Nordstrom.7-
- FlicenseNot gradedqualityBmaintenanceEnables users to scan past order receipts against retailer price-protection policy windows, verify eligibility for retroactive refunds, and synthesize auto-claim filing packets for merchants such as Target, Best Buy, Amazon, and Nordstrom.7-
Glama MCP Gateway
Add one secure layer between your agents and this server.