Sentinel Payment Boundary Tools
LocalAbout Sentinel Payment Boundary Tools
Sentinel Payment Boundary Tools is a read-only stdio MCP server for deterministic checks of public payment metadata and x402 v2 objects, plus local preparation of an unsubmitted quote-request draft. It is intended for agents and workflows that need explicit payment-safety boundaries without wallet access or fund movement.
Key features
- 01Check payment-boundary documents with fixed rules
- 02Preflight x402 v2 PaymentRequired objects
- 03Prepare an unsubmitted quote-request draft
- 04Read service catalog and request contract
- 05Avoid fetching supplied URLs or moving funds
Use cases
- 01Review public payment metadata before further evaluation
- 02Check an x402 v2 payment request against its supported profile
- 03Prepare a public quote request without submitting it
- 04Inspect the service catalog and request contract
MCP support
The stdio MCP server exposes two preflight tools, a quote-request draft tool, and two resources for the service catalog and request contract. Preflights use inline content; the server does not connect wallets or move funds.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMESentinel Payment Boundary Tools
Read-only stdio MCP server with two deterministic free preflights for public payment metadata, one local public quote-request draft preparer, and Sentinel Recovery's public service catalog and quote-request contract.
Source version 0.4.1 hardens public quote-draft URL validation and the service
catalog guard while retaining prepare_agent_payment_boundary_quote_request
and the pinned x402 v2 exact-EVM EIP-3009 safety profile.
Checksummed versioned MCPB artifacts are published on the
GitHub Releases page.
It is not published to npm. The official MCP Registry name is
io.github.TerminallyLazy/sentinel-recovery-services; verify the current
mcp/server.json, release checksum, and Registry record before relying on a
published version. The GitHub Pages site is static and is not a remote MCP
endpoint.
Tools
preflight_agent_payment_boundaryanalyzes one or two inline public JSON, Markdown, or text documents, with a 100 KiB combined limit.- It performs 11 fixed checks covering request-versus-payment authority, payer policy, inbound versus outbound wallet authority, custody/signing/spending, the canonical payment tuple, quote expiry, replay handling, receipt states, sensitive wallet inputs, donation separation, and metadata integrity.
- Findings are deterministic
clear,ambiguous, ormissingresults with a bounded locator, normalized evidence marker, risk, and correction. Supplied prose is never copied into model-visible output. - It does not fetch requester-controlled URLs, execute document content, submit a request, connect a wallet, or move funds.
clearmeans the required recognized structured declarations are present and no unmodeled supplied content was observed; it is not a certification and does not verify implementation behavior. For every check that can clear, an unknown field or non-allowlisted free-form value conservatively downgrades the declaration toambiguousinstead of guessing whether it is safe. External digest URLs remainambiguousbecause the offline preflight does not fetch or trust them; the full review can verify supplied integrity evidence separately.preflight_x402_v2_payment_requiredanalyzes exactly one decoded inline JSON x402 v2PaymentRequiredobject using nine fixed checks. It accepts only the pinned closed-world Sentinel profile:exact, canonicaleip155:<chain-id>, EIP-3009 transfer metadata, 1–64 unique complete alternatives, positive uint256 atomic amounts, and a 1–86,400 second timeout.- The x402 profile is intentionally stricter than core x402. A structurally clear result does not prove that a chain exists, a token behaves as claimed, an EIP-712 domain is correct, a recipient controls an address, payer policy authorizes a payment, a signature is valid, settlement occurred, or a receipt exists. Permit2, ERC-7710, nonempty extensions, and other unmodeled content are reported as unsupported or ambiguous, not silently accepted.
prepare_agent_payment_boundary_quote_requestaccepts one or two unique public HTTPS document URLs without credentials, query strings, fragments, or non-public hosts, plus optional public request details, and prepares a complete, unsubmitted public GitHub issue draft for the fixed-scope Agent Payment Boundary Review.- The preparer formats the request locally. It does not fetch or verify supplied URLs, make a network request, use a credential, submit the issue, authorize payment, include payment instructions, or create service entitlement.
Resources
sentinel://services/catalogreads and validates the liveservices.json.sentinel://services/quote-request-contractreads and validates the liveservice-request.json.
A resource read, preflight, or request-draft preparation moves no funds. The
draft preparer returns a complete public GitHub request packet but submits
nothing, authorizes no payment, and creates no service entitlement. The
requester remains in control of whether to submit it within its own delegated
communication policy. A Sentinel human remains in control of issuing a complete
written quote, and any later payment remains controlled by the payer's own
policy. The server never requests credentials, keys, signatures, wallet
connections, custody, or wallet control. An optional $49 review is
quote-first; using a free tool does not create a payment obligation.
Install and verify
From the repository root:
npm ci --prefix mcp --ignore-scripts
npm test --prefix mcp
npm audit --prefix mcp --audit-level=high
npm run pack:check --prefix mcp
Client configuration
Replace the example path with the absolute path to the verified checkout:
{
"mcpServers": {
"sentinel-recovery-services": {
"command": "node",
"args": ["/absolute/path/to/sentinel-recovery-support/mcp/server.mjs"]
}
}
}
The client launches node mcp/server.mjs over stdio. The server writes only MCP
protocol messages to stdout; startup failures go to stderr.
Network and validation boundaries
- Only the two hard-coded canonical HTTPS URLs are fetched.
- Both preflight tools accept inline content only and make no network requests.
- The request-draft preparer accepts caller-supplied public HTTPS URLs but does not accept query strings, fragments, credential-bearing URLs, or non-public hosts and does not fetch them, verify their availability, use credentials, make a network request, or submit the resulting public GitHub issue draft.
- JSON with duplicate object keys is rejected before evaluation; recognized fields and containers must match their bounded types and value domains.
- Requests use
GET, a ten-second timeout, and a 256 KiB response cap. - Responses must be JSON objects matching the expected minimal contract shape.
- An upstream failure returns an actionable MCP error with the canonical URL.
- No environment variables, API keys, install scripts, or wallet access are required.
The package is UNLICENSED because this repository does not currently publish a
general code license. Installing or running the source does not grant any
financial authority.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.