Refund Decide

Refund Decide

ndkasndakn

Provides automated refund eligibility decisions for US consumer subscriptions using deterministic rules. Acts as a neutral notary service to determine if customers qualify for refunds.

Deterministic refund eligibility notary for US consumer subscriptions.

176 views3Remote

What it does

  • Evaluate refund eligibility for subscription services
  • Apply deterministic refund rules consistently
  • Generate refund decision reports
  • Validate subscription cancellation requests
  • Process US consumer protection compliance checks

Best for

SaaS companies handling subscription refundsCustomer service teams processing cancellationsFinancial operations requiring audit trailsBusinesses ensuring consumer protection compliance
Deterministic decisions with consistent outcomesUS consumer protection focusedStreamable HTTP transport

About Refund Decide

Refund Decide is a community-built MCP server published by ndkasndakn that provides AI assistants with tools and capabilities via the Model Context Protocol. Refund Decide — deterministic notary for US subscriptions. Verify subscription refund eligibility and prevent subscripti It is categorized under finance, developer tools.

How to install

You can install Refund Decide in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server supports remote connections over HTTP, so no local installation is required.

License

Refund Decide is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

decide.fyi

Decision API + MCP notaries for deterministic system and agent decisions

Version MCP Vendors

One-Click Install

Add to Cursor Install in VS Code Add to Claude Add to ChatGPT Add to Codex Add to Gemini

Buttons install the Refund Notary server. To add all 4 servers, use the JSON config below.

MCP Servers

ServerDomainToolVerdicts
Refund Notaryrefund.decide.fyirefund_eligibilityALLOWED / DENIED / UNKNOWN
Cancel Notarycancel.decide.fyicancellation_penaltyFREE_CANCEL / PENALTY / LOCKED / UNKNOWN
Return Notaryreturn.decide.fyireturn_eligibilityRETURNABLE / EXPIRED / NON_RETURNABLE / UNKNOWN
Trial Notarytrial.decide.fyitrial_termsTRIAL_AVAILABLE / NO_TRIAL / UNKNOWN

All servers: 100 vendors, US region, individual plans, stateless, no auth, 100 req/min.

Quick Start

Connect via MCP (Claude Desktop / Windsurf / other clients)

{
  "mcpServers": {
    "refund-decide": { "url": "https://refund.decide.fyi/api/mcp" },
    "cancel-decide": { "url": "https://cancel.decide.fyi/api/mcp" },
    "return-decide": { "url": "https://return.decide.fyi/api/mcp" },
    "trial-decide":  { "url": "https://trial.decide.fyi/api/mcp" }
  }
}

REST API

# Refund eligibility
curl -X POST https://refund.decide.fyi/api/v1/refund/eligibility \
  -H "Content-Type: application/json" \
  -d '{"vendor":"adobe","days_since_purchase":12,"region":"US","plan":"individual"}'

# Cancellation penalty
curl -X POST https://cancel.decide.fyi/api/v1/cancel/penalty \
  -H "Content-Type: application/json" \
  -d '{"vendor":"adobe","region":"US","plan":"individual"}'

# Return eligibility
curl -X POST https://return.decide.fyi/api/v1/return/eligibility \
  -H "Content-Type: application/json" \
  -d '{"vendor":"adobe","days_since_purchase":12,"region":"US","plan":"individual"}'

# Trial terms
curl -X POST https://trial.decide.fyi/api/v1/trial/terms \
  -H "Content-Type: application/json" \
  -d '{"vendor":"adobe","region":"US","plan":"individual"}'

Local Dev Checks

Start local dev server:

npx vercel dev

In a separate terminal:

# Handler-level smoke checks (no running server required)
npm run smoke

# MCP endpoint checks (requires vercel dev running on localhost:3000)
npm run mcp:check

# End-to-end workflow fixture (example -> result)
npm run workflow:test

Zendesk Workflow Orchestrators

Use workflow endpoints when you want one request to return:

  • decision classification (yes | no | tie) from /api/decide
  • policy result from the relevant notary endpoint
  • recommended Zendesk action + tags + private note with request_id

Endpoints

  • POST https://refund.decide.fyi/api/v1/workflows/zendesk/refund
  • POST https://cancel.decide.fyi/api/v1/workflows/zendesk/cancel
  • POST https://return.decide.fyi/api/v1/workflows/zendesk/return
  • POST https://trial.decide.fyi/api/v1/workflows/zendesk/trial

Request

{
  "ticket_id": "ZD-9001",
  "workflow_type": "refund",
  "question": "Should this Adobe annual plan refund request proceed under policy?",
  "vendor": "adobe",
  "region": "US",
  "plan": "individual",
  "days_since_purchase": 5
}

For refund and return, include days_since_purchase.

Deterministic test mode

Set decision_override to bypass model classification during fixtures and CI:

{
  "decision_override": "yes"
}

Response (example)

{
  "ok": true,
  "flow": "zendesk_refund_v1",
  "ticket_id": "ZD-9001",
  "decision": { "c": "yes", "request_id": "req_123" },
  "policy": { "verdict": "ALLOWED", "code": "WITHIN_WINDOW" },
  "action": {
    "type": "approve_refund",
    "zendesk_tags": ["decide", "decide_yes", "refund_allowed"]
  }
}

Refund Notary

Endpoint: POST https://refund.decide.fyi/api/v1/refund/eligibility MCP Tool: refund_eligibility

Checks if a subscription purchase is within the vendor's refund window.

Input: vendor, days_since_purchase, region, plan

{"refundable":true,"verdict":"ALLOWED","code":"WITHIN_WINDOW","message":"Refund is allowed. Purchase is 12 day(s) old, within 14 day window.","vendor":"adobe","window_days":14}

Codes: WITHIN_WINDOW, OUTSIDE_WINDOW, NO_REFUNDS, UNSUPPORTED_VENDOR

Cancel Notary

Endpoint: POST https://cancel.decide.fyi/api/v1/cancel/penalty MCP Tool: cancellation_penalty

Checks cancellation penalties — early termination fees, contract locks, or free cancellation.

Input: vendor, region, plan

{"verdict":"PENALTY","code":"EARLY_TERMINATION_FEE","message":"adobe charges an early termination fee: 50% of remaining months on annual plan.","vendor":"adobe","policy":"etf"}

Codes: NO_PENALTY, EARLY_TERMINATION_FEE, CONTRACT_LOCKED, UNSUPPORTED_VENDOR

Return Notary

Endpoint: POST https://return.decide.fyi/api/v1/return/eligibility MCP Tool: return_eligibility

Checks if a subscription purchase can be returned/reversed, with return type and method.

Input: vendor, days_since_purchase, region, plan

{"returnable":true,"verdict":"RETURNABLE","code":"FULL_RETURN","message":"Return is available. Purchase is 5 day(s) old, within 14-day window.","vendor":"adobe","return_type":"full_refund","method":"self_service"}

Codes: FULL_RETURN, PRORATED_RETURN, CREDIT_RETURN, OUTSIDE_WINDOW, NO_RETURNS, UNSUPPORTED_VENDOR

Trial Notary

Endpoint: POST https://trial.decide.fyi/api/v1/trial/terms MCP Tool: trial_terms

Checks free trial availability, length, card requirement, and auto-conversion status.

Input: vendor, region, plan

{"verdict":"TRIAL_AVAILABLE","code":"AUTO_CONVERTS","message":"adobe offers a 7-day free trial. Credit card required. Auto-converts to paid plan.","vendor":"adobe","trial_days":7,"card_required":true,"auto_converts":true}

Codes: AUTO_CONVERTS, NO_AUTO_CONVERT, TRIAL_NOT_AVAILABLE, UNSUPPORTED_VENDOR


Supported Vendors (100)

VendorIdentifierRefundCancelReturnTrial
1Password1passwordNo refundsFreeNo return14d
Adobeadobe14dETF14d full7d
Amazon Primeamazon_prime3dFree3d full30d
Apple App Storeapple_app_store14dFree14d full-
Apple Musicapple_musicNo refundsFreeNo return30d
Apple TV+apple_tv_plusNo refundsFreeNo return7d
AudibleaudibleNo refundsFreeNo return30d
Bitwardenbitwarden30dFree30d full7d
BumblebumbleNo refundsFreeNo return7d
Calmcalm30dFree30d full7d
CanvacanvaNo refundsFreeNo return30d
ChatGPT Pluschatgpt_plusNo refundsFreeNo return-
Claude Proclaude_proNo refundsFreeNo return-
Coursera Pluscoursera_plus14dFree14d full7d
CrunchyrollcrunchyrollNo refundsFreeNo return7d
DeezerdeezerNo refundsFreeNo return30d
Disney+disney_plusNo refundsFreeNo return-
DoorDash DashPassdoordash_dashpassNo refundsFreeNo return30d
Dropbox (US)dropbox_usNo refundsFreeNo return30d
DuolingoduolingoNo refundsFreeNo return14d
Evernoteevernote20dFree20d full14d
ExpressVPNexpressvpn30dFree30d full7d
FigmafigmaNo refundsFreeNo return30d
Fubo TVfubo_tvNo refundsFreeNo return7d
GitHub Progithub_proNo refundsFreeNo return-
Google Playgoogle_play2dFree2d full-
GrammarlygrammarlyNo refundsFreeNo return7d
HeadspaceheadspaceNo refundsFreeNo return7d
HelloFreshhellofreshNo refundsFree (5d notice)No return-
HingehingeNo refundsFreeNo return7d
HuluhuluNo refundsFreeNo return30d
iCloud+icloud_plus14dFree14d full-
Instacart+instacart_plus5dFree5d full14d
LinkedIn Premiumlinkedin_premium7dFree7d full30d
MasterClassmasterclass30dFree30d full-
Max (HBO)maxNo refundsFreeNo return-
Microsoft 365microsoft_36530dFree30d full30d
MidjourneymidjourneyNo refundsFreeNo return-
Netfli

README truncated. View full README on GitHub.

Alternatives

Related Skills

Browse all skills
finance-skills

Production-ready financial analyst skill with ratio analysis, DCF valuation, budget variance analysis, and rolling forecast construction. 4 Python tools (all stdlib-only). Works with Claude Code, Codex CLI, and OpenClaw.

55
ui-design-system

UI design system toolkit for Senior UI Designer including design token generation, component documentation, responsive design calculations, and developer handoff tools. Use for creating design systems, maintaining visual consistency, and facilitating design-dev collaboration.

18
ai-sdk

Answer questions about the AI SDK and help build AI-powered features. Use when developers: (1) Ask about AI SDK functions like generateText, streamText, ToolLoopAgent, embed, or tools, (2) Want to build AI agents, chatbots, RAG systems, or text generation features, (3) Have questions about AI providers (OpenAI, Anthropic, Google, etc.), streaming, tool calling, structured output, or embeddings, (4) Use React hooks like useChat or useCompletion. Triggers on: "AI SDK", "Vercel AI SDK", "generateText", "streamText", "add AI to my app", "build an agent", "tool calling", "structured output", "useChat".

6
api-documenter

Master API documentation with OpenAPI 3.1, AI-powered tools, and modern developer experience practices. Create interactive docs, generate SDKs, and build comprehensive developer portals. Use PROACTIVELY for API documentation or developer portal creation.

4
openai-knowledge

Use when working with the OpenAI API (Responses API) or OpenAI platform features (tools, streaming, Realtime API, auth, models, rate limits, MCP) and you need authoritative, up-to-date documentation (schemas, examples, limits, edge cases). Prefer the OpenAI Developer Documentation MCP server tools when available; otherwise guide the user to enable `openaiDeveloperDocs`.

4
cli-builder

Guide for building TypeScript CLIs with Bun. Use when creating command-line tools, adding subcommands to existing CLIs, or building developer tooling. Covers argument parsing, subcommand patterns, output formatting, and distribution.

3