Stripe
Stripe
Stripe MCP 서버는 결제 처리, 고객 관리, 환불 등 Stripe API와의 원활한 통합을 제공하는 Model Context Protocol(MCP) 서버입니다. 이 서버를 통해 AI 어시스턴트와 개발자는 자연어 명령을 사용하여 Stripe의 결제 처리 및 금융 운영 기능에 접근할 수 있습니다.
특징
- 결제 처리: Stripe API를 통한 결제 처리 및 관리 기능 제공
- 고객 관리: 고객 정보 생성, 조회, 업데이트 등의 기능 제공
- 금융 운영: 인보이스, 구독, 환불 처리 등 다양한 금융 운영 지원
- 보안 강화: 안전한 거래 처리 및 감사 로깅 기능
- 오류 처리: 종합적인 오류 처리 및 관리 시스템
- MCP 통합: 다양한 AI 도구와의 원활한 통합
사용 사례
- 온라인 상점 결제: AI 기반 결제 처리 통합으로 온라인 상점 구축
- 구독 관리: 반복 결제 및 구독 서비스 관리 자동화
- 인보이스 생성: 자연어 명령을 통한 인보이스 생성 및 관리
- 결제 분석: 결제 데이터 분석 및 인사이트 도출
- 금융 자동화: 결제 워크플로우의 자동화 및 효율화
API
도구
Stripe MCP 서버는 다음과 같은 주요 도구를 제공합니다:
고객 관리
customer_create
새 고객 생성
- 입력:
- email: 고객 이메일
- name: 고객 이름
- description: 고객 설명(선택)
- 기타 고객 관련 필드
customer_retrieve
고객 정보 조회
- 입력:
- customer_id: 고객 ID
customer_update
고객 정보 업데이트
- 입력:
- customer_id: 고객 ID
- 업데이트할 필드 및 값
결제 관리
payment_intent_create
결제 인텐트 생성
- 입력:
- amount: 금액(센트 단위)
- currency: 통화 코드(예: 'usd')
- customer: 고객 ID(선택)
- 기타 결제 관련 필드
payment_intent_retrieve
결제 인텐트 조회
- 입력:
- payment_intent_id: 결제 인텐트 ID
payment_intent_confirm
결제 인텐트 확인
- 입력:
- payment_intent_id: 결제 인텐트 ID
- payment_method: 결제 수단 ID(선택)
청구 및 인보이스
invoice_create
인보이스 생성
- 입력:
- customer: 고객 ID
- items: 청구 항목 배열
- auto_advance: 자동 발송 여부(선택)
- 기타 인보이스 관련 필드
invoice_retrieve
인보이스 조회
- 입력:
- invoice_id: 인보이스 ID
invoice_list
인보이스 목록 조회
- 입력:
- limit: 최대 결과 수(선택)
- customer: 고객 ID로 필터링(선택)
- status: 상태로 필터링(선택)
invoice_finalize
인보이스 최종 확정
- 입력:
- invoice_id: 인보이스 ID
- auto_advance: 자동 발송 여부(선택)
invoice_pay
인보이스 결제
- 입력:
- invoice_id: 인보이스 ID
- payment_method: 결제 수단 ID(선택)
invoice_send
인보이스 전송
- 입력:
- invoice_id: 인보이스 ID
환불 관리
refund_create
환불 생성
- 입력:
- charge_id: 청구 ID 또는 결제 인텐트 ID
- amount: 환불 금액(센트 단위, 선택)
- reason: 환불 사유(선택)
- 기타 환불 관련 필드
refund_retrieve
환불 정보 조회
- 입력:
- refund_id: 환불 ID
refund_list
환불 목록 조회
- 입력:
- limit: 최대 결과 수(선택)
- charge: 청구 ID로 필터링(선택)
제품 및 가격
product_create
제품 생성
- 입력:
- name: 제품 이름
- description: 제품 설명(선택)
- active: 활성 상태 여부(선택)
- 기타 제품 관련 필드
product_retrieve
제품 조회
- 입력:
- product_id: 제품 ID
product_list
제품 목록 조회
- 입력:
- limit: 최대 결과 수(선택)
- active: 활성 상태로 필터링(선택)
price_create
가격 생성
- 입력:
- product: 제품 ID
- unit_amount: 단위 금액(센트 단위)
- currency: 통화 코드(예: 'usd')
- recurring: 반복 결제 설정(선택)
- 기타 가격 관련 필드
price_retrieve
가격 조회
- 입력:
- price_id: 가격 ID
price_list
가격 목록 조회
- 입력:
- limit: 최대 결과 수(선택)
- product: 제품 ID로 필터링(선택)
- active: 활성 상태로 필터링(선택)
구독 관리
subscription_create
구독 생성
- 입력:
- customer: 고객 ID
- items: 구독 항목 배열
- trial_period_days: 무료 체험 기간(일, 선택)
- 기타 구독 관련 필드
subscription_retrieve
구독 조회
- 입력:
- subscription_id: 구독 ID
subscription_list
구독 목록 조회
- 입력:
- limit: 최대 결과 수(선택)
- customer: 고객 ID로 필터링(선택)
- status: 상태로 필터링(선택)
subscription_update
구독 업데이트
- 입력:
- subscription_id: 구독 ID
- 업데이트할 필드 및 값
subscription_cancel
구독 취소
- 입력:
- subscription_id: 구독 ID
- at_period_end: 기간 끝에 취소 여부(선택)
사용 방법
필수 조건
Stripe MCP 서버를 사용하기 전에 다음 사항이 필요합니다: - Node.js 설치 - Stripe 계정 및 API 키
설치 및 실행
Stripe MCP 서버는 NPM을 통해 제공됩니다:
# 모든 도구 설정
npx -y @stripe/mcp --tools=all --api-key=YOUR_STRIPE_SECRET_KEY
# 특정 도구만 설정
npx -y @stripe/mcp --tools=customers.create,customers.read,products.create --api-key=YOUR_STRIPE_SECRET_KEY
# Stripe 연결 계정 구성
npx -y @stripe/mcp --tools=all --api-key=YOUR_STRIPE_SECRET_KEY --stripe-account=CONNECTED_ACCOUNT_ID
환경 변수를 통해 API 키를 설정할 수도 있습니다:
export STRIPE_SECRET_KEY="YOUR_STRIPE_SECRET_KEY"
npx -y @stripe/mcp --tools=all
Claude Desktop 연동
Claude Desktop에서 Stripe MCP 서버를 사용하려면:
- Claude Desktop 설정 파일을 열기:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json -
Windows:
%APPDATA%/Claude/claude_desktop_config.json -
다음 구성 추가:
{ "mcpServers": { "stripe": { "command": "npx", "args": [ "-y", "@stripe/mcp", "--tools=all" ], "env": { "STRIPE_SECRET_KEY": "YOUR_STRIPE_SECRET_KEY" } } } } -
Claude Desktop 재시작
Docker 사용
Docker를 통해 실행하려면:
docker run --rm -i mcp/stripe --tools=all --api-key=YOUR_STRIPE_SECRET_KEY
Claude Desktop 구성:
{
"mcpServers": {
"stripe": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"mcp/stripe",
"--tools=all",
"--api-key=STRIPE_SECRET_KEY"
]
}
}
}
Cursor 연동
Cursor에서 Stripe MCP 서버를 사용하는 방법:
- Cursor 설정 > 기능 > MCP로 이동
- "+ Add New MCP Server" 버튼 클릭
- 양식 작성:
- 유형:
stdio선택 - 이름:
stripe - 명령어:
npx -y @stripe/mcp --tools=all - 환경 변수:
STRIPE_SECRET_KEY: Stripe 시크릿 키 값
사용 예시
Claude Desktop 사용 예시
예시 1: 고객 생성
사용자: 새 고객을 생성해주세요. 이메일은 customer@example.com, 이름은 홍길동입니다.
Claude는 MCP를 사용하여 고객을 생성합니다:
새 고객을 생성하겠습니다.
고객이 성공적으로 생성되었습니다:
- 고객 ID: cus_XXXXXXXXXXXX
- 이름: 홍길동
- 이메일: customer@example.com
- 생성 시간: 2025-05-13 15:30:45 UTC
이 고객 ID는 향후 트랜잭션이나 구독 설정에 사용할 수 있습니다.
예시 2: 결제 의도 생성
사용자: 10,000원에 해당하는 결제 의도를 생성해주세요. 통화는 USD로 설정하고, 고객 ID는 cus_XXXXXXXXXXXX입니다.
Claude는 MCP를 사용하여 결제 의도를 생성합니다:
결제 의도를 생성하겠습니다.
결제 의도가 성공적으로 생성되었습니다:
- 결제 의도 ID: pi_XXXXXXXXXXXX
- 금액: $10.00 (1,000 센트)
- 통화: USD
- 고객: cus_XXXXXXXXXXXX
- 상태: requires_payment_method
이제 결제 방법을 연결하여 이 결제를 완료할 수 있습니다.
문제 해결
일반적인 문제
연결 오류
"Failed to connect to Stripe API"와 같은 오류가 표시되는 경우: - API 키가 유효한지 확인 - 인터넷 연결 확인 - Stripe 계정 상태 확인
인증 문제
인증 오류가 표시되는 경우: - API 키가 올바른지 확인 - 필요한 경우 새 API 키 생성 - 연결된 계정 ID가 정확한지 확인
도구를 찾을 수 없음
MCP 도구가 Claude Desktop 또는 Cursor에 표시되지 않는 경우: - 애플리케이션 재시작 - 구성 파일에서 오타 확인 - 명령어와 인수가 올바르게 설정되었는지 확인
MCP 인스펙터 사용
디버깅을 위해 MCP 인스펙터를 사용할 수 있습니다:
# 모든 도구로 MCP 인스펙터 및 서버 시작
npx @modelcontextprotocol/inspector node dist/index.js --tools=all --api-key=YOUR_STRIPE_SECRET_KEY
Docker를 통해:
docker run -p 3000:3000 -p 5173:5173 -v /var/run/docker.sock:/var/run/docker.sock mcp/inspector
docker run --rm -i mcp/stripe --tools=all --api-key=YOUR_STRIPE_SECRET_KEY
제한 사항 및 참고 사항
- Stripe MCP 서버는 Stripe API 사용에 대한 표준 Stripe 요금 정책을 따릅니다.
- 결제 처리 시 보안을 위해 항상 최신 버전의 서버를 사용하는 것이 권장됩니다.
- 테스트 목적으로는 Stripe의 테스트 모드 API 키를 사용하세요.
- 프로덕션 환경에서는 적절한 오류 처리 및 사용자 알림을 구현하세요.