refund-decide
Server Details
Refund eligibility notary for US subscriptions. Returns ALLOWED/DENIED/UNKNOWN.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- decidefyi/decide
- GitHub Stars
- 1
- Server Listing
- decide
TDQS
Scored across 1 tool
With only one tool, there is no possibility of confusion or overlap; refund_eligibility has a clearly stated purpose.
The name is clear and matches the server's purpose, but it is a noun phrase rather than an imperative verb_noun form, so the pattern is not fully conventional.
A single tool is borderline; it is non-trivial and focused, but the server feels thin for broader refund workflow coverage.
The core eligibility decision is covered, but there are minor gaps such as inspecting rule versions or returning explicit reasons for UNKNOWN outcomes.
Available Tools
1 toolrefund_eligibilityCheck refund eligibilityARead-onlyIdempotentInspect
Evaluate a US consumer subscription refund against versioned source-backed rules. Returns UNKNOWN when required conditions are absent or the vendor requires approval or manual policy review.
| Name | Required | Description | Default |
|---|---|---|---|
| plan | Yes | Plan type. Currently only 'individual' plans are supported. | |
| region | Yes | Region code. Currently only 'US' is supported. | |
| vendor | Yes | Vendor identifier (lowercase, underscore-separated). | |
| days_since_purchase | Yes | Number of days since the subscription was purchased. | |
| qualifying_conditions_met | No | Required when the vendor policy has source-specific conditions such as first purchase, unused benefits, or an eligible annual plan. |
Output Schema
| Name | Required | Description |
|---|---|---|
| code | Yes | |
| vendor | No | |
| message | Yes | |
| verdict | Yes | |
| refundable | No | |
| source_hash | No | |
| window_days | No | |
| evaluated_at | No | |
| rules_version | No | |
| policy_version | No | |
| automation_safe | No | |
| policy_evidence | No | |
| rulebook_result | No | |
| required_context | No | |
| policy_source_url | No | |
| days_since_purchase | No | |
| policy_last_checked | No | |
| policy_source_notes | No | |
| policy_last_verified_utc | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey read-only, idempotent, and non-destructive behavior. The description adds meaningful behavioral detail beyond that: it evaluates against 'versioned source-backed rules' and returns UNKNOWN when required conditions are absent or the vendor requires approval/manual review. This helps an agent predict edge-case outcomes.
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 description is compact and front-loaded. Two sentences convey the core purpose, the rule source, and the important UNKNOWN outcome. There is no redundant wording or filler.
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?
An output schema exists, so the description need not document return values. The description covers the key behavioral nuance (UNKNOWN cases) and the source-backed nature of the rules. It is complete for most use cases, though it could briefly clarify when someone should prefer return_eligibility or cancellation_penalty.
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 schema already documents all parameters well. The description's mention of 'required conditions are absent' loosely relates to qualifying_conditions_met, but it does not add substantive per-parameter meaning beyond what the schema already provides.
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 clearly states a specific verb and resource: 'Evaluate a US consumer subscription refund.' It is unambiguous about what the tool checks. However, it does not explicitly differentiate itself from siblings like return_eligibility, cancellation_penalty, or trial_terms; the distinction is only implicit through the word 'refund.'
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 description gives clear context for when the tool is relevant: US consumer subscription refund eligibility checks. It does not state exclusions or explicitly direct the agent to alternatives, so it stops short of a 5, but the intended use is reasonably evident.
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
refund_eligibility3 fields changed- added
Output schema / properties / automation_safeAdded value: +{ + "type": "boolean" +} - added
Output schema / properties / policy_evidenceAdded value: +{ + "additionalProperties": true, + "properties": { + "checked_at": { + "type": "string" + }, + "current": { + "type": "boolean" + }, + "evaluated_at": { + "type": "string" + }, + "policy": { + "enum": [ + "refund", + "cancel", + "return", + "trial" + ], + "type": "string" + }, + "policy_version": { + "type": "string" + }, + "reason": { + "type": "string" + }, + "schema_version": { + "enum": [ + "policy_evidence_v1" + ], + "type": "string" + }, + "snapshot_generated_at": { + "type": "string" + }, + "snapshot_hash": { + "type": "string" + }, + "source_hash": { + "type": "string" + }, + "source_url": { + "type": "string" + }, + "status": { + "enum": [ + "current", + "expired", + "unavailable", + "review_required" + ], + "type": "string" + }, + "valid_until": { + "type": [ + "string", + "null" + ] + }, + "vendor": { + "type": "string" + }, + "verified_at": { + "type": "string" + } + }, + "required": [ + "schema_version", + "policy", + "vendor", + "status", + "reason", + "current", + "evaluated_at" + ], + "type": "object" +} - changed
Output schema / properties / refundable / typePrevious value: -"boolean"New value: +[ + "boolean", + "null" +]
1 tool update
- Changed
refund_eligibility2 fields changed- added
Input schema / properties / qualifying_conditions_metAdded value: +{ + "description": "Required when the vendor policy has source-specific conditions such as first purchase, unused benefits, or an eligible annual plan.", + "type": "boolean" +} - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "code": { + "type": "string" + }, + "days_since_purchase": { + "type": "number" + }, + "evaluated_at": { + "type": "string" + }, + "message": { + "type": "string" + }, + "policy_last_checked": { + "type": "string" + }, + "policy_last_verified_utc": { + "type": "string" + }, + "policy_source_notes": { + "type": "string" + }, + "policy_source_url": { + "type": "string" + }, + "policy_version": { + "type": "string" + }, + "refundable": { + "type": "boolean" + }, + "required_context": { + "items": { + "type": "string" + }, + "type": "array" + }, + "rulebook_result": { + "additionalProperties": true, + "type": "object" + }, + "rules_version": { + "type": "string" + }, + "source_hash": { + "type": "string" + }, + "vendor": { + "type": "string" + }, + "verdict": { + "enum": [ + "ALLOWED", + "DENIED", + "UNKNOWN" + ], + "type": "string" + }, + "window_days": { + "type": "number" + } + }, + "required": [ + "verdict", + "code", + "message" + ], + "type": "object" +}
1 tool update
- Changed
refund_eligibility1 field changed- changed
Input schema / properties / vendor / enumPrevious value: -[ - "1password", - "adobe", - "amazon_music_unlimited", - "amazon_prime", - "apple_app_store", - "apple_arcade", - "apple_music", - "apple_tv_plus", - "audible", - "bitwarden", - "bumble", - "calm", - "canva", - "chatgpt_plus", - "claude_pro", - "coursera_plus", - "crunchyroll", - "deezer", - "discord_nitro", - "disney_plus", - "doordash_dashpass", - "dropbox_us", - "duolingo", - "espn_plus", - "evernote", - "expressvpn", - "figma", - "fubo_tv", - "github_pro", - "google_one", - "google_play", - "grammarly", - "headspace", - "hellofresh", - "hinge", - "hulu", - "icloud_plus", - "instacart_plus", - "kindle_unlimited", - "linkedin_premium", - "masterclass", - "max", - "microsoft_365", - "midjourney", - "netflix", - "nintendo_switch_online", - "noom", - "nordvpn", - "notion", - "paramount_plus", - "peacock", - "peloton", - "playstation_plus", - "proton", - "ring_protect", - "scribd", - "shutterstock", - "slack", - "sling_tv", - "spotify", - "squarespace", - "strava", - "surfshark", - "tidal", - "tinder", - "todoist", - "twitch", - "uber_one", - "walmart_plus", - "wix", - "xbox_game_pass", - "youtube_premium", - "youtube_tv", - "zoom" -]New value: +[ + "1password", + "adobe", + "amazon_music_unlimited", + "amazon_prime", + "amc_plus", + "apple_app_store", + "apple_arcade", + "apple_music", + "apple_tv_plus", + "audible", + "bitwarden", + "britbox", + "bumble", + "calm", + "canva", + "chatgpt_plus", + "claude_pro", + "coursera_plus", + "crunchyroll", + "dashlane", + "deezer", + "discord_nitro", + "discovery_plus", + "disney_plus", + "doordash_dashpass", + "dropbox_us", + "duolingo", + "ea_play", + "espn_plus", + "evernote", + "expressvpn", + "figma", + "fitbit_premium", + "fubo_tv", + "github_pro", + "google_one", + "google_play", + "grammarly", + "headspace", + "hellofresh", + "hinge", + "hulu", + "icloud_plus", + "instacart_plus", + "keeper", + "kindle_unlimited", + "lastpass", + "linkedin_premium", + "masterclass", + "max", + "microsoft_365", + "midjourney", + "mlb_tv", + "myfitnesspal_premium", + "netflix", + "new_york_times", + "nfl_plus", + "nintendo_switch_online", + "noom", + "nordvpn", + "notion", + "paramount_plus", + "patreon", + "peacock", + "peloton", + "playstation_plus", + "proton", + "reddit_premium", + "ring_protect", + "roblox_premium", + "scribd", + "shutterstock", + "siriusxm", + "slack", + "sling_tv", + "snapchat_plus", + "soundcloud_go", + "spotify", + "squarespace", + "starz", + "strava", + "substack", + "surfshark", + "telegram_premium", + "tidal", + "tinder", + "todoist", + "twitch", + "uber_one", + "ubisoft_plus", + "wall_street_journal", + "walmart_plus", + "washington_post", + "weightwatchers", + "wix", + "x_premium", + "xbox_game_pass", + "youtube_premium", + "youtube_tv", + "zoom" +]
1 tool update
- Changed
refund_eligibility1 field changed- changed
Input schema / properties / vendor / enumPrevious value: -[ - "1password", - "adobe", - "amazon_prime", - "apple_app_store", - "apple_music", - "apple_tv_plus", - "audible", - "bitwarden", - "bumble", - "calm", - "canva", - "chatgpt_plus", - "claude_pro", - "coursera_plus", - "crunchyroll", - "deezer", - "disney_plus", - "doordash_dashpass", - "dropbox_us", - "duolingo", - "evernote", - "expressvpn", - "figma", - "fubo_tv", - "github_pro", - "google_play", - "grammarly", - "headspace", - "hellofresh", - "hinge", - "hulu", - "icloud_plus", - "instacart_plus", - "linkedin_premium", - "masterclass", - "max", - "microsoft_365", - "midjourney", - "netflix", - "nintendo_switch_online", - "noom", - "nordvpn", - "notion", - "paramount_plus", - "peacock", - "peloton", - "playstation_plus", - "scribd", - "shutterstock", - "slack", - "sling_tv", - "spotify", - "squarespace", - "strava", - "surfshark", - "tidal", - "tinder", - "todoist", - "twitch", - "walmart_plus", - "wix", - "xbox_game_pass", - "youtube_premium", - "zoom" -]New value: +[ + "1password", + "adobe", + "amazon_music_unlimited", + "amazon_prime", + "apple_app_store", + "apple_arcade", + "apple_music", + "apple_tv_plus", + "audible", + "bitwarden", + "bumble", + "calm", + "canva", + "chatgpt_plus", + "claude_pro", + "coursera_plus", + "crunchyroll", + "deezer", + "discord_nitro", + "disney_plus", + "doordash_dashpass", + "dropbox_us", + "duolingo", + "espn_plus", + "evernote", + "expressvpn", + "figma", + "fubo_tv", + "github_pro", + "google_one", + "google_play", + "grammarly", + "headspace", + "hellofresh", + "hinge", + "hulu", + "icloud_plus", + "instacart_plus", + "kindle_unlimited", + "linkedin_premium", + "masterclass", + "max", + "microsoft_365", + "midjourney", + "netflix", + "nintendo_switch_online", + "noom", + "nordvpn", + "notion", + "paramount_plus", + "peacock", + "peloton", + "playstation_plus", + "proton", + "ring_protect", + "scribd", + "shutterstock", + "slack", + "sling_tv", + "spotify", + "squarespace", + "strava", + "surfshark", + "tidal", + "tinder", + "todoist", + "twitch", + "uber_one", + "walmart_plus", + "wix", + "xbox_game_pass", + "youtube_premium", + "youtube_tv", + "zoom" +]
1 tool update
- Changed
refund_eligibility3 fields changed- changed
Input schema / properties / days_since_purchase / descriptionPrevious value: -"Number of days since the subscription was purchased. Must be a non-negative number."New value: +"Number of days since the subscription was purchased." - changed
Input schema / properties / vendor / descriptionPrevious value: -"Vendor identifier (lowercase, underscore-separated). Supported: 1password, adobe, amazon_prime, apple_app_store, apple_music, apple_tv_plus, audible, bitwarden, bumble, calm, canva, chatgpt_plus, claude_pro, coursera_plus, crunchyroll, deezer, disney_plus, doordash_dashpass, dropbox_us, duolingo, evernote, expressvpn, figma, fubo_tv, github_pro, google_play, grammarly, headspace, hellofresh, hinge, hulu, icloud_plus, instacart_plus, linkedin_premium, masterclass, max, microsoft_365, midjourney, netflix, nintendo_switch_online, noom, nordvpn, notion, paramount_plus, peacock, peloton, playstation_plus, scribd, shutterstock, slack, sling_tv, spotify, squarespace, strava, surfshark, tidal, tinder, todoist, twitch, walmart_plus, wix, xbox_game_pass, youtube_premium, zoom"New value: +"Vendor identifier (lowercase, underscore-separated)." - added
Input schema / properties / vendor / enumAdded value: +[ + "1password", + "adobe", + "amazon_prime", + "apple_app_store", + "apple_music", + "apple_tv_plus", + "audible", + "bitwarden", + "bumble", + "calm", + "canva", + "chatgpt_plus", + "claude_pro", + "coursera_plus", + "crunchyroll", + "deezer", + "disney_plus", + "doordash_dashpass", + "dropbox_us", + "duolingo", + "evernote", + "expressvpn", + "figma", + "fubo_tv", + "github_pro", + "google_play", + "grammarly", + "headspace", + "hellofresh", + "hinge", + "hulu", + "icloud_plus", + "instacart_plus", + "linkedin_premium", + "masterclass", + "max", + "microsoft_365", + "midjourney", + "netflix", + "nintendo_switch_online", + "noom", + "nordvpn", + "notion", + "paramount_plus", + "peacock", + "peloton", + "playstation_plus", + "scribd", + "shutterstock", + "slack", + "sling_tv", + "spotify", + "squarespace", + "strava", + "surfshark", + "tidal", + "tinder", + "todoist", + "twitch", + "walmart_plus", + "wix", + "xbox_game_pass", + "youtube_premium", + "zoom" +]
1 tool update
- Changed
refund_eligibility1 field changed- changed
Input schema / properties / vendor / descriptionPrevious value: -"Vendor identifier (lowercase, underscore-separated). Supported: 1password, adobe, amazon_prime, apple_app_store, apple_music, apple_tv_plus, audible, bumble, calm, canva, chatgpt_plus, claude_pro, coursera_plus, disney_plus, doordash_dashpass, dropbox_us, duolingo, evernote, expressvpn, github_pro, google_play, grammarly, headspace, hinge, hulu, instacart_plus, linkedin_premium, masterclass, max, microsoft_365, midjourney, netflix, nintendo_switch_online, nordvpn, notion, paramount_plus, peacock, peloton, playstation_plus, slack, spotify, strava, tidal, tinder, walmart_plus, xbox_game_pass, youtube_premium, zoom"New value: +"Vendor identifier (lowercase, underscore-separated). Supported: 1password, adobe, amazon_prime, apple_app_store, apple_music, apple_tv_plus, audible, bitwarden, bumble, calm, canva, chatgpt_plus, claude_pro, coursera_plus, crunchyroll, deezer, disney_plus, doordash_dashpass, dropbox_us, duolingo, evernote, expressvpn, figma, fubo_tv, github_pro, google_play, grammarly, headspace, hellofresh, hinge, hulu, icloud_plus, instacart_plus, linkedin_premium, masterclass, max, microsoft_365, midjourney, netflix, nintendo_switch_online, noom, nordvpn, notion, paramount_plus, peacock, peloton, playstation_plus, scribd, shutterstock, slack, sling_tv, spotify, squarespace, strava, surfshark, tidal, tinder, todoist, twitch, walmart_plus, wix, xbox_game_pass, youtube_premium, zoom"
1 tool update
- Changed
refund_eligibility1 field changed- changed
Input schema / properties / vendor / descriptionPrevious value: -"Vendor identifier (lowercase, underscore-separated). Supported: adobe, apple_app_store, canva, dropbox_us, google_play, microsoft_365, netflix, notion, spotify"New value: +"Vendor identifier (lowercase, underscore-separated). Supported: 1password, adobe, amazon_prime, apple_app_store, apple_music, apple_tv_plus, audible, bumble, calm, canva, chatgpt_plus, claude_pro, coursera_plus, disney_plus, doordash_dashpass, dropbox_us, duolingo, evernote, expressvpn, github_pro, google_play, grammarly, headspace, hinge, hulu, instacart_plus, linkedin_premium, masterclass, max, microsoft_365, midjourney, netflix, nintendo_switch_online, nordvpn, notion, paramount_plus, peacock, peloton, playstation_plus, slack, spotify, strava, tidal, tinder, walmart_plus, xbox_game_pass, youtube_premium, zoom"
1 tool update
- First observed
refund_eligibility
Related MCP Connectors
Score a subscription flow against US click-to-cancel / auto-renewal laws.
11Fail-closed refund, cancellation, return, and trial checks for 100 US subscription vendors.
Read-only BUY / WAIT / AVOID spend gate for paid APIs, MCP endpoints, and x402 routes.
US return policies, price-match rules, discounts, deals and Amazon price verdicts. Read-only.
Related MCP Servers
- AlicenseAqualityCmaintenanceDeterministically evaluates whether a proposed agent spend action matches a supplied policy, returning ELIGIBLE, DENY, or STEP_UP with stable reason codes. Provides local policy evidence only, not payment authorization.134 npmMIT
- FlicenseNot gradedqualityBmaintenanceEnables AI shopping agents to verify whether a specific product can be returned by supplying a product URL and buyer country, returning a verified verdict with exact policy clauses, return window, and confidence score.-
- FlicenseNot gradedqualityBmaintenanceEnables AI assistants to resolve carrier-exception refunds, auto-executing a bounded refund when a strict policy passes or creating a manager-approval escalation otherwise, with idempotent and concurrency-safe operations.-
- AlicenseNot gradedqualityCmaintenanceEnables MCP tool calls for order status checking and refund issuance, secured with cryptographic identity proofs and delegation credentials, automatically approving refunds under $50 while requiring human authorization for larger amounts.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.