SpendPreflight
Operated by SpendPreflight: sanctions screening and allow/hold/block preflight for x402 payments.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"spendpreflight": {
"url": "https://api.spendpreflight.com/mcp"
}
}
}원격 엔드포인트
https://api.spendpreflight.com/mcpstreamable-http할 수 있는 일
도구 목록
도구 (3)
🟢check_payee(domain, address, name)
Payee risk check. Screens a payee wallet address and name against the OFAC SDN sanctions list and checks the merchant domain's registration age and DNS. Returns risk low|medium|high|unknown with flags such as sanctioned_address, sanctioned_name_possible, new_domain. Use for standalone payee screening before paying. Provide at least one of domain, address, or name; inputs may be combined, and domain accepts a hostname or URL. For an x402 challenge or cart and an allow/hold/block spending-rule decision, use preflight_payment instead. Price $0.01 per call (free trial first).
입력 스키마
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "Merchant domain or URL, e.g. shop.example.com"
},
"address": {
"type": "string",
"description": "Payee wallet address (EVM 0x…, BTC, etc.)"
},
"name": {
"type": "string",
"description": "Merchant or payee legal name"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"risk": {
"type": "string",
"enum": [
"low",
"medium",
"high",
"unknown"
],
"description": "Overall payee risk"
},
"flags": {
"type": "array",
"items": {
"type": "string"
},
"description": "e.g. sanctioned_address, sanctioned_name_exact, sanctioned_name_possible, new_domain, domain_no_dns"
},
"sanctions": {
"type": "object",
"properties": {
"address_match": {
"anyOf": [
{},
{
"type": "null"
}
]
},
"name_matches": {
"type": "array"
}
},
"required": [
"name_matches"
],
"additionalProperties": false,
"description": "OFAC SDN matches"
},
"domain": {
"anyOf": [
{},
{
"type": "null"
}
],
"description": "Domain age/DNS signals, or null if no domain given"
},
"data_as_of": {
"type": "string",
"description": "Timestamp of the sanctions data used"
},
"disclaimer": {
"type": "string"
}
},
"required": [
"risk",
"flags",
"sanctions",
"data_as_of",
"disclaimer"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢preflight_payment(challenge, cart, resource_url, rules, spent_today_usd)
Spend preflight for AI agents. Send the x402 PaymentRequired body (v1 or v2) you received, or a cart, plus optional rules (per-payment max, hold threshold, daily cap, allowlists, new-domain days). Returns allow|hold|block with reasons, the cheapest acceptable payment option, and a receipt id. Read-only: never signs, settles, or holds funds. Use before every payment. It includes payee screening in its spending-rule decision. For standalone wallet, name, or domain screening without a payment, use check_payee instead. Each repeat call creates a new receipt and may consume another trial or paid call. Price $0.02 per call (free trial first).
입력 스키마
{
"type": "object",
"properties": {
"challenge": {
"type": "object",
"additionalProperties": {},
"description": "The x402 PaymentRequired body (v1 or v2) your agent received with HTTP 402"
},
"cart": {
"type": "object",
"properties": {
"merchant_domain": {
"type": "string"
},
"total_usd": {
"type": "number"
},
"pay_to": {
"type": "string"
},
"merchant_name": {
"type": "string"
}
},
"additionalProperties": false,
"description": "Use instead of challenge for agent checkout / card payments"
},
"resource_url": {
"type": "string",
"description": "URL that returned the 402, if not inside the challenge"
},
"rules": {
"type": "object",
"properties": {
"max_per_payment_usd": {
"type": "number"
},
"hold_above_usd": {
"type": "number"
},
"daily_cap_usd": {
"type": "number"
},
"allowed_networks": {
"type": "array",
"items": {
"type": "string"
}
},
"usdc_only": {
"type": "boolean"
},
"domain_allowlist": {
"type": "array",
"items": {
"type": "string"
}
},
"domain_blocklist": {
"type": "array",
"items": {
"type": "string"
}
},
"payto_allowlist": {
"type": "array",
"items": {
"type": "string"
}
},
"payto_blocklist": {
"type": "array",
"items": {
"type": "string"
}
},
"strict_allowlist": {
"type": "boolean"
},
"new_domain_days": {
"type": "number"
}
},
"additionalProperties": false,
"description": "Spending rules; all optional. See get_service_info for defaults."
},
"spent_today_usd": {
"type": "number",
"description": "What this agent already spent today, for the daily cap"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"decision": {
"type": "string",
"enum": [
"allow",
"hold",
"block"
],
"description": "Pay on allow, ask a human on hold, never pay on block"
},
"reasons": {
"type": "array",
"items": {
"type": "string"
},
"description": "Every rule that fired, prefixed with its decision"
},
"chosen_option": {
"anyOf": [
{},
{
"type": "null"
}
],
"description": "The cheapest acceptable payment option"
},
"options_evaluated": {
"type": "integer"
},
"payee": {
"anyOf": [
{},
{
"type": "null"
}
],
"description": "Payee screening details"
},
"receipt": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"ts": {
"type": "string"
},
"input_sha256": {
"type": "string"
},
"decision": {
"type": "string"
}
},
"required": [
"id",
"ts",
"input_sha256",
"decision"
],
"additionalProperties": false,
"description": "Log this for audit"
}
},
"required": [
"decision",
"reasons",
"options_evaluated",
"receipt"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_service_info
Free, read-only service reference. Use first to learn prices, default spending rules, payment setup, trial allowance, and integration links. Takes no arguments and performs no payee screening or payment decision. Use check_payee for standalone payee risk; use preflight_payment for an x402 challenge or cart and an allow/hold/block decision.
입력 스키마
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"when_to_use": {
"type": "string"
},
"pricing": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"free_trial_per_day": {
"type": "number"
},
"payment": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"default_rules": {
"type": "object",
"additionalProperties": {}
},
"http_api": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"client_guard": {
"type": "string"
},
"site": {
"type": "string"
},
"guarantees": {
"type": "array",
"items": {
"type": "string"
}
},
"trust": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"disclaimer": {
"type": "string"
}
},
"required": [
"when_to_use",
"pricing",
"free_trial_per_day",
"payment",
"default_rules",
"http_api",
"client_guard",
"site",
"guarantees",
"trust",
"disclaimer"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}커뮤니티
증거