# 지갑 MCP 도구

에이전트가 보는 지갑 MCP 도구 목록.

호스팅 지갑 MCP와 로컬(stdio) 지갑이 같은 도구를 씁니다. 이 도구 목록에서 `pay_intent`는 서비스 결제 intent를 실행합니다. 서비스 서버는 이용자가 승인한 권한 안에서 별도로 청구할 수 있고, SDK 송금은 별도 흐름입니다.

**생성 기준**
agent-pay `2d37041`에서 만들었습니다. 설명은 소스의 영어 주석입니다.

| 도구 | 인자 | 설명 |
|---|---|---|
| `wallet_login` | - | 지갑 가입 또는 로그인과 Pouchi 연결. 사용자가 승인 화면에서 직접 마칩니다. |
| `wallet_status` | - | 내 지갑 주소, OKRW 잔액, 사용자가 승인한 권한 현황. |
| `pay_intent` | `intent_url`: string | 등록된 서비스가 만든 결제 intent(intent_url)를 실행합니다. 처음이면 사용자가 그 권한(대상, 금액 한도, 기간)을 한 번 승인하고, 같은 권한 안의 다음 실행은 묻지 않고 처리됩니다. 잔액이 부족하면 충전 링크를 먼저 보냅니다. |
| `change_mandate` | `intent_url`: string | 서비스가 만든 권한 변경 intent(intent_url, 예: 구독 연장, 한도 증액)를 사용자 승인 후 적용합니다. 범위(대상 컨트랙트·함수)는 바뀌지 않습니다. |
| `my_budget` | - | 사용자가 승인한 권한(mandate) 목록: 서비스, 남은 한도·횟수, 기간, 실행 내역. |
| `my_payments` | - | 최근 결제 내역 (에이전트 실행과 서비스 청구, 영수증 포함). |
| `revoke_mandate` | `mandate_id`?: string, `mandate_key`?: string | 권한을 해지합니다. 에이전트와 서비스의 결제는 즉시 멈추고, 사용자가 링크에서 승인하면 체인에서도 꺼집니다. mandate_id는 my_budget에서 찾으세요. |
| `wallet_disconnect` | - | Pouchi 지갑 연결을 끊습니다. 연결이 해지되어 이 지갑으로 연결된 에이전트는 더 결제할 수 없습니다(같은 지갑으로 연결한 다른 에이전트도 함께 끊깁니다). 이미 승인한 결제 권한은 체인에 그대로 남으며(연결이 끊긴 동안은 쓰이지 않음), 사용자가 결제 내역과 권한에서 끕니다. 다시 쓰려면 다시 연결합니다. |
| `payment_status` | `job_id`?: string, `payment_id`?: string | 승인 대기 중인 작업(결제, 권한, 연결)의 결과를 기다립니다. 최대 50초 기다렸다가 답하며, 아직이면 다시 호출하세요. |

## 결과 상태

| 상태 | 뜻 | 에이전트가 할 일 |
|---|---|---|
| `waiting_for_user` | 사용자 승인 대기. `approval_url`이 함께 옴 | 링크를 보여 주고 `payment_status(job_id)`로 기다림 |
| `paid` | 실행 완료. `receipt` 포함 | 결과를 알림 |
| `mandate_active` | 권한만 승인됨 (나중 청구) | 서비스가 일정대로 청구함을 알림 |
| `rejected_by_user`, `expired` | 사용자가 거절했거나 시간이 지남 | 다시 묻지 않음 |
