Back to the catalog

Stripe MCP

Read-only MCP server for querying Stripe customers, payments, and invoices.

Open source Open in the app JSON README (API)

About

Read-only MCP server for querying Stripe customers, payments, and invoices.

Details

Kind
MCP servers
Topic
Finance & crypto
Publisher
robinafaruqia
Origin
official
Category
ferramentas
Transport
local
Version
0.1.2
Stars
1
Open pull requests
1
Last push
2026-09-07T06:33:37Z
Repository state
ativo
Language
JavaScript
License
MIT
Added
2026-09-04 12:01:15
Updated
2026-09-04 12:01:15
Origin id
io.github.robinafaruqia/stripe-mcp

README

[![npm version](https://img.shields.io/npm/v/@devtechtricks/stripe-mcp.svg)](https://www.npmjs.com/package/@devtechtricks/stripe-mcp)
[![npm downloads](https://img.shields.io/npm/dm/@devtechtricks/stripe-mcp.svg)](https://www.npmjs.com/package/@devtechtricks/stripe-mcp)
[![license](https://img.shields.io/npm/l/@devtechtricks/stripe-mcp.svg)](https://github.com/robinafaruqia/stripe-mcp/blob/main/LICENSE)
[![GitHub stars](https://img.shields.io/github/stars/robinafaruqia/stripe-mcp.svg?style=social)](https://github.com/robinafaruqia/stripe-mcp)
# stripe-mcp

A **read-only MCP server** for querying **Stripe** — customers, payments, subscriptions, invoices, and refunds.

Use it with **any AI or client that supports MCP** (Model Context Protocol)—Cursor, Claude Desktop, Claude Code, Windsurf, or other MCP hosts.

## Features

- **Read-only by design** — no charge, refund, update, or delete tools
- **Test keys only** — refuses to start with `sk_live_` / `rk_live_`
- **Single file** — just `index.js`, no build step
- **Works with any MCP client** — Cursor, Claude, Windsurf, and others

## MCP Configuration

### Cursor — one-click install

[![Add MCP server to Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en-US/install-mcp?name=stripe-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBkZXZ0ZWNodHJpY2tzL3N0cmlwZS1tY3AiXSwiZW52Ijp7IlNUUklQRV9TRUNSRVRfS0VZIjoiWU9VUl9TVFJJUEVfVEVTVF9LRVkifX0=)

After install, replace `YOUR_STRIPE_TEST_KEY` with a Stripe **test** secret (`sk_test_...` or `rk_test_...`) from the [Stripe Dashboard](https://dashboard.stripe.com/test/apikeys). A restricted key with only read scopes is preferred.

### Using npx (recommended)

Add to your MCP client config (e.g. Cursor: `~/.cursor/mcp.json` or Settings → MCP; Claude: `claude_desktop_config.json`; etc.):

```json
{
  "mcpServers": {
    "stripe-mcp": {
      "command": "npx",
      "args": ["-y", "@devtechtricks/stripe-mcp"],
      "env": {
        "STRIPE_SECRET_KEY": "sk_test_..."
      }
    }
  }
}
```

Claude Code:

```bash
claude mcp add stripe-mcp --env STRIPE_SECRET_KEY=sk_test_... -- npx -y @devtechtricks/stripe-mcp
```

### From source (development)

```bash
git clone https://github.com/robinafaruqia/stripe-mcp.git
cd stripe-mcp
npm install
cp .env.example .env   # then put your sk_test_ / rk_test_ key in .env
```

Then in your MCP config:

```json
{
  "mcpServers": {
    "stripe-mcp": {
      "command": "node",
      "args": ["/path/to/stripe-mcp/index.js"]
    }
  }
}
```

`index.js` loads `.env` from the package directory when `STRIPE_SECRET_KEY` is not already set. npm installs do not include `.env` — MCP clients should pass the key in `env`.

## Available Tools

| Tool | Description |
|------|-------------|
| `list_customers` | List recent customers. Optional: `limit`, `email`. |
| `get_customer` | Get a customer by ID. Required: `customer_id`. |
| `list_payments` | List recent payment intents. Optional: `limit`, `customer_id`. |
| `get_payment` | Get a payment intent by ID. Required: `payment_intent_id`. |
| `list_subscriptions` | List subscriptions. Optional: `limit`, `customer_id`, `status`. |
| `get_subscription` | Get a subscription by ID. Required: `subscription_id`. |
| `list_invoices` | List invoices. Optional: `limit`, `customer_id`, `status`. |
| `list_refunds` | List refunds. Optional: `limit`, `payment_intent_id`. |

## Example

```
1. list_customers({ limit: 5 })
2. get_customer({ customer_id: "cus_ABC123" })
3. list_subscriptions({ customer_id: "cus_ABC123" })
4. list_payments({ limit: 10 })
```

## License

MIT

More