Agents

Maroo MCP — @maroo-chain/mcp component

@maroo-chain/mcp is the official Maroo MCP server — an npx-installable Model Context Protocol kit that gives any compatible AI client (Claude Code, Cursor, Claude Desktop, Windsurf, Gemini CLI) Maroo's knowledge base, chain and PCL reads, and a local-key testnet wallet. It is not read-only: its wallet tools create or import a private key and sign and broadcast testnet OKRW transfers with it. Pair it with @maroo-chain/m-aws when the agent needs WaaS-managed AA wallets under on-chain policy, or run it standalone when the agent mainly needs to understand Maroo.

Agent Policy Semantics mechanism

Agent policies are the primary risk control mechanism in MAWS. They consist of a spendingLimit (maximum OKRW per transaction) and allowedTargets (an allowlist of destination addresses). These rules are stored on-chain in the IdentityRegistry, but only MAWS enforces them: the MCP server checks them before it signs. No chain module reads them, so a transaction sent with the agent wallet's key outside MAWS is not stopped by them; the per-agent cap the chain itself can enforce is the separate TransferLimit key (see two-layer-policy-model).

Gas Source Modes mechanism

MAWS agents operate as Account Abstraction (AA) wallets, meaning their gas fees can be sponsored or delegated. The gasSource setting chooses who covers the execution costs: the WaaS Paymaster, the agent itself, or (experimental, not yet routed on-chain) the human owner.

KYC-Based Transfer Limits mechanism

Owner-level limits come from the chain's Programmable Compliance Layer (PCL) global policy, not from MAWS. KYC is an EAS attestation. On Maroo Testnet a sender without one is capped at 2,000,000 OKRW per transaction and 10,000,000 OKRW per UTC day, and these caps apply whatever an agent's MAWS spendingLimit allows.

Maroo Agent Wallet Stack (MAWS) Architecture

The Maroo Agent Wallet Stack (MAWS) bridges the gap between autonomous AI agents and the Maroo blockchain. It provides a Model Context Protocol (MCP) server that exposes wallet operations as standard tool calls, allowing agents to hold value, transact, and manage policies. The architecture is built on a layered model—Identity, Knowledge, Interface, Wallet, Compliance, and Commerce—ensuring that agent actions remain secure, compliant, and traceable.

Ownership Transfer TTLs mechanism

When transferring an agent from one human owner to another using transfer.initiate, the agent enters a locked state. The transfer request has a 24-hour Time-To-Live (TTL), during which the recipient must accept it.

Two-Layer Policy Model architecture

MAWS checks an agent's policy before it signs, so an AI agent gets immediate feedback. Those MAWS rules — spendingLimit, allowedTargets, status — are stored on-chain as IdentityRegistry metadata, but only MAWS enforces them; the chain does not read them. What the chain enforces is a separate layer, the Programmable Compliance Layer (PCL), configured with its own global and contract policies. Its one per-agent cap reads a different metadata key, TransferLimit.

Identity

Agent Precompile component

The Agent precompile at 0x100000000000000000000000000000000000000A is a thin view-only surface. It exposes getParams() (returning the ERC-8004 identityRegistry and reputationRegistry addresses this chain resolves) and getAgentIds(wallet, pageRequest) (a paginated lookup of the agent IDs whose ERC-8004 agent wallet is wallet, read from a chain-side index). Everything else — registration, the agent URI, metadata, the agent wallet, ERC-721 ownership — goes directly to the ERC-8004 IdentityRegistry preinstall at 0x8004000000000000000000000000000000000001, which has no attest or revoke function.

AI Agent Oriented Design mechanism

Maroo provides KYA (Know Your Agent) verification and transaction modules for autonomous agents, ensuring accountability and strict boundaries for AI-driven economic activity.

ERC-8004 Identity Registry (Preinstall) component

Maroo treats AI agent identity as a chain-level primitive by installing an ERC-8004 Identity Registry as a preinstall at a fixed, well-known address (0x8004000000000000000000000000000000000001) instead of leaving each dapp to deploy its own. On Maroo Testnet it arrived with the v0.4.0 chain upgrade (block 6,372,905) rather than at genesis. Registration, the agent URI, per-agent metadata and the agent wallet use the ERC-8004 v1 Identity Registry ABI, so tools that speak that ABI work unchanged; the registry has no attestation or revocation function. The Maroo-specific agent precompile sits beside it: it returns the registry addresses and maps an agent wallet to its agent IDs (see agent-precompile-overview).

ESC
Type to search