Provides fraud detection and risk management capabilities through Stripe's API, including Radar early fraud warnings, risk scores, dispute handling, refund creation, and comprehensive access to all Stripe REST endpoints.
Stripe Fraud MCP
TypeScript Model Context Protocol (MCP) server that wraps the official stripe
SDK. The server focuses on fraud and Radar operations while still exposing a raw request tool that lets an LLM call any Stripe REST endpoint. It is designed to run locally or inside Smithery for hosting.
Features
stripe_fraud_insight
– Given apayment_intent_id
orcharge_id
, pulls Radar early fraud warnings, risk scores, disputes, refunds, and reviews, then returns a recommendation (refund
,manual_review
, ormonitor
).stripe_create_refund
– Creates refunds against a charge or payment intent, supporting partial amounts, reasons, and metadata.stripe_raw_request
– Full access to the Stripe API viastripe.rawRequest
, so you can reach any endpoint that is not yet wrapped in a specialized tool.Built for Smithery (stdio + Streamable HTTP builds) so you can host it as a managed MCP service without writing glue code.
Prerequisites
Node.js 20+
Stripe secret key with the necessary permissions.
Smithery CLI (
npx @smithery/cli
) for local builds and development.
Smithery Configuration
The Smithery runtime picks up the configuration schema that lives in src/index.ts
. When you install or run the server you will be prompted for:
Config key | Required | Description |
| ✅ | Secret key used to authenticate Stripe requests. |
| ❌ | Optional API version override (defaults to your account version). |
| ❌ | Optional connected account ID used when a request does not specify one. |
The repository includes smithery.yaml
, so Smithery knows to treat it as a TypeScript project and to compile from src/index.ts
.
Local Development
smithery dev
will prompt for your configuration values (or you can provide a --config
file). It spins up both stdio and SHTTP transports so you can test with smithery proxy
, Claude Desktop, or any MCP client.
Building for Deployment
npm run build:stdio
– Produces.smithery/stdio/index.cjs
for stdio transport.npm run build:shttp
– Produces.smithery/shttp/index.cjs
for Streamable HTTP transport.npm run build
– Builds both artefacts.
When you push to Smithery, it runs the same build pipeline and hosts the generated artefact automatically.
Tool Reference
stripe_fraud_insight
Input:
payment_intent_id
orcharge_id
(one required),include_events
(boolean, defaulttrue
).Output: Structured fraud/risk summary with Stripe Radar data and an automated recommendation.
stripe_create_refund
Input:
payment_intent_id
orcharge_id
, optionalamount
,reason
,metadata
.Output: Created refund plus Stripe response metadata.
stripe_raw_request
Input: HTTP method (
GET
,POST
,DELETE
),path
, optionalquery
,payload
,idempotency_key
,stripe_account
,api_version
.Output: Raw response body and headers so you can reach any Stripe endpoint from the LLM.
Project Scripts
npm run dev
– Runssmithery dev
for interactive local development.npm run build
– Builds stdio and SHTTP bundles under.smithery/
.npm run build:stdio
/npm run build:shttp
– Build individual transports.npm run typecheck
– TypeScript diagnostics without emitting files.
Next Steps
Add additional purpose-built tools for dispute responses, Radar rule management, value list operations, etc., by wrapping the official SDK in new MCP handlers.
Implement optional caching or memoization if you anticipate repeated lookups.
Instrument with logging/observability before production use.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Enables fraud analysis and management through Stripe's Radar system, allowing users to assess payment risk, create refunds, and access any Stripe API endpoint. Focuses on fraud detection with automated recommendations while providing full Stripe API access.