mcpField
S
Stripe MCP

Stripe MCP

Local
npmjs.comFinance2Updated 4w ago

About Stripe MCP

Stripe MCP is a read-only server for querying Stripe customer, payment, subscription, invoice, and refund data. It is intended for MCP clients that need access to Stripe test accounts, and rejects live secret keys.

Key features

  1. 01Query customers and payments
  2. 02Retrieve subscriptions and invoices
  3. 03List refunds
  4. 04Reject live secret keys
  5. 05Single-file implementation with no build step

Use cases

  1. 01Review recent customer and payment records
  2. 02Check a customer's subscriptions and invoices
  3. 03Inspect refunds for a payment

MCP support

Exposes read-only Stripe queries as tools to MCP clients. Configure it with a Stripe test secret key; live keys are refused.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"robinafaruqia-stripe": {
"command": "npx",
"args": [
"-y",
"@devtechtricks/stripe-mcp"
],
"env": {
"STRIPE_SECRET_KEY": "<STRIPE_SECRET_KEY>"
}
}
}
}
Run commandnpx -y @devtechtricks/stripe-mcp
Environment variables to set
STRIPE_SECRET_KEYSecretStripe test-mode secret or restricted key (sk_test_ or rk_test_)

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@devtechtricks/stripe-mcp0.1.2

Tools

8

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
emailstringNoFilter by exact customer email
limitnumberNoMax results (1-100)

Details

From the project README

npm version npm downloads license GitHub stars

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

Cursor plugin

This repo is an Agent Plugin and a Cursor plugin. cursor.directory only detects components committed at the repo root. The files it needs are:

FilePurpose
mcp.jsonMCP server entry (npx -y @devtechtricks/stripe-mcp)
plugin.jsonOpen Plugins manifest
.cursor-plugin/plugin.jsonCursor listing metadata and the STRIPE_SECRET_KEY variable

After these files are on the default branch of the public GitHub repo, submit https://github.com/robinafaruqia/stripe-mcp at cursor.directory/plugins/new. On install, set STRIPE_SECRET_KEY to a Stripe test key (sk_test_... or rk_test_...).

MCP Configuration

Cursor — one-click install

Add MCP server to Cursor

After install, replace YOUR_STRIPE_TEST_KEY with a Stripe test secret (sk_test_... or rk_test_...) from the Stripe Dashboard. 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.):

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

Claude Code:

claude mcp add stripe-mcp --env STRIPE_SECRET_KEY=sk_test_... -- npx -y @devtechtricks/stripe-mcp
From source (development)
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:

{
  "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

ToolDescription
list_customersList recent customers. Optional: limit, email.
get_customerGet a customer by ID. Required: customer_id.
list_paymentsList recent payment intents. Optional: limit, customer_id.
get_paymentGet a payment intent by ID. Required: payment_intent_id.
list_subscriptionsList subscriptions. Optional: limit, customer_id, status.
get_subscriptionGet a subscription by ID. Required: subscription_id.
list_invoicesList invoices. Optional: limit, customer_id, status.
list_refundsList 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

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.