# Stripe — MCP server on mcp.ai > Stripe offers online payment infrastructure, fraud prevention, and APIs enabling businesses to accept and manage payments globally By: mcp.ai · official Page: https://mcp.ai/stripe ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_stripe?ms=1784578860000 Add it as a custom/remote MCP connector, then authenticate when prompted. ## REST API (no MCP client required) Every tool is also a REST endpoint, authed with a workspace API key. Discover: GET https://api.mcp.ai/api/stripe/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/stripe/ Authorization: Bearer sk_live_… # create one at https://mcp.ai/settings/api-keys Content-Type: application/json Body: { …args } → { "ok": true, "tool": "", "result": { … } } ## Developer docs How to use (MCP or REST), markdown: https://mcp.ai/stripe/skill.md Postman collection (v2.1): https://mcp.ai/stripe/postman.json ## Tools - stripe_cancel_subscription(prorate?: boolean, invoice_now?: boolean, subscription_id: string, cancellation_details?: object) — 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. - stripe_confirm_payment_intent(shipping?: object, return_url?: string, receipt_email?: string, capture_method?: string, payment_method?: string, payment_intent_id: string, setup_future_usage?: string) — Confirms a stripe paymentintent to finalize a payment; a `return url` is necessary if the payment method requires customer redirection. - stripe_create_customer(name?: string, email?: string, phone?: string, address?: object, description?: string) — Creates a new customer in stripe, required for creating charges or subscriptions; an email is highly recommended for customer communications. - stripe_create_invoice(footer?: string, issuer?: object, number?: string, currency?: string, customer: string, due_date?: integer, metadata?: object, discounts?: object[], rendering?: object, description?: string, auto_advance?: boolean, from_invoice?: object, on_behalf_of?: string, subscription?: string, automatic_tax?: object, custom_fields?: object[], shipping_cost?: object, transfer_data?: object, days_until_due?: integer, default_source?: string, account_tax_ids?: string[], payment_settings?: object, shipping_details?: object, collection_method?: string, default_tax_rates?: string[], statement_descriptor?: string, application_fee_amount?: integer, default_payment_method?: string, automatically_finalizes_at?: integer, pending_invoice_items_behavior?: string) — 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. - stripe_create_payment_intent(amount: integer, confirm?: boolean, currency: string, customer?: string, metadata?: object, shipping?: object, return_url?: string, description?: string, off_session?: boolean, receipt_email?: string, payment_method?: string, setup_future_usage?: string, payment_method_types?: string[], statement_descriptor?: string, application_fee_amount?: integer, payment_method_options?: object, automatic_payment_methods?: object, statement_descriptor_suffix?: string) — 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. - stripe_create_price(tiers?: object[], active?: boolean, product?: string, currency: string, metadata?: object, nickname?: string, recurring?: object, lookup_key?: string, tiers_mode?: string, unit_amount?: integer, product_data?: object, tax_behavior?: string, billing_scheme?: string, currency_options?: object, custom_unit_amount?: object, transform_quantity?: object, transfer_lookup_key?: boolean, unit_amount_decimal?: string) — 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`. - stripe_create_product(id?: string, url?: string, name: string, active?: boolean, images?: string[], metadata?: object, tax_code?: string, shippable?: boolean, unit_label?: string, description?: string, custom_fields?: object[], shipping_cost?: object, default_price_data?: object, marketing_features?: object[], package_dimensions?: object, statement_descriptor?: string) — Creates a new product in stripe, encoding the request as `application/x-www-form-urlencoded` by flattening nested structures. - stripe_create_refund(amount?: integer, charge?: string, reason?: string, metadata?: object, payment_intent?: string, reverse_transfer?: boolean, refund_application_fee?: boolean) — Creates a full or partial refund in stripe, targeting either a specific charge id or a payment intent id. - stripe_create_subscription(items: object[], currency?: string, customer: string, metadata?: object, cancel_at?: integer, discounts?: object[], trial_end?: integer, description?: string, off_session?: boolean, on_behalf_of?: string, automatic_tax?: object, transfer_data?: object, days_until_due?: integer, default_source?: string, promotion_code?: string, trial_settings?: object, trial_from_plan?: boolean, invoice_settings?: object, payment_behavior?: string, payment_settings?: object, add_invoice_items?: object[], collection_method?: string, default_tax_rates?: string[], trial_period_days?: integer, billing_thresholds?: object, proration_behavior?: string, backdate_start_date?: integer, billing_cycle_anchor?: integer, cancel_at_period_end?: boolean, default_payment_method?: string, application_fee_percent?: number, billing_cycle_anchor_config?: object, pending_invoice_item_interval?: object) — Creates a new, highly configurable subscription for an existing stripe customer, supporting multiple items, trials, discounts, and various billing/payment options. - stripe_delete_customer(customer_id: string) — Permanently deletes an existing stripe customer; this irreversible action also cancels their active subscriptions and removes all associated data. - stripe_list_charges(limit?: integer, created?: object, customer?: string, ending_before?: string, payment_intent?: string, starting_after?: string, transfer_group?: string) — 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 ord - stripe_list_coupons(limit?: integer, ending_before?: string, starting_after?: string) — Retrieves a list of discount coupons from a stripe account, supporting pagination via `limit`, `starting after`, and `ending before`. - stripe_list_customer_payment_methods(type?: string, limit?: integer, customer_id: string, ending_before?: string, starting_after?: string) — Retrieves a list of payment methods for a given customer, supporting type filtering and pagination. - stripe_list_customers(email?: string, limit?: integer, created?: object, test_clock?: string, ending_before?: string, starting_after?: string) — Retrieves a list of stripe customers, with options to filter by email, creation date, or test clock, and support for pagination. - stripe_list_invoices(limit?: integer, status?: string, created?: object, customer?: string, subscription?: string, ending_before?: string, starting_after?: string, collection_method?: string) — Retrieves a list of stripe invoices, filterable by various criteria and paginatable using invoice id cursors obtained from previous responses. - stripe_list_payment_intents(limit?: integer, created?: object, customer?: string, ending_before?: string, starting_after?: string) — Retrieves a list of stripe paymentintents, optionally filtered and paginated using paymentintent ids as cursors. - stripe_list_payment_links(limit?: integer, active?: boolean, ending_before?: string, starting_after?: string) — Retrieves a list of payment links from stripe, sorted by creation date in descending order by default. - stripe_list_products(ids?: string[], url?: string, limit?: integer, active?: boolean, created?: object, shippable?: boolean, ending_before?: string, starting_after?: string) — 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. - stripe_list_refunds(limit?: integer, charge?: string, ending_before?: string, payment_intent?: string, starting_after?: string) — Lists stripe refunds, sorted by creation date descending (newest first), with optional filtering by charge or payment intent and pagination support. - stripe_list_shipping_rates(limit?: integer, active?: boolean, created?: object, currency?: string, ending_before?: string, starting_after?: string) — Retrieves a list of stripe shipping rates, filterable by active status, creation date, and currency; useful for managing or displaying shipping options. - stripe_list_subscriptions(limit?: integer, price?: string, status?: string, created?: object, customer?: string, test_clock?: string, automatic_tax?: object, ending_before?: string, starting_after?: string, collection_method?: string, current_period_end?: object, current_period_start?: object) — 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. - stripe_list_tax_codes(limit?: integer, ending_before?: string, starting_after?: string) — Retrieves a paginated list of globally available, predefined stripe tax codes used for classifying products and services in stripe tax. - stripe_list_tax_rates(limit?: integer, active?: boolean, created?: object, inclusive?: boolean, ending_before?: string, starting_after?: string) — Retrieves a list of tax rates, which are returned sorted by creation date in descending order. - stripe_retrieve_balance() — Retrieves the complete current balance details for the connected stripe account. - stripe_retrieve_charge(charge_id: string) — Retrieves full details for an existing stripe charge using its unique id. - stripe_retrieve_customer(customer_id: string) — Retrieves detailed information for an existing stripe customer using their unique customer id. - stripe_retrieve_payment_intent(client_secret?: string, payment_intent_id: string) — Retrieves a paymentintent by its id; `client secret` is required if a publishable api key is used. - stripe_retrieve_refund(refund_id: string) — Retrieves details for an existing stripe refund using its unique `refund id`. - stripe_retrieve_subscription(subscription_id: string) — Retrieves detailed information for an existing stripe subscription using its unique id. - stripe_search_customers(page?: string, limit?: integer, query: string) — Retrieves a list of stripe customers matching a search query that adheres to stripe's search query language. - stripe_update_customer(tax?: object, name?: string, email?: string, phone?: string, coupon?: string, address?: object, balance?: integer, metadata?: object, shipping?: object, tax_exempt?: string, customer_id: string, description?: string, default_source?: string, invoice_settings?: object, default_payment_method?: string) — Updates an existing stripe customer, identified by customer id, with only the provided details; unspecified fields remain unchanged. - stripe_update_payment_intent(amount?: integer, currency?: string, customer?: string, metadata?: object, shipping?: object, description?: string, receipt_email?: string, payment_method?: string, payment_intent_id: string, setup_future_usage?: string, statement_descriptor?: string, statement_descriptor_suffix?: string) — 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 necess - stripe_update_subscription(items?: object[], metadata?: object, description?: string, automatic_tax?: object, subscription_id: string, payment_behavior?: string, collection_method?: string, proration_behavior?: string, billing_cycle_anchor?: integer, cancel_at_period_end?: boolean, default_payment_method?: string) — 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. ## Links Docs: https://mcp.ai/docs/mcps/stripe Website: https://mcp.ai/mcps/stripe