Model Context Protocol

Your checkout data,
inside your AI.

Connect Swipefast to Claude, ChatGPT, or any MCP client and ask about your sales in plain language. No dashboard, no SQL, no export. It uses the API key you already have, so setup is one paste and there is one place to revoke it.

Things you can just ask
  • “How much did I make last month, and how does that compare to the month before?”
  • “Which checkout converts best, and where is that traffic coming from?”
  • “Who are my top 10 customers and what have they spent?”
  • “Make me a 25% off code for Black Friday, capped at 100 uses.”

Connect it

The server speaks MCP 2025-06-18 over HTTP at https://swipefast.io/api/mcp, authenticated with your API key from Settings.

Claude Code
claude mcp add --scope user --transport http swipefast https://swipefast.io/api/mcp \
  --header "Authorization: Bearer sf_live_your_key_here"
Cursor and other config-file clients
{
  "mcpServers": {
    "swipefast": {
      "type": "http",
      "url": "https://swipefast.io/api/mcp",
      "headers": {
        "Authorization": "Bearer sf_live_your_key_here"
      }
    }
  }
}
Claude and ChatGPT on the web

Their browser connector flows expect an OAuth sign-in. Swipefast currently authenticates the remote endpoint with your API key, so the web connection is not available yet. Use Claude Code, Cursor, or another client that lets you set the Authorization header. We will only add a one-click web connection once the OAuth consent and revocation flow is ready.

To check the endpoint is reachable before wiring up a client, a plain GET returns the server card:

curl https://swipefast.io/api/mcp

What it can do

10 read-only tools and 5 that write. Every tool is scoped to your account by construction — none of them takes a user id, so there is no way to point one at somebody else’s data.

list_productsread
Every product/checkout on the seller's Swipefast account, with price, status and public URL. Start here when you need a product id or slug for another tool.
get_productread
One product plus the order bumps, upsells and price tiers attached to it. Accepts either the product id or its slug.
list_ordersread
Recent real orders (test orders excluded). Use `days` to scope to a window and `productSlug` to scope to one checkout.
revenue_summaryread
Gross revenue, refunds, affiliate commission and net for a trailing window, with the previous window of the same length for comparison. This is the same maths the dashboard shows, so the numbers will always agree.
revenue_by_monthread
Revenue per calendar month, oldest first — for spotting trends and seasonality.
top_customersread
The seller's customers ranked by lifetime spend, with order counts.
account_summaryread
All-time revenue and order count, plus active subscriptions and the MRR they represent. The fastest single call for "how is my business doing".
traffic_sourcesread
Revenue and orders grouped by UTM source/medium/campaign, with conversion rate. Sales with no attribution roll up as "Direct" rather than being dropped.
list_couponsread
Every discount code on the account, with how many times each has been redeemed.
create_couponwrites
Create a new discount code. Codes are stored uppercase and matched case-insensitively at checkout.
get_sales_page_guideread
The rules and design brief for the HTML sales page that sits above a Swipefast checkout. Call this before writing salesPageHtml or calling set_sales_page, and follow it: it keeps the page on-brand, phone-friendly and from breaking the payment section. Pass `product` to fill the brief with that checkout's details.
setup_checkoutwrites
Create a complete checkout in one call: the product, its delivery, the cart copy, an optional order bump, an optional one-click upsell and an optional sales page above the cart. It is always saved as a DRAFT: nobody can buy until the seller previews it and presses Publish in the dashboard. Before calling, make sure you have the name, price, currency, one-time or subscription, and where buyers get it (a https:// link, or manual delivery). Ask the seller for anything missing; never invent a delivery link or a price. Returns the dashboard link to preview and publish.
add_order_bumpwrites
Add an order bump (a small add-on buyers tick in the cart) to one of the seller's DRAFT checkouts. Live checkouts are changed in the dashboard instead.
add_upsellwrites
Add the one-click upsell buyers see right after paying to one of the seller's DRAFT checkouts. Optionally pass html for a custom upsell page.
set_sales_pagewrites
Put the seller's sales page HTML above the cart on one of their DRAFT checkouts, replacing any page already there. Pass an empty string to remove it so the cart stands on its own.

Worth knowing

Money comes back twice. Every amount is returned as cents and as a formatted string, because a model reading a bare 9900 will cheerfully tell you that you made ninety-nine hundred dollars.

The numbers match your dashboard. Test orders are excluded and refunds are handled the same way the dashboard handles them — the tools call the same functions the dashboard does, so the two can never disagree.

Writing tools only make drafts. create_coupon makes a discount code. setup_checkout and the tools beside it create and edit draft checkouts only. Nothing here can publish, change a live checkout, refund or move money; those stay in the dashboard, where a human clicks the button. Everything else is annotated read-only so clients can auto-approve it.

Set up a checkout in one go. In Claude Code, type /mcp__swipefast__setup_checkout and say what you sell. Claude asks for the price and delivery link, builds the checkout (with an order bump, upsell and sales page if you want them) as a draft, and gives you the link to preview and publish.

Pages follow the same rules as the blog prompt. Before writing a sales page, the agent calls get_sales_page_guide, the same brief as our Claude and Codex guide, so the page stays scoped, phone-friendly and points every button at the checkout. For an existing checkout, type /mcp__swipefast__design_sales_page.

Your key is your key. It is the same one the REST API uses. Rotating it in Settings disconnects every MCP client at once.