Stripe
Stripe offers online payment infrastructure, fraud prevention, and APIs enabling businesses to accept and manage payments globally
Verdict
Common use cases
- Issue refunds during support escalations
- Draft invoices for custom contract terms
- Cancel subscriptions at customer request
- Create one-time payment links in sales calls
- Set up recurring pricing for new products
Integration
- Vendor
- Stripe
- Category
- other
- Auth
- API_KEY
- Tools
- 33
- Composio slug
stripe
Tools
- Cancel subscription
Cancels a customer's active stripe subscription at the end of the current billing period, with options to invoice immediately for metered usage and prorate charges for unused time.
- Confirm payment intent
Confirms a stripe paymentintent to finalize a payment; a `return url` is necessary if the payment method requires customer redirection.
- Create an invoice
Creates a new draft stripe invoice for a customer; use to revise an existing invoice, bill for a specific subscription (which must belong to the customer), or apply detailed customizations.
- Create a price
Creates a new stripe price for a product, defining its charges (one-time or recurring) and billing scheme; requires either an existing `product` id or `product data`.
- Create Customer
Creates a new customer in stripe, required for creating charges or subscriptions; an email is highly recommended for customer communications.
- Create payment intent
Creates a stripe paymentintent to initiate and process a customer's payment; using `application fee amount` for a connected account requires the `stripe-account` header.
- Create product
Creates a new product in stripe, encoding the request as `application/x-www-form-urlencoded` by flattening nested structures.
- Create Refund
Creates a full or partial refund in stripe, targeting either a specific charge id or a payment intent id.
- Create subscription
Creates a new, highly configurable subscription for an existing stripe customer, supporting multiple items, trials, discounts, and various billing/payment options.
- Delete customerdestructive
Permanently deletes an existing stripe customer; this irreversible action also cancels their active subscriptions and removes all associated data.
- List Charges
Retrieves a list of stripe charges with filtering and pagination; use valid cursor ids from previous responses for pagination, and note that charges are typically returned in reverse chronological order.
- List customer payment methods
Retrieves a list of payment methods for a given customer, supporting type filtering and pagination.
- List customers
Retrieves a list of stripe customers, with options to filter by email, creation date, or test clock, and support for pagination.
- List Invoices
Retrieves a list of stripe invoices, filterable by various criteria and paginatable using invoice id cursors obtained from previous responses.
- List payment intents
Retrieves a list of stripe paymentintents, optionally filtered and paginated using paymentintent ids as cursors.
- List payment links
Retrieves a list of payment links from stripe, sorted by creation date in descending order by default.
- List products
Retrieves a list of stripe products, with optional filtering and pagination; `starting after`/`ending before` cursors must be valid product ids from a previous response.
- List Refunds
Lists stripe refunds, sorted by creation date descending (newest first), with optional filtering by charge or payment intent and pagination support.
- List Stripe coupons
Retrieves a list of discount coupons from a stripe account, supporting pagination via `limit`, `starting after`, and `ending before`.
- List Stripe shipping rates
Retrieves a list of stripe shipping rates, filterable by active status, creation date, and currency; useful for managing or displaying shipping options.
- List subscriptions
Retrieves a list of stripe subscriptions, optionally filtered by various criteria such as customer, price, status, collection method, and date ranges, with support for pagination.
- List tax codes
Retrieves a paginated list of globally available, predefined stripe tax codes used for classifying products and services in stripe tax.
- List tax rates
Retrieves a list of tax rates, which are returned sorted by creation date in descending order.
- Retrieve a refund
Retrieves details for an existing stripe refund using its unique `refund id`.
- Retrieve Balance
Retrieves the complete current balance details for the connected stripe account.
- Retrieve Charge Details
Retrieves full details for an existing stripe charge using its unique id.
- Retrieve customer
Retrieves detailed information for an existing stripe customer using their unique customer id.
- Retrieve payment intent
Retrieves a paymentintent by its id; `client secret` is required if a publishable api key is used.
- Retrieve subscription
Retrieves detailed information for an existing stripe subscription using its unique id.
- Search Stripe customers
Retrieves a list of stripe customers matching a search query that adheres to stripe's search query language.
- Update Customer
Updates an existing stripe customer, identified by customer id, with only the provided details; unspecified fields remain unchanged.
- Update Payment Intent
Updates a stripe paymentintent with new values for specified parameters; note that if `currency` is updated, `amount` might also be required, and certain updates (e.g., to `payment method`) can necessitate re-confirmation by the customer.
- Update Subscription
Updates an existing, non-canceled stripe subscription by its id, ensuring all referenced entity ids (e.g., prices, coupons) are valid and automatic tax liability is correctly specified if enabled.
Setup
Setup guide
- 11. In Switchy, open your workspace settings and navigate to the Integrations tab. 2. Find Stripe in the MCP directory and click Connect. 3. You'll be prompted to paste a Stripe API key — generate one in your Stripe Dashboard under Developers > API keys (use a Restricted Key scoped to Customers, PaymentIntents, Subscriptions, Invoices, Prices, Products, and Refunds for production). 4. Paste the key into Switchy and click Authorize. 5. Open any Project, type '@Stripe create customer with email test@example.com' and send — if the MCP replies with a customer ID, the connection works. 6. To invoke other tools, @mention Stripe followed by the action (e.g. '@Stripe create payment intent for $50 USD').
What teammates see: by default, memories from Stripe are scoped to the Project (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.
Works well with
Top models
Compatibility data appears once enough Projects have used this MCP together with a given model.
How Switchy teams use it
Starter prompts
Refund Last Payment
@Stripe create a full refund for payment intent pi_3AbCdEfGhIjKlMnO. Include the reason 'requested_by_customer' in the metadata.Open in a Project →
New Subscription Customer
@Stripe create a customer with email jordan@example.com, then create a subscription for price_1HxYzAbCdEfGhIjK starting today.Open in a Project →
Cancel at Period End
@Stripe cancel subscription sub_1JkLmNoPqRsTuVwX at the end of the current period, and prorate any unused time.Open in a Project →
Draft Custom Invoice
@Stripe create a draft invoice for customer cus_AbCdEfGhIjKlMnOp with line items for consulting hours and travel expenses totaling $2,400.Open in a Project →
One-Time Payment Intent
@Stripe create a payment intent for $150 USD with automatic payment methods enabled, and provide the client secret so I can complete it.Open in a Project →
Example outputs
Illustrative - representative of the model's voice and quality, not literal recordings.
@stripe list all active subscriptions for customer cus_ABC123 and show me their current billing amounts
Found 3 active subscriptions for customer cus_ABC123: (1) Pro Plan at $49/month, renews March 15; (2) API Access at $199/month with 50,000 requests included, renews March 20; (3) Premium Support at $99/month, renews March 18. Total monthly recurring revenue from this customer: $347. All subscriptions are set to auto-renew and payment methods are current.
This example shows read-only access to subscription data. Requires API keys with read permissions on customers and subscriptions. The MCP returns structured data that the AI formats into a summary — actual Stripe responses include more fields (metadata, trial status, discount codes) that you can query if needed.
@stripe create a refund for charge ch_XYZ789 in the amount of $25.50 and note that it's for a partial order cancellation
Refund created successfully. Refund ID: re_1ABC2DEF3GHI. Amount: $25.50 USD refunded to charge ch_XYZ789. Status: succeeded. The funds will appear in the customer's account within 5-10 business days depending on their bank. Metadata attached: reason set to 'partial order cancellation'. Original charge of $50.00 now shows net amount of $24.50.
This demonstrates a write action with immediate financial impact. The refund processes instantly in Stripe but bank settlement takes days. Requires API keys with write permissions on refunds. Always verify the charge ID and amount before confirming — refunds cannot be reversed, only offset with new charges.
@stripe review all failed payment intents from the last 7 days and draft an email template I can send to those customers
Found 12 failed payment intents in the past week. Common failure reasons: 4 insufficient funds, 5 expired cards, 3 generic declines. Draft email: 'Hi [Customer Name], we noticed your recent payment of $[Amount] didn't go through due to [Reason]. Please update your payment method at [Payment Link] to restore access to your account. If you need help, reply to this email.' Suggested next step: use Stripe's automated dunning emails to handle retries, or manually reach out to the 5 expired-card cases first since those are easiest to resolve.
This pairs Stripe's transaction data with AI reasoning to produce actionable insights. The MCP fetches raw payment intent records; the AI synthesizes patterns and drafts communication. Requires read access to payment intents and charges. Be aware that customer PII appears in these records — handle email drafts carefully and confirm data privacy policies before sending.
Use-case deep-dives
When Stripe MCP replaces your billing dashboard tab-switching
A 10-person SaaS startup runs customer success and finance from the same Slack channel. When a customer asks to downgrade mid-cycle, the CS rep needs to cancel the subscription, prorate the refund, and confirm the new plan—all without leaving the conversation. The Stripe MCP handles this: cancel subscription with prorate flags, create refund targeting the charge, create payment intent for the new tier. The 33 tools cover subscription lifecycle, invoicing, and payment flows, so your team stops context-switching between Stripe dashboard tabs and customer threads. This works until you hit 500+ monthly billing events; at that scale, you need dedicated billing ops and the MCP becomes a fallback for edge cases. If your team closes billing questions in chat and you're under 200 active subscriptions, the Stripe MCP cuts your median resolution time in half.
Why this MCP isn't built for multi-party settlement workflows
A 4-person finance team at a two-sided marketplace needs to reconcile platform fees, vendor payouts, and refunds across 80 transactions daily. They want to pull payment intents, match refunds to original charges, and generate payout reports without exporting CSVs. The Stripe MCP gives you create refund and confirm payment intent, but it's missing the analytics and reporting tools that make reconciliation fast—there's no bulk transaction export, no ledger summary, no payout breakdown by connected account. You'll still need the Stripe dashboard or a dedicated BI tool to close the books. The MCP works for one-off refund requests or manual payment confirmations during support escalations, but it won't replace your month-end reconciliation process. If your finance workflow is 'look up one transaction and act on it,' the MCP fits; if it's 'analyze 500 transactions and generate a report,' stay in the dashboard.
When create product and create price beat your admin panel
A 6-person product team is launching three new pricing tiers in 48 hours. They need to create products, define recurring prices with metered usage caps, and test payment flows before the announcement. The Stripe MCP's create product and create price tools let them draft, revise, and confirm pricing structures directly in their planning doc—no admin panel login, no screenshot handoffs to engineering. The create payment intent tool lets them simulate checkout flows for QA without touching production code. This works because the team is small enough that one person owns both pricing strategy and Stripe config; the MCP collapses the handoff. The trade-off: you're editing production billing objects in a chat interface, so version control and audit trails are weaker than the dashboard's change log. If your launch cadence is monthly or faster and your team co-owns pricing and billing, the Stripe MCP turns launch week into a same-day task.
Frequently asked
What can the Stripe MCP do in Switchy?
The Stripe MCP lets AI assistants in Switchy create customers, process payments, manage subscriptions, issue refunds, and generate invoices — all without leaving the conversation. It exposes 33 Stripe API operations, so your team can handle billing tasks through natural language instead of logging into the Stripe dashboard or writing code.
Do I need admin access to connect Stripe?
You need a Stripe API key with appropriate permissions. Restricted keys work if they cover the operations you want — creating customers and payment intents requires write access to those resources. Full secret keys grant all 33 tools. Anyone on your Switchy workspace with the key can connect it; Stripe doesn't distinguish between admin and non-admin roles at the API level.
Can the Stripe MCP update existing subscriptions or only cancel them?
The MCP can cancel subscriptions at period end, but updating a subscription's plan or quantity isn't exposed in the representative tool list. If you need to change a subscription's price or add-ons, you'll likely need to use Stripe's dashboard or a direct API call. The MCP focuses on creation, cancellation, and invoicing workflows.
Why use the Stripe MCP instead of the Stripe API directly?
The MCP removes the need to write integration code or remember API parameter names. Your team asks an assistant to "refund the last charge for customer X" instead of crafting a POST request with the correct charge ID and amount. It's faster for one-off tasks and support workflows, though custom billing logic still belongs in your application code.
Who on the team should connect the Stripe MCP?
Whoever handles billing support or finance operations. The API key grants real payment and refund powers, so restrict it to people who already have Stripe dashboard access. If multiple people need it, create a restricted key scoped to read-only or specific actions, then share that key in Switchy's MCP settings.