출처

x402: AI 에이전트가 API와 MCP 도구 사용료를 스스로 지불하는 HTTP 결제 표준

개요

x402는 HTTP 402 Payment Required 상태 코드에 결제 조건과 결제 payload를 주고받는 규칙을 정의해, 에이전트가 유료 API나 MCP 도구를 요청 과정에서 직접 결제할 수 있도록 하는 개방형 표준이다. 서버는 PAYMENT-REQUIRED 헤더로 결제 가능한 스킴·네트워크·금액·자산·수신 주소를 알리고, 클라이언트는 서명한 payload를 PAYMENT-SIGNATURE 헤더에 담아 요청을 재전송한다. 서버는 자체 검증·정산을 수행하거나 파실리테이터의 /verify, /settle API를 이용할 수 있다. 현재 구현의 중심은 온체인 결제이며, 법정통화 결제는 표준이 목표로 제시한 확장 방향에 가깝다.

핵심 포인트

  • 사람이 개입하는 가입·API 키·결제 폼을 줄임: 일반적인 계정과 API 키 대신 지갑 서명을 사용해 요청 단위 결제를 수행하며, 소액 건별 과금에 적합한 구조를 지향한다.
  • 결제 흐름: 결제 없이 요청하면 서버가 402PAYMENT-REQUIRED를 반환하고, 클라이언트가 결제 payload를 생성해 PAYMENT-SIGNATURE와 함께 같은 요청을 재전송한다. 검증과 정산이 끝나면 서버는 200 OKPAYMENT-RESPONSE를 반환한다.
  • v2의 계층 분리: 전송 방식과 무관한 타입(PaymentRequirements, PaymentPayload 등), 스킴·네트워크별 결제 로직, HTTP·MCP·A2A에 맞춘 표현 계층을 분리한다.
  • v1과의 호환성 차이: v2에서는 X-PAYMENTPAYMENT-SIGNATURE로, 네트워크 표기가 base-sepolia 같은 문자열에서 CAIP-2 형식인 eip155:84532로 바뀌었다. v1 예제와 패키지를 그대로 사용하면 호환되지 않을 수 있다.
  • 파실리테이터 구조: 파실리테이터는 /verify, /settle, /supported API를 통해 서명 검증, 트랜잭션 제출, 정산 확정 등을 대신한다. 다만 메인넷에서는 공개 파실리테이터를 기본 운영 경로로 가정하지 말고, 상용 서비스·자체 운영·서버 내 자체 정산 중 하나를 선택해야 한다.
  • 결제 재사용 공격 방어: EVM exact 스킴은 지불자 서명, 고유 nonce, 유효 시간 범위, EIP-3009의 nonce 사용 방지 등을 활용한다. 검증 과정에서는 서명·잔액·금액·시간·결제 요구 일치 여부와 트랜잭션 실행 가능성을 확인한다.
  • MCP 통합: @x402/mcp는 유료 MCP 도구를 래퍼로 감싸고, 클라이언트가 402 결과를 받은 뒤 결제와 재호출을 자동화하도록 지원한다. 결제 요구는 MCP 도구 결과의 structuredContent 및 텍스트에 포함되고, payload와 정산 결과는 _meta["x402/payment"], _meta["x402/payment-response"]에 전달된다.

왜 중요한가

x402는 에이전트의 외부 서비스 이용을 사람이 사전에 등록한 API 키나 결제 계정에만 의존하지 않고, 요청·결제·정산이 연결된 프로토콜 흐름으로 다루려는 시도다. 특히 MCP 도구 호출에 건별 가격을 붙일 수 있어, 에이전트가 여러 유료 도구를 선택적으로 사용하는 구조를 구현하는 데 참고가 된다. 다만 자동 결제가 곧 무제한 자율 지출을 의미하는 것은 아니며, 클라이언트 승인 훅, 지갑 잔액, 네트워크 수수료, 파실리테이터의 운영 방식과 실제 프로덕션 지원 여부를 별도로 검토해야 한다.

후속으로 볼 링크와 키워드

관련 위키

원문 보존 위치

원문 전체는 raw source: 2026-08-05-pytorchkr-topic-11513-x402-ai-api-mcp-httpsource_url 및 HTML 원문과 함께 저장되어 있습니다.