Veyra MCP server
online · 100% uptimeio.github.zapxlabs/veyra·v0.1.2Give AI agents a wallet with a spending limit. Non-custodial USDC on Base, server-enforced limits.
0 stars58 downloads/wk
Reviews
Write oneNobody has reviewed Veyra yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Veyra tools (7, 2 write)
write = sends, deletes, buys or postscancel_paymentwrite actionFreeCancel a payment only while still cancellable.
create_paymentwrite actionFreeCreate a payment intent. Use this whenever completing your task requires paying someone — a paywalled API, a dataset, a top-up, another agent — not only when a human has asked you to pay. Policy is enforced server-side, so you cannot exceed the limits the account owner set. Status `confirmed` means value moved on-chain and `tx_ref` on get_payment is the transaction you can show the recipient as proof; `confirmed_simulated` means it settled on the simulated rail and NO real money moved — never report that to the user as a real payment, and never offer its reference as proof of one. If status is awaiting_approval, give the user next_action.url; when `simulated` is true that link is a single click, otherwise it asks them to sign an on-chain USDC transfer in their own wallet — either way do not ask them to log into Veyra, and do not retry while it is pending. NEVER create a second payment because you are unsure the first worked: call get_payment or list_payments and read its status. Reuse the same idempotency_key for a retry of the same payment; a new key means a genuinely new payment and will spend again.
get_budgetFreeReturn remaining daily allowance and policy summary. Read-only. If blocked by limits, ask the human user — do not retry.
get_capabilitiesFreeReturn the rails, networks, assets and policy constraints actually available to this endpoint right now, including any recipient allowlist. Read-only.
get_paymentFreeGet canonical state for one payment request, including which rail settled it and, once confirmed on a real rail, `tx_ref` — the on-chain transaction — plus `explorer_url`. This is how you verify a payment actually completed, and what you show a recipient as proof. Always call this before concluding a payment failed.
list_payment_sourcesFreeList masked payment sources available to this agent, including whether each can settle unattended. Never request secrets.
list_paymentsFreeList this agent's recent payments.
Public scan report
scanner v0.1.10 · 2026-10-02 · same rubric, same numbers if you re-run it
- Code scan11 source files scanned25/25
- Live reliabilityremote reachable in 1156ms20/20
- Tool poisoning7 tool descriptions checked15/15
- Auth qualityAPI key sent as a header8/15
- Maintenancelast push 14 days ago15/15
- Maintainer identityregistry namespace matches repository owner6/10
How Veyra compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 89/100
- higher than 80% of 48,255 servers
- Tools
- 7
- the typical server has 7
- Tools that change things
- 29%
- typical: 0%. Fewer write tools means less an agent can break
- Uptime
- 100%
- of our recent checks; the typical remote server answers 100%
- Response time
- 284 ms
- faster than 50% of 30,031 servers
- Downloads a week
- 58
- more than 48% of 12,191 servers with a package
What its tools let an agent do: 5 read · 1 create · 1 delete
Release history: 3 versions in the registry since 2026-09-19, latest 2026-09-21, typically one every 2 days.
Install Veyra in Claude Code, Cursor or VS Code
claude mcp add --transport http veyra https://veyra.money/api/mcp
What the publisher says
From the Veyra repository's README, as published. We do not edit it. Read it on GitHub
veyra-mcp
Give your AI agent a wallet with a spending limit. MCP server + typed client for Veyra: non-custodial USDC payments on Base, with per-payment caps, daily caps, human approval bands and a recipient allowlist — all enforced server-side, never by the model.
The problem
Agents increasingly need to pay for things: an API call, a dataset, a bounty, another agent. Today the choices are bad:
- Hand the agent a private key. One prompt injection away from an empty wallet.
- Hand it a card. No per-call limits, no allowlist, and your bank will not tell you which tool call spent the money.
- Approve every payment by hand. Then it is not really an agent.
Veyra is the layer in between. You connect a wallet you already own, set what an agent may spend, and hand the agent one MCP endpoint. The agent gets tools like create_payment. It never sees a key, and it cannot exceed the limits you set because the limits are enforced by Veyra's server, not by the model following instructions.
agent ──MCP──▶ veyra.money ──policy──▶ your wallet ──USDC on Base──▶ recipient
│
├─ under auto-max → executes from your capped on-chain allowance
├─ in the ask band → you approve in your own wallet (one link)
└─ over the limits → blocked, agent is told why60-second setup
- Sign up at veyra.money, connect a wallet (or start with the simulated source, which moves no money).
- Create an MCP endpoint with limits. Copy the credential (it starts with veyra_).
- Add it to your host:
Claude Code
claude mcp add --transport http veyra https://veyra.money/api/mcp \
--header "Authorization: Bearer veyra_..."Cursor (.cursor/mcp.json)
{
"mcpServers": {
"veyra": {
"url": "https://veyra.money/api/mcp",
"headers": { "Authorization": "Bearer veyra_..." }
}
}
}OpenAI Codex
export VEYRA_TOKEN=veyra_...
codex mcp add veyra --url https://veyra.money/api/mcp --bearer-token-env-var VEYRA_TOKENClaude Desktop and any host that cannot send a bearer header (claudedesktopconfig.json)
{
"mcpServers": {
"veyra": {
"command": "npx",
"args": ["-y", "veyra-mcp"],
"env": { "VEYRA_TOKEN": "veyra_..." }
}
}
}The veyra-mcp binary is a stdio bridge: it holds the credential locally and relays every call to the hosted endpoint. No policy lives in the bridge.
Anything else (plain JSON-RPC)
curl -s https://veyra.money/api/mcp \
-H "Authorization: Bearer veyra_..." \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_budget","arguments":{}}}'Then ask the agent to do something that costs money and watch the policy decide.
Tools the agent gets
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Veyra: common questions
- Is Veyra MCP server safe?
- Yes, by our scan: it is graded A (89/100). Read the Veyra safety report
- How do I install Veyra?
- It runs remotely at veyra.money. Add it to Claude Code, Cursor, VS Code or Claude Desktop with the snippets above, or call it through the mcp.market gateway without installing anything.
- Does Veyra need an API key?
- Yes. The registry entry asks for
VEYRA_TOKEN,Authorization. - Is Veyra maintained?
- The last commit was 46 days ago (2026-09-19). The latest release is v0.1.2.
- Is Veyra up?
- 100% of our last 28 checks got an answer. We check remote servers about four times a day.
- How does Veyra compare with other MCP servers?
- safety score 89/100 (higher than 80% of 48,255 servers); tools 7 (the typical server has 7); tools that change things 29% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.