Polymarket and Predict.fun historical tick data, plus backtest quotes and status, over MCP
Stackcut is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Cancel or cut any subscription: exit steps, cheaper plans, alternatives and the cheapest stack.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user --transport http stackcut-mcp https://stackcut.io/mcp
# 2 — ask your agent for something these tools do
# search_recipes, get_recipe, find_alternatives and 20 more
Stackcut costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. Nothing here runs on your machine and nothing runs on ours: this server answers at its publisher’s own address, and what you install is the connection straight to it.
This is a public server: it answers at its publisher’s own address and this marketplace is not in the path. Claude Code registers it in one command; --scope user makes it available in every project. The transport below is http, as the publisher's own manifest declares it.
claude mcp add --scope user --transport http stackcut-mcp https://stackcut.io/mcpReconnect, or start a new session, and the tools appear in the model’s tool list.
One config entry pointing straight at the publisher’s own address — this marketplace is not in the path, and nothing from this listing executes on your machine.
23 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
Use when the user wants a cheaper way to do a job and names a feature or kind of tool rather than one product: 'cheaper keyword research', 'forms without Typeform', 'what can replace our CRM'. Filter by the vendor they pay for, a feature, a category or a path type (switch, cheaper plan, open source, pay per use, agent skill, build it). Returns compact recipe cards, each with its best priced path t
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | no | Free text, e.g. 'client approval portal' or 'semrush backlinks' |
| vendor | string | no | Product currently paid for, e.g. 'Airtable', 'Salesforce', 'Semrush Pro' |
| feature | string | no | A feature they rely on, e.g. 'rank tracking', 'e-signatures' |
| category | string | no | Category name from list_categories, e.g. 'CRM', 'SEO data' |
| path_type | string | no | Only recipes offering this kind of replacement |
| sort | string | no | — |
| limit | integer | no | — |
| intent | string | no | new: they pay for no tool yet: costs, never savings (default replace) |
| requirements | object | no | Options per recipe: excluded kinds dropped, must-haves labeled |
Full detail for one recipe from search_recipes: every replacement path with modeled first-year savings, monthly cost, setup time and upkeep, what is out of scope, checks to run before switching, how to leave the current vendor (cancel steps, refunds, exports, what you lose), step-by-step playbooks, sources, and Stackcut's own lab results where they exist (not customer results). Stackcut stores the
| Parameter | Type | Required | Notes |
|---|---|---|---|
| id | string | yes | Recipe id from search_recipes, e.g. 'crm-pipeline' |
Use when the user names one product they pay for and asks for something cheaper, whether it's worth it, or what to switch to: 'cheaper than Typeform?', 'is Semrush worth $139 a month for us?', 'we pay $90 for SendGrid'. Pass what they pay (monthly_spend_usd), seats, the features they use and their usage (usage, or evidence such as '40,000 emails/mo') so each plan's caps can be checked. Returns ran
| Parameter | Type | Required | Notes |
|---|---|---|---|
| vendor | string | yes | Product name as on the invoice, e.g. 'Typeform', 'Slack Pro', 'HubSpot Sales Hub Starter' |
| plan | string | no | Their plan, e.g. 'Essential' (else read from the vendor name) |
| monthly_spend_usd | number | no | What they pay per month today, all seats (replaces the modeled baseline) |
| seats | integer | no | Paid seats; per-seat prices on both sides scale with it |
| features_used | array | no | Features they actually use; sizes and counts ('4,000 contacts', 'videos over 5 minutes') are read as usage |
| usage | object | no | Their usage, checked against each plan's caps (priced with published overage and add-ons). Units: seats, members, mau, emails_per_month, emails_per_day, contacts, domains, events_per_month, identified |
| evidence | array | no | Usage facts in words, read best effort: 'db 1.5 GB', '40,000 emails/mo', '37 domains', '3,000 MAU', 'shared by 40 projects' |
| shared_with | integer | no | How many products share this bill (one account, org or team), when only this product is audited: moving one product off it saves only what it adds to the bill, never the whole bill. monthly_spend_usd |
| active_users | number | no | People or accounts active in the last 30 days (0 = unused: cleanup levers and sanity checks) |
| revenue_usd_per_month | number | no | The product's revenue per month (context for sanity checks: no revenue, cost per user, fees vs revenue; never a cap) |
| last_active | string | no | When this resource (project, app, account) was last used: an ISO date ('2026-03-10'), 'never', or '5 months ago'. 90+ days idle or never used gets a cleanup lever |
| confirmed | boolean | no | true when the user confirmed they pay for this (with plan: its list price counts as confirmed spend). Scanner-only lines are unconfirmed |
| billing | object | no | Billing evidence: scope (dedicated, shared or unknown), account_id (a non-secret alias; the account key), allocated_monthly_usd (attribution only, never a saving), avoidable_monthly_usd with avoidabil |
| replacement_validation | object | no | A replacement path the user checked themselves: its current price, capacity, burst limits and paid add-ons against their usage. It answers that path's capacity checks (never its must-haves) and ranks |
| limit | integer | no | — |
Use when the user wants to replace a tool by building their own (Replace with AI): returns SPEC.md, AGENTS.md and the runbook files a coding agent builds from, for a recipe with a build path. A recipe without one returns the assessment files for validating a switch or downgrade instead, never a spec to clone a service. Check packet_kind and next_step before acting. Stackcut stores the arguments of
| Parameter | Type | Required | Notes |
|---|---|---|---|
| recipe_id | string | yes | — |
Use for a whole operational change rather than one subscription: billing shared across projects, moving hosting or email, retiring a dormant project, cheaper AI model routing, queues, auth or storage. Returns reviewed runbooks with the query words they matched; get_workflow_recipe returns one in full. Runbooks are guidance, not proof that a migration ran. Stackcut stores the arguments of tool call
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | no | The job in words, e.g. 'shared billing across projects' or 'queue retries worker' |
| vendor | string | no | Only runbooks tagged for this vendor id, e.g. 'stripe', 'supabase' |
| limit | integer | no | — |
One runbook from search_workflow_recipes in full: the evidence to collect, keep/downsize/consolidate/migrate/build/retire decisions, ordered steps, acceptance tests, rollout, rollback, maintenance, costs still unresolved, and scoped starter templates with their download digest. A reviewed playbook is not a completed customer migration. Stackcut stores the arguments of tool calls to improve its rec
| Parameter | Type | Required | Notes |
|---|---|---|---|
| id | string | yes | Workflow id from search_workflow_recipes, e.g. 'portfolio-shared-billing' |
The top replacement paths across the catalog by modeled first-year savings, payback months, or how often people and agents used them. Leaves out partial replacements unless include_partial, and never lists trials, one-time credits, expiring or non-commercial plans. Stackcut stores the arguments of tool calls to improve its recommendations (vendor names, prices, seats, features, usage numbers, bill
| Parameter | Type | Required | Notes |
|---|---|---|---|
| metric | string | no | — |
| category | string | no | — |
| path_type | string | no | — |
| include_partial | boolean | no | — |
| limit | integer | no | — |
Use when the user wants their stack checked as a whole: several subscriptions, the paid services in a codebase, or a portfolio of products ('audit what we pay for', 'what can we cut?'). One line per service with vendor, plan, what they pay, seats, the features they use and usage (or evidence strings); add project for a portfolio and account for a shared bill. Per service: status (eligible = a chea
| Parameter | Type | Required | Notes |
|---|---|---|---|
| services | array | yes | — |
| revenue_usd_per_month | number | no | The product's revenue per month (context for sanity checks: no revenue, cost per user, fees vs revenue; never a cap) |
| active_users | number | no | People or accounts active in the last 30 days (0 = unused: cleanup levers and sanity checks) |
| decision | string | no | consolidate: overlaps on every job each tool does |
| limit_paths | integer | no | — |
Rules for finding paid services in a codebase on the user's own machine: package names, environment variable name patterns, config files, API hosts and feature patterns for about 100 vendors. Apply them locally and send only the vendor and feature names you found to audit_stack, never code or secret values. Names without rules come back under unknown. Stackcut stores the arguments of tool calls to
| Parameter | Type | Required | Notes |
|---|---|---|---|
| vendors | array | no | Only these vendors, by id or name (default: all) |
Before an audit: which usage numbers decide each vendor's answer (emails a month, domains, database size, seats…), where the user finds each one (dashboard page, API, export), and ready-to-ask questions. Units already stated in context are marked as given. Pass the answers to audit_stack or find_alternatives as usage and features_used. Stackcut stores the arguments of tool calls to improve its rec
| Parameter | Type | Required | Notes |
|---|---|---|---|
| vendors | array | yes | Vendors they pay for, by name or id, e.g. ['Resend', 'Supabase Pro'] |
| context | string | no | Optional: what is already known, in words (e.g. 'about 40,000 emails/mo, 4 domains'); units it states are marked as given and not asked again |
Start here when the user wants to cut spend across several tools, consolidate apps, or replace one tool safely, and the bills alone won't decide it. Send vendors and team_size (or a stack manifest) and get the few missing facts that would change the answer, ranked by what's at stake, each with where to find it. Fetch those, add them, and call again until status is 'enough', then call next.tool wit
| Parameter | Type | Required | Notes |
|---|---|---|---|
| manifest | object | no | A stack manifest (JSON Schema at https://stackcut.io/schemas/stack-manifest-1.json; manifest_version '1'): goal, org, builder, services (vendor, plan, monthly_spend_usd, seats, active_users, features_ |
| vendors | array | no | A first pass without a manifest: the tools the team pays for, e.g. ['Notion', 'Asana', 'Loom']. |
| decision | string | no | With vendors: what the audit is for (default cut_spend). |
| team_size | integer | no | With vendors: people on the team. |
| max_questions | integer | no | Most questions to return (default 8). |
The catalog's categories with how many recipes each has and the best modeled first-year saving in each. Stackcut stores the arguments of tool calls to improve its recommendations (vendor names, prices, seats, features, usage numbers, billing amounts and project descriptions; account keys only as a one-way hash, billing and validation sources not at all; never IP addresses). Tool results are summar
No parameter schema on file.
Use only when the user gives you a Stackcut agent code (it starts with sca_; they copy it from 'Send to my agent' on stackcut.io). Returns their own savings plan: every subscription with its verdict, the proven saving, the proof (receipts, card charges or a sourced price), steps and checks. Walk them through it from the biggest proven saving down and ask before any cancel, purchase or sign-up. The
| Parameter | Type | Required | Notes |
|---|---|---|---|
| code | string | yes | The agent code from stackcut.io, e.g. sca_… |
Use when the user is picking vendors for something they're building: 'cheapest database for 20k users', 'Resend or Postmark at 60,000 emails a month?', 'what will auth cost at 10k MAU?'. Give each job with its volumes and must-have features; every tier of every indexed vendor is priced at those volumes and the cheapest valid tier wins. A pick 'fits' only when every volume is within published caps
| Parameter | Type | Required | Notes |
|---|---|---|---|
| project | string | no | What is being built. Volumes written here ('1,200,000 preview images/mo', '20k MAU') are used and echoed as assumptions. Say 'personal' or 'hobby' if it is non-commercial; otherwise plans that forbid |
| needs | array | yes | — |
| prefer | string | no | managed leaves out self-hosted options |
| budget_monthly_usd | number | no | — |
| limit_per_job | integer | no | — |
| scales | array | no | Price the stack at several scales, e.g. [1000, 20000, 200000] MAU (scale_by mau) or [1, 10, 100] (scale_by multiplier): per-job cost curve, tier changes and break-even points between options |
| scale_by | string | no | mau: scales are monthly active users (per_user volumes × MAU; other monthly volumes and sizes grow in proportion to the MAU they were given at); multiplier: every monthly volume and size is multiplied |
| unit_economics | object | no | Revenue model for gross margin per scale: price_usd with conversion_rate, or revenue_per_mau |
Use when the user shares a product brief or spec and asks what to build it with or what it will cost. Works out the jobs the brief needs (what it rules out, plans for later or already has is never priced), the volumes from its numbers or listed default rates, and its budget; prices the stack at several scales with choose_stack; and returns SPEC.md, AGENTS.md and a manifest for a coding agent. Keyw
| Parameter | Type | Required | Notes |
|---|---|---|---|
| spec | string | yes | The product brief (markdown or plain text, up to 20,000 characters): what it does, who uses it, how it makes money, any numbers you know (users, conversion, prices, volumes). Never paste secrets or pe |
| scales | array | no | MAU targets to price, default [1000, 20000, 200000] |
| overrides | array | no | Edit the derived assumptions: a volume per MAU per month (per_user) or a fixed monthly total for a job |
| add_jobs | array | no | Jobs to add that the brief doesn't mention |
| exclude_jobs | array | no | Derived jobs to drop (job ids) |
| unit_economics | object | no | Revenue model for gross margin per scale: price_usd with conversion_rate, or revenue_per_mau |
| prefer | string | no | — |
| limit_per_job | integer | no | — |
The jobs choose_stack can compare (database, auth, hosting, transactional and inbound email, object storage, LLM APIs, payments, sandboxes, browser automation, queues…) with how many vendors each has, plus the volume units and aliases it accepts. Stackcut stores the arguments of tool calls to improve its recommendations (vendor names, prices, seats, features, usage numbers, billing amounts and pro
No parameter schema on file.
Use when the user wants to cancel, unsubscribe from, pause or pay less for something they subscribe to: streaming, music, news, dating, cloud storage, AI tools, apps or business software ('cancel YouTube TV', 'how do I get out of Adobe', 'stop my Audible'). Returns Stackcut's exit plan: every way to cancel by who bills them (the company, Apple, Google Play, a partner or a contract), the steps with
| Parameter | Type | Required | Notes |
|---|---|---|---|
| service | string | yes | The subscription, e.g. 'YouTube TV', 'Adobe Creative Cloud', 'disneyplus.com' |
| billed_by | string | no | Who charges them (card statement or receipt): the company (direct_web; direct_app in its app), Apple, Google Play, Amazon, Roku, PayPal, a phone or TV provider, a partner or a contract. Omit or 'unkno |
| renewal_date | string | no | Next renewal date, YYYY-MM-DD: adds the last safe day to cancel from the documented notice period |
| monthly_price | number | no | USD a month: with renewal_date or months_left, estimates an early termination fee |
| months_left | integer | no | Monthly payments left (else from renewal_date) |
| goal | string | no | — |
| market | string | no | The user's country, e.g. DE: when Stackcut has a guide checked for that market (JP, DE, BR, MX, NL), local_guide points to it |
Find documented existing-customer offers, cancellation-flow promotions and renewal negotiation routes for a service. Returns channel- and market-specific paths, vendor sources, freshness, questions and draft request/terms/counteroffer/decline/confirmation scripts. It sends nothing and makes no account changes. Eligibility and offer amounts are unknown until the vendor confirms them. Compare costs
| Parameter | Type | Required | Notes |
|---|---|---|---|
| service | string | yes | — |
| billed_by | string | no | — |
| market | string | no | Country code, e.g. US |
| current_plan | string | no | — |
| required_features | array | no | — |
| renewal_date | string | no | — |
| maximum_commitment_months | integer | no | — |
| monthly_spend | object | no | Current bill. Despite the legacy property name, specify whether this amount is monthly or annual. |
| offered_price | number | no | — |
| offer_duration_months | integer | no | — |
| renewal_price | number | no | — |
| comparison_months | integer | no | — |
| fees | number | no | All mandatory fees over the comparison period; explicit 0 only if confirmed. |
Lists services in Stackcut's cancel library (streaming, music, news, dating, cloud storage, AI tools, apps and software), by name, domain or category, with the page and JSON for each. Use get_exit_plan for one service's steps. Stackcut stores the arguments of tool calls to improve its recommendations (vendor names, prices, seats, features, usage numbers, billing amounts and project descriptions; a
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | no | A name or domain, e.g. 'peacock', 'vpn' |
| category | string | no | — |
| action | string | no | Filter for a documented action pathway |
| limit | integer | no | At most 100 are returned |
After the user reports what happened, count a cancellation, keeping the service for less, getting blocked, or changed steps. This updates only an anonymous usage counter and does not verify an action. Use report_action_outcome for a durable report tied to the current packet revision and route. Stackcut stores the arguments of tool calls to improve its recommendations (vendor names, prices, seats,
| Parameter | Type | Required | Notes |
|---|---|---|---|
| service | string | yes | The service, as passed to get_exit_plan |
| billed_by | string | yes | The route they used: its billed_by from get_exit_plan (get_exit_plan's aliases are read as their channel here too) |
| outcome | string | yes | — |
| step | integer | no | For blocked or steps_changed: include the step number where it stopped matching, when known |
Record a minimal structured report about an attempted cancel, price reduction, negotiation, pause, downgrade, or switch. First call get_exit_plan and send its packet_revision and route_id; stale packet revisions are rejected. Reports are user-reported evidence, never verified execution. The server stores no free text, receipts, messages, or direct identifiers. Reusing client_dedupe_key returns the
| Parameter | Type | Required | Notes |
|---|---|---|---|
| service | string | yes | The service name or id from get_exit_plan |
| route_id | string | yes | The selected route_id from get_exit_plan |
| packet_revision | string | yes | The current packet_revision from get_exit_plan |
| action | string | yes | — |
| outcome | string | yes | — |
| channel | string | yes | The selected route's billed_by channel |
| locale | string | yes | Language tag such as en or en-US |
| market | string | yes | Two-letter country code |
| blocker | string | no | Required for blocked or steps_changed |
| client_dedupe_key | string | yes | A fresh opaque idempotency key; never use an email, account id, or other personal value |
| offer_amount | number | no | Optional reported amount, never treated as verified savings |
| savings_amount | number | no | Optional reported savings amount (negative means costs rose), never treated as verified savings |
| currency | string | no | Required with numeric amounts |
| offer_billing_period | string | no | — |
| offer_duration_months | integer | no | — |
| renewal_amount | number | no | — |
| commitment_months | integer | no | — |
| fees_amount | number | no | — |
| effective_on | string | no | — |
After using guidance, report a missing vendor or billing route, a mismatching step, unavailable source, incomplete instructions, unexpected fee, observed retention offer, required human handoff, or that the guide matched. Send only the structured fields, never account information, URLs, screenshots or text. Current packet routes and step numbers are validated; stale revision reports are kept as un
| Parameter | Type | Required | Notes |
|---|---|---|---|
| kind | string | yes | — |
| service | string/null | no | — |
| packet_revision | string/null | no | — |
| route_id | string/null | no | — |
| step_index | integer/null | no | — |
| channel | string/null | no | — |
| market | string/null | no | — |
| locale | string/null | no | — |
| vendor_domain | string/null | no | For vendor_missing only: public registrable vendor domain such as example.com, without URL, path, query or account subdomain |
| handoff_reason | string/null | no | — |
| handoff_expectation | string/null | no | — |
| client_dedupe_key | string | yes | Opaque retry key, never a personal value |
Only after the user confirms what they did: record that they picked, switched to or reverted from a replacement path. Adds one to anonymous public counters and stores no personal data. Stackcut stores the arguments of tool calls to improve its recommendations (vendor names, prices, seats, features, usage numbers, billing amounts and project descriptions; account keys only as a one-way hash, billin
| Parameter | Type | Required | Notes |
|---|---|---|---|
| recipe_id | string | yes | — |
| path_id | string | yes | — |
| outcome | string | yes | — |
- Every tool — any call limit is its publisher’s, not ours
- No card, and mcprush charges nothing for it
- Runs at its publisher’s own address — this marketplace is not in the path
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install Stackcut or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
This listing is an address its publisher runs, and you connect to it directly — this marketplace is not in the path. The scanner reads packages and public source, and an address is neither: the repository linked on this page is where this record was collected from, not a copy of what the address serves, so it is not graded in its place. So there is no grade — not a withheld one, an unmeasured one.
Release history
This is an address its publisher runs: which release it serves is theirs to choose, so there is nothing here to pin. The history below is for reading; the current release on file is 1.10.0.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish Stackcut can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.