Stripe MCP Server
Stripe MCP Server lets agents search Stripe documentation and manage customers, products, prices, payment links, invoices, refunds, subscriptions, and disputes within Restricted API Key permissions.
Project overview
Stripe MCP Server is the payment operations component in Stripe's official ai repository. It offers a hosted Streamable HTTP endpoint and an @stripe/mcp local CLI that forwards MCP client messages from stdio to Stripe's hosted service. Agents can search documentation and work with customers, products, prices, payment links, invoices, refunds, subscriptions, coupons, and disputes. Because these tools can access real payment data and perform writes, use a narrowly scoped Restricted API Key, validate against a test account, and retain human approval for production actions.
Core capabilities
Stripe documentation search
The tool manifest includes search_documentation for retrieving Stripe knowledge during payment integration work.
Customer and product catalog
Create and list customers, products, and prices that feed payment-link, invoicing, and subscription workflows.
Payments and billing
Tools cover payment links, invoices, invoice items, invoice finalization, balances, Payment Intents, and refunds.
Subscriptions, coupons, and disputes
List, update, or cancel subscriptions; create or list coupons; and list or update disputes.
Connect account routing
With --stripe-account, the CLI validates the acct_ prefix and forwards a Stripe-Account header.
Setup and connection
Create a Restricted API Key in Stripe test mode with only the permissions needed, then run @stripe/mcp from a controlled MCP client. Prefer secret management or an environment variable and keep the key out of repositories, shared configuration, and chat.
Let an AI Agent install it
Send this prompt to Codex, Claude Code, or another AI agent that can work with your local environment.
Help me install and minimally verify Stripe MCP Server from https://github.com/stripe/ai/tree/main/tools/modelcontextprotocol. First read the component README, package.json, server.json, src/index.ts, src/cli.ts, SECURITY.md, and LICENSE, and explain the version difference among @stripe/mcp 0.3.3, server.json 0.2.4, and DXT manifest 0.1.0. Confirm Node.js 18+ and use only the Stripe test account and Restricted API Key that I explicitly specify. Prefer secure environment injection and never expose a real key in chat, command output, configuration, logs, or version control. Configure local stdio, list tools, and run documentation search first. Ask before any customer, price, payment-link, invoice, refund, subscription, coupon, dispute, Connect-account, production-mode, OAuth, Docker, or extra-permission action. Report the actual package version, visible tools, account mode, and result without printing credentials.- A Stripe test account
- Node.js 18 or newer
- An MCP client with stdio support, or Gemini CLI
- A Restricted API Key limited to the planned verification
- A test scenario that cannot affect production customers or real funds
npx -y @stripe/mcp --api-key=YOUR_STRIPE_RESTRICTED_KEY- 1Create a test Restricted API Key
Enable only documentation search and the small set of read permissions needed for verification; approve writes separately.
- 2Configure local stdio
Run @stripe/mcp from an MCP client and inject the key through a secure environment or secret manager.
- 3Verify read-only access first
List tools, confirm they match the Restricted API Key scope, and run one Stripe documentation search.
- 4Verify a test-account action
If explicitly approved, run one disposable low-risk action in test mode and confirm it in Stripe Dashboard.
- 5Define production boundaries
Before production use, issue a narrower key and document allowed accounts, tools, approvals, rotation, and revocation.
After connecting, list tools and run a read-only documentation search. Then, in Stripe test mode, create one disposable test customer or list test customers. Confirm the target account, mode, and audit record in Stripe Dashboard. The minimal check passes only when no production data or unapproved tools are visible.
- The README passes a key on the command line; avoid leaving a real key in shell history.
- The CLI warns on sk_ secret keys and recommends rk_ restricted keys.
- The local CLI still connects to Stripe's hosted endpoint and has no offline mode.
- Production payments, refunds, subscription cancellations, and dispute updates should require human approval.
Use cases
Payment integration documentation assistant
Search Stripe documentation for Checkout, Billing, or Connect work and return relevant material to the development conversation.
Customer and product catalog maintenance
Create or query test customers, products, and prices without switching repeatedly between the dashboard and coding environment.
Billing and subscription operations
Inspect invoices and subscriptions, then create invoice items, finalize invoices, or update test subscriptions after approval.
Refund and dispute assistance
Read payment and dispute context and draft an action plan while keeping refunds and dispute updates behind human approval.
Assessment
Stripe MCP Server brings official payment-platform capabilities into an agent tool layer and reuses Stripe's Restricted API Key permission model. Documentation, setup, source, tests, MIT licensing, and security reporting are clear, and the repository remains active. The main risk is equally clear: the local CLI forwards credentials and requests to Stripe's hosted endpoint, while tools include sensitive writes such as refunds, subscription cancellation, and dispute updates. It fits teams with strong test-account, secret-management, and approval practices, not autonomous agents holding broad production keys.
Why it may be useful
- Officially maintained by Stripe with clear repository identity and security reporting
- Hosted Streamable HTTP and local stdio entry points
- Coverage across documentation, customers, products, payments, invoices, subscriptions, and disputes
- Restricted API Keys can narrow tool permissions
- CLI validation and tests cover keys, Connect accounts, arguments, and client identity
- Clear MIT license
What to know first
- The local CLI depends on Stripe's hosted endpoint and is not an offline self-hosted implementation
- Tools include writes that may affect funds, billing, and customer state
- Command and desktop examples may encourage storing a key in visible configuration
- npm, MCP Registry, and DXT manifest versions differ
- There is no GitHub Release page serving as a unified release record
- No installation, authentication, or functional test was performed
README
Stripe MCP Server
Overview
Stripe MCP Server lets agents search Stripe documentation and manage customers, products, prices, payment links, invoices, refunds, subscriptions, and disputes within Restricted API Key permissions. A command line tool for setting up Stripe MCP server.
Getting started
- Create a Restricted API Key in Stripe test mode with only the permissions needed, then run @stripe/mcp from a controlled MCP client. Prefer secret management or an environment variable and keep the key out of repositories, shared configuration, and chat.
- Stripe hosts an MCP server at https://mcp.stripe.com.
- The local path runs @stripe/mcp with npx and reads credentials from --api-key or STRIPE_SECRET_KEY.
- After connecting, list tools and run a read-only documentation search. Then, in Stripe test mode, create one disposable test customer or list test customers. Confirm the target account, mode, and audit record in Stripe Dashboard. The minimal check passes only when no production data or unapproved tools are visible.
Configuration
npx -y @stripe/mcp --api-key=YOUR_STRIPE_RESTRICTED_KEYRead the complete README on GitHub →