Skip to content

Introduction

On this page

VulSight Guard stands between an agent and the payment it is about to make. The agent proposes, the policy on that agent's key decides, and a person owns every review. Money is test USDC on Base Sepolia on this site; your own agents can pay real USDC on Base or Solana Mainnet once you switch the policy's network. Start with the quickstart.

What it decides

Every payment an agent routes through the guard is checked against your policy, and comes back with one of three answers.

  • allowed Every rule passed. The payment goes ahead.
  • denied A rule refused it. Through the SDK nothing is signed, and through the proxy the signed retry is never forwarded.
  • review A held payment waits in the dashboard for two minutes by default.

    Through the proxy the request is held for up to 35 seconds. If you have not answered by then, the client gets the 402 back, and its next attempt at the same URL picks up the same decision until the two minutes run out.

    Through the SDK the agent waits the two minutes by default, so a hold that reaches you by webhook, email, or push (turned on under Settings) is still open when you answer. Through the MCP tool it waits two minutes too. Then the SDK throws without paying, and the tool tells the agent not to pay until a person approves.

Every answer carries the rules it ran and a plain sentence for each rule that was not a pass, so you can tell a person why the money did not move. The list is on the reason codes page. Pick Approve and always allow this payee on a held payment, and the agent's next payment to that seller skips the first-payment review.

The three ways in

  • Proxy URL. Put your proxy token in front of the seller's URL. No code, any language. A denied payment is never forwarded.
  • SDK for TypeScript. Two hooks on the x402 client you already have. A denied payment is never signed.
  • MCP and skills. A tool your coding agent calls before it pays. The agent has to call it, so this one is cooperative, not enforced.

All three ask the same HTTP API, and you can call it yourself. This route needs no key, so it is the shortest thing you can run before you sign up. Every other route is on the API page.

Terminal
curl -s https://vulsight-guard.vercel.app/api/v1/status

What it does not do

  • It holds no key and signs nothing, so it cannot move your money, and it cannot pull a payment back once it has settled.
  • It sees only what you route through it. An agent that pays around the guard is not checked.
  • The content check reads the page the agent read and can block or add a review. It can never turn a denied payment into an allowed one.
  • Test network by default. Your own agents can pay real USDC on Base or Solana Mainnet once you switch the policy's network; the guard still holds no funds and signs nothing.

The whole picture, with the limits spelled out, is on the security model and limits page.