Spending guard for AI agents: auto-approve small payments, phone approval for the rest, budgets.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Bearer sbk_... agent key from https://ut181749ut.github.io/saifuban/
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
以前の申請(request_id)が承認されたかを確認する。approved になってから支払うこと。 / Check whether an earlier request was approved. Pay only after it is approved.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http saifuban https://zrphnuvrsldcycxtdftv.supabase.co/functions/v1/saifuban-mcp \ --header 'Authorization: Bearer YOUR_TOKEN'
Headers
Authorization (required): Bearer sbk_... agent key from https://ut181749ut.github.io/saifuban/以前の申請(request_id)が承認されたかを確認する。approved になってから支払うこと。 / Check whether an earlier request was approved. Pay only after it is approved.
| Argument | Type | Description |
|---|---|---|
| request_id* | integer | |
| wait_seconds | integer |
{
"type": "object",
"required": [
"request_id"
],
"properties": {
"request_id": {
"type": "integer",
"minimum": 1
},
"wait_seconds": {
"type": "integer",
"maximum": 45,
"minimum": 0
}
}
}このAIが今日あといくら使えるか、1回の上限、自動承認ライン、使ってよい支払先を確認する。 / Check today's remaining budget, per-payment limit, auto-approve amount and allowed merchants.
No arguments.
{
"type": "object",
"properties": {}
}お金を使う前に必ず呼ぶツール。支払先・金額・理由を財布番に申請し、許可が出たかを返す。status が approved のときだけ支払ってよい。pending_approval は持ち主の承認待ちで、まだ支払ってはいけない(持ち主のスマホに通知が届く)。denied や expired のときは支払わず、reason をユーザーに伝える。 / Call this BEFORE spending any money. Pay only when status is approved. pending_approval means the owner must approve on their phone — do not pay yet. When approved, the result includes payment_token: a single-use token that payment tools can verify, so payments made without approval can be refused.
| Argument | Type | Description |
|---|---|---|
| amount* | number | 支払う金額(税込) / amount to pay, tax included |
| reason* | string | なぜこの支払いが必要か。持ち主が承認するときに読む / why this payment is needed (the owner reads this) |
| currency | string | amount の通貨。省略すると持ち主の通貨 / currency of amount; defaults to the owner's currency |
| merchant* | string | 支払先のサービス名や店名 / merchant or service name (e.g. OpenAI API, AWS) |
| wait_for_approval_seconds | integer | 承認待ちのとき待つ秒数(最大45秒) / seconds to wait for approval |
{
"type": "object",
"required": [
"merchant",
"amount",
"reason"
],
"properties": {
"amount": {
"type": "number",
"description": "支払う金額(税込) / amount to pay, tax included",
"exclusiveMinimum": 0
},
"reason": {
"type": "string",
"description": "なぜこの支払いが必要か。持ち主が承認するときに読む / why this payment is needed (the owner reads this)"
},
"currency": {
"enum": [
"JPY",
"USD"
],
"type": "string",
"description": "amount の通貨。省略すると持ち主の通貨 / currency of amount; defaults to the owner's currency"
},
"merchant": {
"type": "string",
"description": "支払先のサービス名や店名 / merchant or service name (e.g. OpenAI API, AWS)"
},
"wait_for_approval_seconds": {
"type": "integer",
"maximum": 45,
"minimum": 0,
"description": "承認待ちのとき待つ秒数(最大45秒) / seconds to wait for approval"
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 8, 2026.