Judges a payment (PayPal, PYUSD or USDC) before an AI agent makes it. Signed proof. Moves no money.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Bearer spk_... agent key, free at https://safepay.agentposhq.com/connect
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.
Checks a planned payment before it is made. Judges the merchant, amount and task against the account's payment rules, the payee's payment history, a live web check of the merchant and an intent check, and returns allow, hold or block with the reasons, a check id and a signed attestation valid for 15 minutes. Moves no money and stores no payee address or task text, only their hashes.
What the user asked the agent to do, in their words
Total to pay
Who is being paid, as shown at checkout
The payee account if known (email, PayPal id, or wallet address for a stablecoin)
For PYUSD or USDC: the network (stellar, ethereum, solana, arbitrum, base, polygon); payee is then the wallet address
What this payment is for
e.g. software, travel, groceries
ISO 4217 code, or a dollar stablecoin: PYUSD or USDC
Invoice or order number, if any
The store or checkout URL
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http check https://safepay.agentposhq.com/mcp \ --header 'Authorization: Bearer YOUR_TOKEN'
Headers
Authorization (required): Bearer spk_... agent key, free at https://safepay.agentposhq.com/connectTool list last changed Nov 8, 2026.
Checks a planned payment before it is made. Judges the merchant, amount and task against the account's payment rules, the payee's payment history, a live web check of the merchant and an intent check, and returns allow, hold or block with the reasons, a check id and a signed attestation valid for 15 minutes. Moves no money and stores no payee address or task text, only their hashes.
| Argument | Type | Description |
|---|---|---|
| task* | string | What the user asked the agent to do, in their words |
| payee | string | The payee account if known (email, PayPal id, or wallet address for a stablecoin) |
| amount* | number | Total to pay |
| network | string | For PYUSD or USDC: the network (stellar, ethereum, solana, arbitrum, base, polygon); payee is then the wallet address |
| purpose | string | What this payment is for |
| category | string | e.g. software, travel, groceries |
| currency | string | ISO 4217 code, or a dollar stablecoin: PYUSD or USDC |
| invoice_ref | string | Invoice or order number, if any |
| merchant_url | string | The store or checkout URL |
| merchant_name* | string | Who is being paid, as shown at checkout |
{
"type": "object",
"required": [
"merchant_name",
"amount",
"task"
],
"properties": {
"task": {
"type": "string",
"description": "What the user asked the agent to do, in their words"
},
"payee": {
"type": "string",
"description": "The payee account if known (email, PayPal id, or wallet address for a stablecoin)"
},
"amount": {
"type": "number",
"description": "Total to pay",
"exclusiveMinimum": 0
},
"network": {
"type": "string",
"description": "For PYUSD or USDC: the network (stellar, ethereum, solana, arbitrum, base, polygon); payee is then the wallet address"
},
"purpose": {
"type": "string",
"description": "What this payment is for"
},
"category": {
"type": "string",
"description": "e.g. software, travel, groceries"
},
"currency": {
"type": "string",
"default": "USD",
"description": "ISO 4217 code, or a dollar stablecoin: PYUSD or USDC"
},
"invoice_ref": {
"type": "string",
"description": "Invoice or order number, if any"
},
"merchant_url": {
"type": "string",
"description": "The store or checkout URL"
},
"merchant_name": {
"type": "string",
"description": "Who is being paid, as shown at checkout"
}
}
}Returns the payment rules this account is judged under, in plain words, with their fingerprint.
No arguments.
{
"type": "object",
"properties": {}
}Returns this account's latest payment checks: verdict, merchant, amount and time.
| Argument | Type | Description |
|---|---|---|
| limit | integer |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1
}
}
}Verifies a SafePay seal id (SP-XXXXXXXXXX), a signed receipt or a precheck attestation against SafePay's published Ed25519 key. Returns whether it is genuine and intact, and what it states.
| Argument | Type | Description |
|---|---|---|
| seal | string | A seal id such as SP-3F9A0C21BE |
| attestation | object | A {body, hash, signature} SafePay document |
{
"type": "object",
"properties": {
"seal": {
"type": "string",
"description": "A seal id such as SP-3F9A0C21BE"
},
"attestation": {
"type": "object",
"description": "A {body, hash, signature} SafePay document"
}
}
}Reads a Stellar transaction from the public ledger (Horizon) and compares it with a SafePay precheck attestation: whether it succeeded, paid the approved payee, in Circle's USDC, no more than the approved amount, while the check was valid. Returns the findings and a signed result. Reads the ledger only.
| Argument | Type | Description |
|---|---|---|
| network | string | |
| tx_hash* | string | The 64-character Stellar transaction hash |
| attestation* | object | The precheck attestation safepay_check_payment returned |
{
"type": "object",
"required": [
"attestation",
"tx_hash"
],
"properties": {
"network": {
"enum": [
"stellar:pubnet",
"stellar:testnet"
],
"type": "string",
"default": "stellar:pubnet"
},
"tx_hash": {
"type": "string",
"description": "The 64-character Stellar transaction hash"
},
"attestation": {
"type": "object",
"description": "The precheck attestation safepay_check_payment returned"
}
}
}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.
What changed in this server's tools since we started watching, newest first. Each change is scanned again.
Reads a Stellar transaction from the public ledger (Horizon) and compares it with a SafePay precheck attestation: whether it succeeded, paid the approved payee, in Circle's USDC, no more than the approved amount, while the check was valid. Returns the findings and a signed result. Reads the ledger only.