Skip to main content
Glama

azeth_execute_agreement

Execute a due payment from an on-chain agreement. Automatically validates interval, caps, and limits, with pro-rata accrual for scaling payout by elapsed time.

Instructions

Execute a due payment from an on-chain agreement. Anyone can call this — the payer, payee, or a third-party keeper.

Use this when: You are a service provider collecting a recurring payment owed to you, a payer triggering your own agreement manually, or a keeper bot executing due agreements.

Keeper support: When the "account" is a foreign address (not owned by your private key), execution routes through your own account or EOA automatically. No special configuration needed.

The contract validates all conditions on-chain: interval elapsed, active, within caps and limits. Pro-rata accrual means the payout scales with elapsed time (capped at 3x the interval).

Returns: Transaction hash, amount paid, execution count, and next execution time. If the agreement soft-fails (insufficient balance, guardian limit), it returns the failure reason without reverting.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
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").
accountYesThe payer smart account whose agreement to execute: Ethereum address, participant name, "me", or "#N".
agreementIdYesThe agreement ID to execute (from azeth_create_payment_agreement or azeth_list_agreements).
Behavior5/5

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

With no annotations provided, the description carries full disclosure burden and excels: it validates conditions on-chain (interval, caps), explains pro-rata accrual mechanics (capped at 3x), documents keeper routing logic for foreign accounts, and crucially discloses soft-failure modes (insufficient balance, guardian limits) that return reasons without reverting.

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

Conciseness5/5

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

Perfectly structured with front-loaded purpose, followed by use-case scenarios, keeper technical details, validation logic, and return values. No redundancy; every sentence advances understanding of when/how to use the tool or what happens during execution.

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

Completeness5/5

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

Despite high complexity (pro-rata calculations, keeper mechanics, soft-failures) and no output schema, the description is complete: it documents return values (tx hash, amount, execution count, next time) and all behavioral edge cases necessary for safe invocation.

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?

With 100% schema coverage, baseline is 3. The description adds valuable semantic context: 'account' is clarified as potentially 'foreign' (not owned) triggering keeper routing, and 'agreementId' is explicitly linked to sibling tools (azeth_create_payment_agreement, azeth_list_agreements) helping users locate valid values.

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 opens with the specific action 'Execute a due payment from an on-chain agreement' and immediately distinguishes this from sibling tools by clarifying this triggers payment execution versus creation (azeth_create_payment_agreement), cancellation (azeth_cancel_agreement), or querying (azeth_get_due_agreements).

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?

Provides explicit 'Use this when' guidance covering three distinct roles: service provider collecting payment, payer manually triggering, and keeper bot executing. It further clarifies keeper mechanics for foreign addresses, effectively describing prerequisites and routing behavior.

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