Stripe Automation via Rube MCP
Automate Stripe payment operations through Composio's Stripe toolkit via Rube MCP.
Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Stripe connection via
RUBE_MANAGE_CONNECTIONS with toolkit stripe
- Always call
RUBE_SEARCH_TOOLS first to get current tool schemas
Setup
Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
- Verify Rube MCP is available by confirming
RUBE_SEARCH_TOOLS responds
- Call
RUBE_MANAGE_CONNECTIONS with toolkit stripe
- If connection is not ACTIVE, follow the returned auth link to complete Stripe connection
- Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. Manage Customers
When to use: User wants to create, update, search, or list Stripe customers
Tool sequence:
STRIPE_SEARCH_CUSTOMERS - Search customers by email/name [Optional]
STRIPE_LIST_CUSTOMERS - List all customers [Optional]
STRIPE_CREATE_CUSTOMER - Create a new customer [Optional]
STRIPE_POST_CUSTOMERS_CUSTOMER - Update a customer [Optional]
Key parameters:
email: Customer email
name: Customer name
description: Customer description
metadata: Key-value metadata pairs
customer: Customer ID for updates (e.g., 'cus_xxx')
Pitfalls:
- Stripe allows duplicate customers with the same email; search first to avoid duplicates
- Customer IDs start with 'cus_'
2. Manage Charges and Payments
When to use: User wants to create charges, payment intents, or view charge history
Tool sequence:
STRIPE_LIST_CHARGES - List charges with filters [Optional]
STRIPE_CREATE_PAYMENT_INTENT - Create a payment intent [Optional]
STRIPE_CONFIRM_PAYMENT_INTENT - Confirm a payment intent [Optional]
STRIPE_POST_CHARGES - Create a direct charge [Optional]
STRIPE_CAPTURE_CHARGE - Capture an authorized charge [Optional]
Key parameters:
amount: Amount in smallest currency unit (e.g., cents for USD)
currency: Three-letter ISO currency code (e.g., 'usd')
customer: Customer ID
payment_method: Payment method ID
description: Charge description
Pitfalls:
- Amounts are in smallest currency unit (100 = $1.00 for USD)
- Currency codes must be lowercase (e.g., 'usd' not 'USD')
- Payment intents are the recommended flow over direct charges
3. Manage Subscriptions
When to use: User wants to create, list, update, or cancel subscriptions
Tool sequence:
STRIPE_LIST_SUBSCRIPTIONS - List subscriptions [Optional]
STRIPE_POST_CUSTOMERS_CUSTOMER_SUBSCRIPTIONS - Create subscription [Optional]
STRIPE_RETRIEVE_SUBSCRIPTION - Get subscription details [Optional]
STRIPE_UPDATE_SUBSCRIPTION - Modify subscription [Optional]
Key parameters:
customer: Customer ID
items: Array of price items (price_id and quantity)
subscription: Subscription ID for retrieval/update (e.g., 'sub_xxx')
Pitfalls:
- Subscriptions require a valid customer with a payment method
- Price IDs (not product IDs) are used for subscription items
- Cancellation can be immediate or at period end
4. Manage Invoices
When to use: User wants to create, list, or search invoices
Tool sequence:
STRIPE_LIST_INVOICES - List invoices [Optional]
STRIPE_SEARCH_INVOICES - Search invoices [Optional]
STRIPE_CREATE_INVOICE - Create an invoice [Optional]
Key parameters:
customer: Customer ID for invoice
collection_method: 'charge_automatically' or 'send_invoice'
days_until_due: Days until invoice is due
Pitfalls:
- Invoices auto-finalize by default; use
auto_advance: false for draft invoices
5. Manage Products and Prices
When to use: User wants to list or search products and their pricing
Tool sequence:
STRIPE_LIST_PRODUCTS - List products [Optional]
STRIPE_SEARCH_PRODUCTS - Search products [Optional]
STRIPE_LIST_PRICES - List prices [Optional]
STRIPE_GET_PRICES_SEARCH - Search prices [Optional]
Key parameters:
active: Filter by active/inactive status
query: Search query for search endpoints
Pitfalls:
- Products and prices are separate objects; a product can have multiple prices
- Price IDs (e.g., 'price_xxx') are used for subscriptions and checkout
6. Handle Refunds
When to use: User wants to issue refunds on charges
Tool sequence:
STRIPE_LIST_REFUNDS - List refunds [Optional]
STRIPE_POST_CHARGES_CHARGE_REFUNDS - Create a refund [Optional]
STRIPE_CREATE_REFUND - Create refund via payment intent [Optional]
Key parameters:
charge: Charge ID for refund
amount: Partial refund amount (omit for full refund)
reason: Refund reason ('duplicate', 'fraudulent', 'requested_by_customer')
Pitfalls:
- Refunds can take 5-10 business days to appear on customer statements
- Amount is in smallest currency unit
Common Patterns
Amount Formatting
Stripe uses smallest currency unit:
- USD: $10.50 = 1050 cents
- EUR: 10.50 = 1050 cents
- JPY: 1000 = 1000 (no decimals)
Pagination
- Use
limit parameter (max 100)
- Check
has_more in response
- Pass
starting_after with last object ID for next page
- Continue until
has_more is false
Known Pitfalls
Amount Units:
- Always use smallest currency unit (cents for USD/EUR)
- Zero-decimal currencies (JPY, KRW) use the amount directly
ID Prefixes:
- Customers:
cus_, Charges: ch_, Subscriptions: sub_
- Invoices:
in_, Products: prod_, Prices: price_
- Payment Intents:
pi_, Refunds: re_
Quick Reference
| Task |
Tool Slug |
Key Params |
| Create customer |
STRIPE_CREATE_CUSTOMER |
email, name |
| Search customers |
STRIPE_SEARCH_CUSTOMERS |
query |
| Update customer |
STRIPE_POST_CUSTOMERS_CUSTOMER |
customer, fields |
| List charges |
STRIPE_LIST_CHARGES |
customer, limit |
| Create payment intent |
STRIPE_CREATE_PAYMENT_INTENT |
amount, currency |
| Confirm payment |
STRIPE_CONFIRM_PAYMENT_INTENT |
payment_intent |
| List subscriptions |
STRIPE_LIST_SUBSCRIPTIONS |
customer |
| Create subscription |
STRIPE_POST_CUSTOMERS_CUSTOMER_SUBSCRIPTIONS |
customer, items |
| Update subscription |
STRIPE_UPDATE_SUBSCRIPTION |
subscription, fields |
| List invoices |
STRIPE_LIST_INVOICES |
customer |
| Create invoice |
STRIPE_CREATE_INVOICE |
customer |
| Search invoices |
STRIPE_SEARCH_INVOICES |
query |
| List products |
STRIPE_LIST_PRODUCTS |
active |
| Search products |
STRIPE_SEARCH_PRODUCTS |
query |
| List prices |
STRIPE_LIST_PRICES |
product |
| Search prices |
STRIPE_GET_PRICES_SEARCH |
query |
| List refunds |
STRIPE_LIST_REFUNDS |
charge |
| Create refund |
STRIPE_CREATE_REFUND |
charge, amount |
| Payment methods |
STRIPE_LIST_CUSTOMER_PAYMENT_METHODS |
customer |
| Checkout session |
STRIPE_CREATE_CHECKOUT_SESSION |
line_items |
| List payment intents |
STRIPE_LIST_PAYMENT_INTENTS |
customer |
When to Use
This skill is applicable to execute the workflow or actions described in the overview.
Example
User request:
Automate Stripe tasks via Rube MCP (Composio): customers, charges, subscriptions, invoices, products, refunds.
Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
1---2name: stripe-automation3description: Automate Stripe tasks via Rube MCP (Composio): customers, charges, subscriptions, invoices, products, refunds. Always search tools first for current schemas.4---5
6# Stripe Automation via Rube MCP
7
8Automate Stripe payment operations through Composio's Stripe toolkit via Rube MCP.
9
10## Prerequisites
11
12- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
13- Active Stripe connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `stripe`
14- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas
15
16## Setup
17
18**Get Rube MCP**: Add `https://rube.app/mcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
19
201. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds
212. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `stripe`
223. If connection is not ACTIVE, follow the returned auth link to complete Stripe connection
234. Confirm connection status shows ACTIVE before running any workflows
24
25## Core Workflows
26
27### 1. Manage Customers
28
29**When to use**: User wants to create, update, search, or list Stripe customers
30
31**Tool sequence**:
321. `STRIPE_SEARCH_CUSTOMERS` - Search customers by email/name [Optional]
332. `STRIPE_LIST_CUSTOMERS` - List all customers [Optional]
343. `STRIPE_CREATE_CUSTOMER` - Create a new customer [Optional]
354. `STRIPE_POST_CUSTOMERS_CUSTOMER` - Update a customer [Optional]
36
37**Key parameters**:
38- `email`: Customer email
39- `name`: Customer name
40- `description`: Customer description
41- `metadata`: Key-value metadata pairs
42- `customer`: Customer ID for updates (e.g., 'cus_xxx')
43
44**Pitfalls**:
45- Stripe allows duplicate customers with the same email; search first to avoid duplicates
46- Customer IDs start with 'cus_'
47
48### 2. Manage Charges and Payments
49
50**When to use**: User wants to create charges, payment intents, or view charge history
51
52**Tool sequence**:
531. `STRIPE_LIST_CHARGES` - List charges with filters [Optional]
542. `STRIPE_CREATE_PAYMENT_INTENT` - Create a payment intent [Optional]
553. `STRIPE_CONFIRM_PAYMENT_INTENT` - Confirm a payment intent [Optional]
564. `STRIPE_POST_CHARGES` - Create a direct charge [Optional]
575. `STRIPE_CAPTURE_CHARGE` - Capture an authorized charge [Optional]
58
59**Key parameters**:
60- `amount`: Amount in smallest currency unit (e.g., cents for USD)
61- `currency`: Three-letter ISO currency code (e.g., 'usd')
62- `customer`: Customer ID
63- `payment_method`: Payment method ID
64- `description`: Charge description
65
66**Pitfalls**:
67- Amounts are in smallest currency unit (100 = $1.00 for USD)
68- Currency codes must be lowercase (e.g., 'usd' not 'USD')
69- Payment intents are the recommended flow over direct charges
70
71### 3. Manage Subscriptions
72
73**When to use**: User wants to create, list, update, or cancel subscriptions
74
75**Tool sequence**:
761. `STRIPE_LIST_SUBSCRIPTIONS` - List subscriptions [Optional]
772. `STRIPE_POST_CUSTOMERS_CUSTOMER_SUBSCRIPTIONS` - Create subscription [Optional]
783. `STRIPE_RETRIEVE_SUBSCRIPTION` - Get subscription details [Optional]
794. `STRIPE_UPDATE_SUBSCRIPTION` - Modify subscription [Optional]
80
81**Key parameters**:
82- `customer`: Customer ID
83- `items`: Array of price items (price_id and quantity)
84- `subscription`: Subscription ID for retrieval/update (e.g., 'sub_xxx')
85
86**Pitfalls**:
87- Subscriptions require a valid customer with a payment method
88- Price IDs (not product IDs) are used for subscription items
89- Cancellation can be immediate or at period end
90
91### 4. Manage Invoices
92
93**When to use**: User wants to create, list, or search invoices
94
95**Tool sequence**:
961. `STRIPE_LIST_INVOICES` - List invoices [Optional]
972. `STRIPE_SEARCH_INVOICES` - Search invoices [Optional]
983. `STRIPE_CREATE_INVOICE` - Create an invoice [Optional]
99
100**Key parameters**:
101- `customer`: Customer ID for invoice
102- `collection_method`: 'charge_automatically' or 'send_invoice'
103- `days_until_due`: Days until invoice is due
104
105**Pitfalls**:
106- Invoices auto-finalize by default; use `auto_advance: false` for draft invoices
107
108### 5. Manage Products and Prices
109
110**When to use**: User wants to list or search products and their pricing
111
112**Tool sequence**:
1131. `STRIPE_LIST_PRODUCTS` - List products [Optional]
1142. `STRIPE_SEARCH_PRODUCTS` - Search products [Optional]
1153. `STRIPE_LIST_PRICES` - List prices [Optional]
1164. `STRIPE_GET_PRICES_SEARCH` - Search prices [Optional]
117
118**Key parameters**:
119- `active`: Filter by active/inactive status
120- `query`: Search query for search endpoints
121
122**Pitfalls**:
123- Products and prices are separate objects; a product can have multiple prices
124- Price IDs (e.g., 'price_xxx') are used for subscriptions and checkout
125
126### 6. Handle Refunds
127
128**When to use**: User wants to issue refunds on charges
129
130**Tool sequence**:
1311. `STRIPE_LIST_REFUNDS` - List refunds [Optional]
1322. `STRIPE_POST_CHARGES_CHARGE_REFUNDS` - Create a refund [Optional]
1333. `STRIPE_CREATE_REFUND` - Create refund via payment intent [Optional]
134
135**Key parameters**:
136- `charge`: Charge ID for refund
137- `amount`: Partial refund amount (omit for full refund)
138- `reason`: Refund reason ('duplicate', 'fraudulent', 'requested_by_customer')
139
140**Pitfalls**:
141- Refunds can take 5-10 business days to appear on customer statements
142- Amount is in smallest currency unit
143
144## Common Patterns
145
146### Amount Formatting
147
148Stripe uses smallest currency unit:
149- USD: $10.50 = 1050 cents
150- EUR: 10.50 = 1050 cents
151- JPY: 1000 = 1000 (no decimals)
152
153### Pagination
154
155- Use `limit` parameter (max 100)
156- Check `has_more` in response
157- Pass `starting_after` with last object ID for next page
158- Continue until `has_more` is false
159
160## Known Pitfalls
161
162**Amount Units**:
163- Always use smallest currency unit (cents for USD/EUR)
164- Zero-decimal currencies (JPY, KRW) use the amount directly
165
166**ID Prefixes**:
167- Customers: `cus_`, Charges: `ch_`, Subscriptions: `sub_`
168- Invoices: `in_`, Products: `prod_`, Prices: `price_`
169- Payment Intents: `pi_`, Refunds: `re_`
170
171## Quick Reference
172
173| Task | Tool Slug | Key Params |
174|------|-----------|------------|
175| Create customer | STRIPE_CREATE_CUSTOMER | email, name |
176| Search customers | STRIPE_SEARCH_CUSTOMERS | query |
177| Update customer | STRIPE_POST_CUSTOMERS_CUSTOMER | customer, fields |
178| List charges | STRIPE_LIST_CHARGES | customer, limit |
179| Create payment intent | STRIPE_CREATE_PAYMENT_INTENT | amount, currency |
180| Confirm payment | STRIPE_CONFIRM_PAYMENT_INTENT | payment_intent |
181| List subscriptions | STRIPE_LIST_SUBSCRIPTIONS | customer |
182| Create subscription | STRIPE_POST_CUSTOMERS_CUSTOMER_SUBSCRIPTIONS | customer, items |
183| Update subscription | STRIPE_UPDATE_SUBSCRIPTION | subscription, fields |
184| List invoices | STRIPE_LIST_INVOICES | customer |
185| Create invoice | STRIPE_CREATE_INVOICE | customer |
186| Search invoices | STRIPE_SEARCH_INVOICES | query |
187| List products | STRIPE_LIST_PRODUCTS | active |
188| Search products | STRIPE_SEARCH_PRODUCTS | query |
189| List prices | STRIPE_LIST_PRICES | product |
190| Search prices | STRIPE_GET_PRICES_SEARCH | query |
191| List refunds | STRIPE_LIST_REFUNDS | charge |
192| Create refund | STRIPE_CREATE_REFUND | charge, amount |
193| Payment methods | STRIPE_LIST_CUSTOMER_PAYMENT_METHODS | customer |
194| Checkout session | STRIPE_CREATE_CHECKOUT_SESSION | line_items |
195| List payment intents | STRIPE_LIST_PAYMENT_INTENTS | customer |
196
197## When to Use
198This skill is applicable to execute the workflow or actions described in the overview.
199
200## Example
201
202**User request:**
203
204> Automate Stripe tasks via Rube MCP (Composio): customers, charges, subscriptions, invoices, products, refunds.
205
206## Limitations
207- Use this skill only when the task clearly matches the scope described above.
208- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
209- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.