// connections

Stripe

Manage Stripe customers, payment intents, subscriptions, refunds, products, prices and Checkout sessions, and read charges, invoices and payouts. Connect with OAuth or a secret key.

21 mcp tools30 operations
rest
https://api.superagnt.com/v1/connections/stripe plus the vendor's own path, with your superagnt_ API key as Authorization: Bearer.
mcp
Tools named connection_stripe_* on https://mcp.superagnt.com/mcp, served once the account is connected.
billing
Stripe bills your own account. Calls cost no superagnt_ data credits.
rate limit
25 requests a second, 1,500 a minute: the vendor's ceiling as the registry records it, for sizing bursts. Your plan's own limit is on Connections.

The Stripe connection lets an agent work in your Stripe account: customers, charges, payment intents and setup intents, subscriptions, invoices, products and prices, Checkout sessions, refunds and payouts.

three tools move money

These are paid tools, kept apart from every other write. connection_stripe_payment_intents_write creates or updates a payment intent, and a confirmed payment intent charges the customer. connection_stripe_refunds_write refunds a charge or payment intent in full or in part. connection_stripe_subscriptions_write creates or updates a subscription: a new subscription can charge the customer right away, and a change can add prorated charges. By default, creating a payment intent, a subscription or a refund always asks a person first, and updating a payment intent or a subscription asks.

01

Setup

Connect with Stripe

  1. Start the install. In the superagnt app open Integrations, pick Stripe and click Connect with Stripe.
  2. Approve the connection. Stripe asks you to connect your account with read and write access.

Paste a secret key

If Connect with Stripe is not offered, the connect dialog opens on the key form. To use a key instead of OAuth, click Use API key instead.

  1. Get a key. In the Stripe Dashboard open Developers → API keys and copy a secret key (sk_live_..., or sk_test_... for test mode). A restricted key works too: scope it to the resources your agents need.
  2. Paste it. Paste it as the Secret key on the Stripe connection.

When a workspace has both an OAuth install and a pasted key, calls use the OAuth install.

02

Things to know

send REST write bodies as JSON

The REST route reads a request body only as JSON. Stripe takes form-encoded parameters, so send them as a JSON object with Content-Type: application/x-www-form-urlencoded: superagnt_ form-encodes the object for Stripe, writing nested objects and arrays as Stripe's bracket keys (metadata[crm_id], line_items[0][price]). A body that is already form-encoded, such as curl's --data-urlencode, is not read, and Stripe receives the call with no parameters.

  • Amounts are integers in the currency's smallest unit, such as cents for USD.
  • Lists take limit (up to 100). Customers, charges and payment intents also page with starting_after, the id of the last object you received.
  • A Stripe-Version header on a REST call is not forwarded to Stripe.
  • Over REST, a Stripe path outside the operations list is still forwarded, without validation.
  • Deleting a customer and cancelling a payment intent or a subscription cannot be undone, and always ask a person first by default. Creating and updating customers, and creating setup intents, Checkout sessions, products and prices, run without asking.

03

Examples

List recent payment intents

list payment intentsbash
curl "https://api.superagnt.com/v1/connections/stripe/payment_intents?limit=5" \
  -H "Authorization: Bearer $AGNTDATA_API_KEY"

Create a customer

create a customerbash
curl -X POST "https://api.superagnt.com/v1/connections/stripe/customers" \
  -H "Authorization: Bearer $AGNTDATA_API_KEY" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d '{"email":"jenny.rosen@example.com","name":"Jenny Rosen","metadata":{"crm_id":"6735"}}'

Create a Checkout session

create a subscription checkoutbash
curl -X POST "https://api.superagnt.com/v1/connections/stripe/checkout/sessions" \
  -H "Authorization: Bearer $AGNTDATA_API_KEY" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d '{
    "mode": "subscription",
    "success_url": "https://example.com/success",
    "cancel_url": "https://example.com/cancel",
    "line_items": [{"price": "price_1Example", "quantity": 1}]
  }'

Stripe receives line_items[0][price]=price_1Example&line_items[0][quantity]=1. In the response, data.url is the hosted Checkout page.

04

Receiving Stripe webhooks

This connection calls Stripe; it does not receive Stripe's events. To trigger an agent from Stripe, create an inbound endpoint in the superagnt app (Webhooks, the Inbound tab, Create Webhook), copy its URL, https://api.superagnt.com/webhooks/ingest/<hookId>, and add it as a webhook endpoint in Stripe with the events you want. Stripe signs deliveries with its own Stripe-Signature header, which an inbound endpoint does not check, so leave the endpoint's signature verification off and keep its URL secret. Binding the endpoint to an agent or a pipeline is on Receiving webhooks.

05// mcp tools

21 tools, one per resource and risk

MCP servers and agents on the grouped surface list Stripe as these tools. Each takes an action, and the ones that work across record types an object. Every operation also keeps its own per-operation name, in the next table, which works on every server. How grouping works: Grouped tools.

ToolRiskActions
connection_stripe_customers_read

Read Stripe customers

List customers (newest first, filter by exact email) or get one customer by id.

read
listget
connection_stripe_customers_write

Create and update Stripe customers

Create a customer or update one. Pass the Stripe parameters in body.

write
createupdate
connection_stripe_customers_delete

Delete a Stripe customer

Delete a customer. Cannot be undone.

destructive
delete
connection_stripe_charges_read

Read Stripe charges

List charges (filter by customer) or get one by id.

read
listget
connection_stripe_payment_intents_read

Read Stripe payment intents

List payment intents (filter by customer) or get one by id.

read
listget
connection_stripe_payment_intents_write

Create and update Stripe payment intents

Moves money: create or update a payment intent. Pass the Stripe parameters in body; a confirmed payment intent charges the customer.

paid
createupdate
connection_stripe_payment_intents_delete

Cancel a Stripe payment intent

Cancel a payment intent. Cannot be undone.

destructive
cancel
connection_stripe_setup_intents_write

Create a Stripe setup intent

Create a setup intent that saves a customer's payment method for later. Pass the Stripe parameters in body.

write
create
connection_stripe_refunds_read

List Stripe refunds

List refunds (filter by charge or payment intent).

read
list
connection_stripe_refunds_write

Refund a Stripe payment

Moves money: refund a charge or payment intent in full or in part. Pass the Stripe parameters in body.

paid
create
connection_stripe_payouts_read

List Stripe payouts

List payouts to the bank account (filter by status).

read
list
connection_stripe_checkout_sessions_read

Read Stripe Checkout sessions

List Checkout sessions (filter by customer) or get one by id.

read
listget
connection_stripe_checkout_sessions_write

Create a Stripe Checkout session

Create a hosted Checkout page. Pass the Stripe parameters in body.

write
create
connection_stripe_subscriptions_read

Read Stripe subscriptions

List subscriptions (filter by customer or status) or get one by id.

read
listget
connection_stripe_subscriptions_write

Create and update Stripe subscriptions

Moves money: create or update a subscription. Pass the Stripe parameters in body; a new subscription can charge the customer right away, and a change can add prorated charges.

paid
createupdate
connection_stripe_subscriptions_delete

Cancel a Stripe subscription

Cancel a subscription. Cannot be undone.

destructive
cancel
connection_stripe_invoices_read

Read Stripe invoices

List invoices (filter by customer, subscription or status) or get one by id.

read
listget
connection_stripe_products_read

List Stripe products

List the products of the catalog (filter by active).

read
list
connection_stripe_products_write

Create a Stripe product

Create a product. Pass the Stripe parameters in body.

write
create
connection_stripe_prices_read

List Stripe prices

List the prices of the catalog (filter by product or active).

read
list
connection_stripe_prices_write

Create a Stripe price

Create a price for a product. Pass the Stripe parameters in body.

write
create
06// operations

All 30 operations

Each operation is a REST path under https://api.superagnt.com/v1/connections/stripe and an MCP tool. The per-operation tool name is the one permissions, approvals and usage records use.

OperationMCP tool
GET/customers

List customers

connection_stripe_listcustomersgrouped: connection_stripe_customers_read, action list
POST/customers

Create a customer

connection_stripe_createcustomergrouped: connection_stripe_customers_write, action create
GET/customers/{customer}

Retrieve a customer

connection_stripe_retrievecustomergrouped: connection_stripe_customers_read, action get
POST/customers/{customer}

Update a customer

connection_stripe_updatecustomergrouped: connection_stripe_customers_write, action update
DELETE/customers/{customer}

Delete a customer

connection_stripe_deletecustomergrouped: connection_stripe_customers_delete, action delete
GET/charges

List charges

connection_stripe_listchargesgrouped: connection_stripe_charges_read, action list
GET/charges/{charge}

Retrieve a charge

connection_stripe_retrievechargegrouped: connection_stripe_charges_read, action get
GET/payment_intents

List payment intents

connection_stripe_listpaymentintentsgrouped: connection_stripe_payment_intents_read, action list
POST/payment_intents

Create a payment intent

connection_stripe_createpaymentintentgrouped: connection_stripe_payment_intents_write, action create
GET/payment_intents/{intent}

Retrieve a payment intent

connection_stripe_retrievepaymentintentgrouped: connection_stripe_payment_intents_read, action get
POST/payment_intents/{intent}

Update a payment intent

connection_stripe_updatepaymentintentgrouped: connection_stripe_payment_intents_write, action update
POST/payment_intents/{intent}/cancel

Cancel a payment intent

connection_stripe_cancelpaymentintentgrouped: connection_stripe_payment_intents_delete, action cancel
POST/setup_intents

Create a setup intent

connection_stripe_createsetupintentgrouped: connection_stripe_setup_intents_write, action create
GET/subscriptions

List subscriptions

connection_stripe_listsubscriptionsgrouped: connection_stripe_subscriptions_read, action list
POST/subscriptions

Create a subscription

connection_stripe_createsubscriptiongrouped: connection_stripe_subscriptions_write, action create
GET/subscriptions/{subscription}

Retrieve a subscription

connection_stripe_retrievesubscriptiongrouped: connection_stripe_subscriptions_read, action get
POST/subscriptions/{subscription}

Update a subscription

connection_stripe_updatesubscriptiongrouped: connection_stripe_subscriptions_write, action update
DELETE/subscriptions/{subscription}

Cancel a subscription

connection_stripe_cancelsubscriptiongrouped: connection_stripe_subscriptions_delete, action cancel
GET/invoices

List invoices

connection_stripe_listinvoicesgrouped: connection_stripe_invoices_read, action list
GET/invoices/{invoice}

Retrieve an invoice

connection_stripe_retrieveinvoicegrouped: connection_stripe_invoices_read, action get
GET/products

List products

connection_stripe_listproductsgrouped: connection_stripe_products_read, action list
POST/products

Create a product

connection_stripe_createproductgrouped: connection_stripe_products_write, action create
GET/prices

List prices

connection_stripe_listpricesgrouped: connection_stripe_prices_read, action list
POST/prices

Create a price

connection_stripe_createpricegrouped: connection_stripe_prices_write, action create
GET/checkout/sessions

List checkout sessions

connection_stripe_listcheckoutsessionsgrouped: connection_stripe_checkout_sessions_read, action list
POST/checkout/sessions

Create a checkout session

connection_stripe_createcheckoutsessiongrouped: connection_stripe_checkout_sessions_write, action create
GET/checkout/sessions/{session}

Retrieve a checkout session

connection_stripe_retrievecheckoutsessiongrouped: connection_stripe_checkout_sessions_read, action get
GET/refunds

List refunds

connection_stripe_listrefundsgrouped: connection_stripe_refunds_read, action list
POST/refunds

Create a refund

connection_stripe_createrefundgrouped: connection_stripe_refunds_write, action create
GET/payouts

List payouts

connection_stripe_listpayoutsgrouped: connection_stripe_payouts_read, action list