Wasit runs the real payment flow against a service, then checks the settlement on Stellar itself: from the token contract's own transfer event, not the service's 200 OK.
Website · Docs · Repository · Check Catalogue · X
CLI · catalogue, read-only 5/5, then 7/7 with the settlement verified on-chain |
MCP · the same checks from Claude Code: x402, then MPP charge and channel |
npx @wasit-dev/cli test --target https://your-service.example/paid --read-onlyThat runs X402-01 to X402-05: no keys, no payment. Drop --read-only and add a
testnet key for the checks that settle a real payment.
| Package | For | |
|---|---|---|
| CLI | @wasit-dev/cli |
The wasit command, in a terminal or a CI job |
| MCP | @wasit-dev/server |
The same checks as tools for Claude Code, Claude Desktop and other MCP clients |
| Core | @wasit-dev/core |
The check suite itself, for your own tooling |
| Protocol | Checks | What they establish |
|---|---|---|
| x402 | X402-01–07 |
The 402 challenge is well formed, a valid payment settles on-chain for exactly the advertised terms, and a forged signature is refused |
| MPP charge | MPP-01 |
The charge settles on-chain for the advertised amount, recipient and token |
| MPP channel | MPP-10–14 |
The channel matches what was advertised, stale and replayed commitments are refused with 402, and closing settles (opt-in) |
Testnet only · Apache-2.0 · Each check is traced to a spec clause in the Check Catalogue.

