AI Agents
AI agent identity and tooling on Maroo. On-chain identity sits on the ERC-8004 IdentityRegistry preinstall plus the Agent precompile (discovery + indexed reads). Two integration paths for building agents: @maroo-chain/mcp is the lightest read-only path; MAWS (Maroo Agent Wallet Stack) is the stateful toolkit when an agent needs to hold balances, sign transfers, and run on-chain policy.
Agents
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 and enforced on two layers: the MCP server runs them as an off-chain preflight, and PCL re-runs them at consensus level so a bypass of the off-chain check still cannot ship.
MAWS agents operate as Account Abstraction (AA) wallets, meaning their gas fees can be sponsored or delegated. The gasSource configuration dictates whether the WaaS Paymaster, the agent itself, or the human owner covers the execution costs.
In accordance with regulatory requirements, the Maroo WaaS enforces global limits based on the human owner's KYC tier. These limits apply cumulatively across all agents owned by that user, superseding any individual agent's spendingLimit.
@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) read-only access to Maroo's knowledge base and chain state. Pair it with @maroo-chain/m-aws when the agent also needs wallet / transfer capability, or run it standalone when the agent only needs to understand Maroo.
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.
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.
To provide immediate feedback to AI agents while maintaining strict blockchain security, MAWS uses a two-layer policy model. The AgentManager performs off-chain preflight checks, while the Maroo chain's Programmable Compliance Layer (PCL) provides the definitive on-chain enforcement.
Identity
The Agent precompile at 0x100000000000000000000000000000000000000A is a thin discovery + indexing surface. It exposes two view methods: getParams() (returns the addresses of the ERC-8004 IdentityRegistry and ReputationRegistry preinstalls on this chain) and getAgentIds(wallet, pageRequest) (paginated list of agent IDs registered by a given wallet — backed by an x/agent chain-side index for cheap lookup). All actual agent state operations — registration, attestation, revocation, metadata reads — happen on the ERC-8004 IdentityRegistry preinstall at the address returned by getParams().
Maroo provides KYA (Know Your Agent) verification and transaction modules for autonomous agents, ensuring accountability and strict boundaries for AI-driven economic activity.
Maroo treats AI agent identity as a chain-level primitive by deploying a standard ERC-8004 IdentityRegistry contract as a preinstall — i.e., the contract is part of the genesis state at a fixed, well-known address rather than being deployed by any single dapp. This means agent registration, attestation, and revocation use the canonical ERC-8004 ABI, so any tool that supports ERC-8004 elsewhere works on Maroo without modification. The Maroo-specific agent precompile sits on top of this contract to provide low-gas indexed reads (see agent-precompile-overview).