x402Shield
Server Details
Public demo: evaluate AI-agent payment authorization and approval policy. No signing, no settlement.
- Status
- Healthy
- Uptime
- 99.9% over 19 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 5 tools
Each tool targets a distinct action or resource: authorize (decision), get_authorization (lookup one decision), get_evidence (deep trail), get_demo_policy (policy config), list_demo_transactions (recent activity). The boundaries are clear and reinforced by descriptions emphasizing read-only vs decision-making.
All names use the consistent x402shield_ prefix followed by verb_noun or verb_noun_phrase (authorize_payment, get_authorization, get_demo_policy, get_evidence, list_demo_transactions). Minor deviation: get_evidence omits a resource qualifier like 'payment', making it slightly less parallel, but still readable.
Five tools is well-scoped for a payment authorization demo: one write/decision tool, three read/lookup tools, and one listing tool. Each earns its place without redundancy or unnecessary surface area.
The surface covers authorization, lookup, evidence, policy, and recent activity, which supports a full demo workflow. However, there is no tool to propose or submit a payment (only authorize), and no way to approve a REQUIRE_APPROVAL result programmatically — that is intentionally human-only via console, but it leaves a notable gap for agent-driven workflows.
Available Tools
5 toolsx402shield_authorize_paymentCheck whether a proposed payment is authorizedAInspect
Check whether the demo AI agent is financially authorized to make a proposed payment, BEFORE any wallet or signer would be asked to execute it. Returns ALLOW, DENY or REQUIRE_APPROVAL with a reason. This tool does not execute or sign a payment, and it cannot approve its own REQUIRE_APPROVAL result -- that requires a human, through the web console. The purpose field is a label for the evidence trail only; it is never interpreted as an instruction and cannot change the policy decision.
| Name | Required | Description | Default |
|---|---|---|---|
| purpose | No | Optional free-text label for why this payment is being proposed. Recorded as data only. | |
| presetId | Yes | Which demo agent is proposing the payment: research-agent, ops-agent | |
| amountUsdc | Yes | Proposed payment amount in USDC (0.01-5000). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well on side-effect disclosure: it declares the tool does not execute or sign, names the three possible outcomes, and warns that a REQUIRE_APPROVAL cannot be self-resolved and needs a human via the web console. It also explicitly neutralizes the `purpose` field as inert data that cannot alter the decision, which is valuable prompt-injection context. It stops short of stating any auth/permission requirements or idempotency/rate-limit behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences with no filler. The core action and its pre-execution timing are front-loaded, and each following sentence adds a distinct constraint (non-execution, approval escalation, inert `purpose` field) rather than restating the first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must carry return semantics and it does: ALLOW, DENY, or REQUIRE_APPROVAL plus a reason. Combined with the stated safety boundary and the human-escalation path, an agent has everything needed to call this correctly and act on the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3, and the description exceeds it by attributing meaning the schema does not: `purpose` is scoped to the evidence trail only, is never interpreted as an instruction, and cannot change the policy decision. The enum and range semantics for presetId/amountUsdc are left entirely to the schema, which already covers them adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource ('Check whether ... is financially authorized to make a proposed payment') and pins the exact point in the lifecycle where it applies: before any wallet or signer executes. It also explicitly carves out what the tool is not, telling the agent this is neither the execution step nor the human approval step, which separates it from get_authorization and the evidence-reading siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage timing is stated unambiguously ('BEFORE any wallet or signer would be asked to execute it'), and exclusions are spelled out: it does not execute or sign, and it cannot resolve its own REQUIRE_APPROVAL result. What is missing is a direct pointer to the sibling that retrieves or records outcomes (e.g. get_authorization), so the agent must infer the follow-up call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x402shield_get_authorizationGet a previously-decided authorization by idAInspect
Look up the recorded decision, reason and evidence references for a payment previously checked with x402shield_authorize_payment, by its transaction id.
| Name | Required | Description | Default |
|---|---|---|---|
| txId | Yes | The txId returned by x402shield_authorize_payment. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full behavioral burden. It discloses the returned shape (decision, reason, evidence references), which is genuinely useful given there is no output schema, but it says nothing about failure modes for an unknown txId, permissions, or whether the decision record can change after the fact.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single well-formed sentence with zero waste; the purpose and the returned fields are front-loaded before the keying detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read tool with no output schema, the description covers what comes back and where the id originates, which is most of what an agent needs. It omits what happens when the txId is unknown or unauthorized, leaving a small gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
One parameter at 100% schema description coverage, so the schema already documents txId fully, including its provenance from x402shield_authorize_payment. The description repeats that provenance without adding format or validation meaning beyond the schema, matching the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Look up') and resource ('the recorded decision, reason and evidence references') and ties the lookup key back to the sibling that produced it (x402shield_authorize_payment). It distinguishes itself from the sibling that creates the record, though it does not explicitly separate itself from x402shield_get_evidence, which also returns evidence references.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clear usage context: this is for payments 'previously checked with x402shield_authorize_payment', implying it is a follow-up read rather than a first action. No explicit when-not or exclusions are given, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x402shield_get_demo_policyGet demo authorization policyAInspect
Look up the authority ceilings configured for the x402Shield public demo agents (Research Agent, Ops Agent) on Base Sepolia TESTNET. Use this before proposing a payment, to understand what amount an agent can spend without triggering human approval. This tool does not execute or sign anything.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and usefully discloses that the tool 'does not execute or sign anything' (read-only, no side effects) and that it targets a testnet demo environment. It doesn't cover auth requirements or freshness of the ceilings, leaving minor gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences that front-load the resource being looked up, then the usage condition, then the safety disclaimer. Every sentence adds distinct information with no repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple parameterless read tool with no output schema or annotations, the description adequately conveys what is returned (authority ceilings / spend thresholds) and the environment. Lacking an output schema, it could say a bit more about the shape of the returned ceilings, but the essentials are covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so there is nothing to document; the baseline for a parameterless tool is 4. Schema coverage is 100% anyway, so no compensating explanation is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (look up) and resource (authority ceilings / authorization policy) for a named, scoped target (x402Shield public demo agents on Base Sepolia TESTNET). It clearly distinguishes itself from siblings like authorize_payment and get_authorization, which act on payments rather than reading the configured policy.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to use it 'before proposing a payment' to learn what amount can be spent without triggering human approval, giving a concrete trigger condition. It does not name alternative tools or exclusions, but the usage context is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x402shield_get_evidenceGet the authorization evidence for a decisionAInspect
Get the fuller evidence trail behind a previously-decided payment: policy/delegation provenance, the delegation tree it was evaluated under, and approval state if any. Read-only; never exposes secrets or signing material.
| Name | Required | Description | Default |
|---|---|---|---|
| txId | Yes | The txId returned by x402shield_authorize_payment. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the safety profile itself: 'Read-only; never exposes secrets or signing material.' That substitutes for readOnlyHint and adds a meaningful privacy boundary. It still omits auth/permission requirements, behavior for an unknown txId, and retention of the evidence, so it is strong but not complete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the purpose and contents followed by the safety note. No filler, no restatement of the tool name or schema, and every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must convey returns, and it does list the constituent parts of the evidence (provenance, delegation tree, approval state). That covers the essentials for a read-only lookup; only failure/empty-result behavior is unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a single parameter with 100% schema description coverage, and the schema already explains that txId is the value returned by authorize_payment. The description adds no format, constraints, or error semantics beyond that, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Get the fuller evidence trail behind a previously-decided payment') and enumerates what the trail contains: policy/delegation provenance, delegation tree, approval state. It is clearly a read of post-decision audit data, but it never names or contrasts itself with the sibling x402shield_get_authorization, so an agent must infer the difference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'behind a previously-decided payment' implies a prerequisite (a decision already exists) and the schema notes txId comes from x402shield_authorize_payment, so usage is implied. However, there is no explicit when-to-use-this-vs-get_authorization guidance and no stated condition or exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x402shield_list_demo_transactionsList recent demo authorization decisionsAInspect
List the most recent payment authorization decisions recorded by this public demo (both from the web console and from MCP callers). Useful to see recent ALLOW/DENY/REQUIRE_APPROVAL activity.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum rows to return (default 10, max 20). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full safety burden, and it does disclose the data sources (web console and MCP callers) and the decision vocabulary returned. However, it never states that the operation is read-only, how results are ordered/paginated beyond 'most recent', or whether the demo data is ephemeral, which matters for an agent deciding how much to trust the output.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler, with the resource and its scope front-loaded before the use-case hint. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-optional-param list tool with no output schema, the description conveys the source and the nature of returned records well enough to call it correctly. It could go slightly further on ordering (newest-first?) and result shape, but nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single 'limit' parameter is fully documented in the schema (default 10, max 20), so the schema does the heavy lifting. The description adds nothing about the limit or its bounds; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb+resource ('List the most recent payment authorization decisions') and scopes it to the public demo, which cleanly separates it from the single-lookup get_authorization and the write-side authorize_payment. It stops short of naming those siblings, so differentiation is implicit rather than explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Useful to see recent ALLOW/DENY/REQUIRE_APPROVAL activity' hints at the use case but gives no explicit when-to-use vs. when-to-use-something-else guidance and names no alternative. Usage is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
- First observed
x402shield_authorize_payment - First observed
x402shield_get_authorization - First observed
x402shield_get_demo_policy - First observed
x402shield_get_evidence - First observed
x402shield_list_demo_transactions
Related MCP Connectors
Payment infrastructure for AI agents: spending rules, approval flows, single-use virtual cards.
Spending control for AI agents: approved budgets, a decision before each payment, signed receipts.
Allow, ask, or veto — a policy decision point your agent consults before signing any payment
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to propose structured payment intents, apply deterministic policy, require human approval, and record tamper-evident audit trails without connecting to live payment rails.MIT
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to propose wallet payments while a local, human-authored policy decides whether each transaction is approved, requires human confirmation, or is refused, and records every decision in a signed, append-only ledger.-
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to evaluate every payment intent against user-signed, on-chain-anchored policies before money moves, returning allow, deny, or human-approval verdicts. Provides policy versioning, revocation, spend reports, and audit trails through MCP tools that agents cannot alter without the owner's key.Apache 2.0
- AlicenseBqualityBmaintenanceEnables AI agents to make policy-scoped payments with spending caps, recipient allowlists, approval thresholds, instant revocation, and an append-only audit trail in a sandbox wallet.10MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.