Skip to main content
Glama

azeth_guardian_approve

Review and respond to guardian approval requests from your agents. Approve to co-sign operations or reject with a reason.

Instructions

Review and approve or reject guardian approval requests from agents you protect.

Azeth smart accounts have a guardian who co-signs high-value operations. When an agent exceeds its autonomous spending limits, it sends you (the guardian) an approval request via XMTP. Use this tool to review and respond to those requests.

Three modes:

  1. No request_id: Lists all pending guardian approval requests from your XMTP inbox

  2. request_id + decision "approve": Co-signs the userOpHash and sends approval via XMTP

  3. request_id + decision "reject": Sends rejection with optional reason via XMTP

When approving, this tool signs the userOpHash with your AZETH_PRIVATE_KEY (which is the guardian key on your MCP instance) and sends the signature back to the requesting agent.

Returns: List of pending requests (mode 1), or confirmation of approve/reject (mode 2/3).

Example (list): { } Example (approve): { "request_id": "abc-123", "decision": "approve" } Example (reject): { "request_id": "abc-123", "decision": "reject", "reason": "Amount too high" }

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
request_idNoThe request ID to approve or reject. If omitted, lists all pending guardian approval requests from your XMTP messages.
decisionNoDecision: "approve" to co-sign the operation, "reject" to deny it. Required when request_id is provided.
reasonNoOptional reason for rejection. Only used when decision is "reject".
chainNoTarget chain. Defaults to AZETH_CHAIN env var or "baseSepolia". Accepts "base", "baseSepolia", "ethereumSepolia", "ethereum" (and aliases like "base-sepolia", "eth-sepolia", "sepolia", "eth", "mainnet").
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full behavioral disclosure burden. It successfully explains critical behavioral traits: it signs userOpHash with AZETH_PRIVATE_KEY, transmits via XMTP, and returns different structures based on mode. Minor gap: could clarify irreversibility of approvals or network confirmation behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with clear sectioning (concept explanation, three modes, technical mechanism, returns, examples). Front-loaded with purpose. Slightly verbose but every sentence adds necessary context for a security-critical blockchain operation. Examples are appropriately placed at end.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Lacks output schema (has_output_schema: false), so description must compensate for return values. It mentions returns at high level ('List of pending requests' or 'confirmation') but does not describe the structure/shape of these return objects (e.g., what fields comprise a 'request' object), which limits the agent's ability to interpret results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, establishing baseline 3. The description adds significant value through the 'Three modes' narrative that contextualizes parameter combinations (e.g., request_id omission triggers list mode), and provides concrete JSON examples showing how parameters interact, which aids agent reasoning beyond schema definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action (review/approve/reject) and resource (guardian approval requests). It distinguishes itself from sibling `azeth_guardian_status` by emphasizing the active response capability ('Use this tool to review and respond') versus passive status checking.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use ('When an agent exceeds its autonomous spending limits... sends you an approval request'). Documents three distinct operational modes (list, approve, reject) with clear prerequisites for each, effectively serving as usage guidelines.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/azeth-protocol/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server