Stripe
Payments, invoices, subscriptions.
Verdict
Common use cases
- Issue refunds from support tickets in real time
- Create invoices for custom project milestones
- Cancel subscriptions without opening the dashboard
- Confirm pending payments during checkout troubleshooting
- Spin up new pricing tiers for product experiments
Integration
- Vendor
- Stripe
- Category
- finance
- 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 the Space where you want Stripe available and click the integrations panel. 2. Search for Stripe and click Connect. 3. You'll be prompted to paste a Stripe API key — grab one from your Stripe Dashboard under Developers > API keys (use a restricted key scoped to the exact resources you need, not your secret key if you can avoid it). 4. Paste the key and click Authorize. 5. Switchy confirms the connection and lists the 33 tools now available. 6. Test it by typing '@Stripe list my recent customers' in the Space — you should see a response with customer data. 7. From now on, any message starting with '@Stripe' invokes a tool; the AI picks the right one based on your request.
What teammates see: by default, memories from Stripe are scoped to the Space (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.
Works well with
Top models
Compatibility data appears once enough Spaces have used this MCP together with a given model.
How Switchy teams use it
Starter prompts
Refund Last Charge
@Stripe find the most recent charge for customer cus_ABC123 and create a full refund for itOpen in a Space →
Draft Custom Invoice
@Stripe create a draft invoice for customer cus_XYZ789 with a line item for consulting services, $2500, due in 14 daysOpen in a Space →
Cancel Subscription Gracefully
@Stripe cancel subscription sub_456DEF at the end of the current billing period and prorate any unused timeOpen in a Space →
Confirm Stuck Payment
@Stripe confirm payment intent pi_789GHI with return URL https://example.com/thanksOpen in a Space →
Launch New Price Tier
@Stripe create a new monthly recurring price of $49 for product prod_JKL012 with billing on the first of each monthOpen in a Space →
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.