/** * agentkit-wrap — register every WalletProvider-based action from * @goatnetwork/agentkit as an MCP tool. * * Strategy: our MCP never holds keys, so the WalletProvider we hand to each * action implements reads against our RpcClient and converts every write * (writeContract, transferErc20, deployContract, etc.) into a thrown * `UnsignedTxEmission` carrying a fully-populated EIP-1559 unsigned tx. * The wrapper catches that, and the MCP tool returns the tx as JSON. * * Result: an agent can call e.g. `wgbtcWrapAction` and get back the unsigned * tx to sign in its wallet, even though the action thinks it's calling * `walletProvider.writeContract(...)`. */ import { z } from "zod"; import type { RpcClient } from "./rpc.js"; type Register = (name: string, description: string, shape: Record, handler: (args: any) => Promise) => void; /** * Register every action from @goatnetwork/agentkit as an MCP tool. * Supports wallet-based actions, faucet actions (if GOAT_FAUCET_URL is set), * and X402 merchant actions (if GOAT_X402_URL is set). * Returns the count and the list of skipped names with reasons. */ export declare function registerAgentkitWalletActions(register: Register, rpc: RpcClient): Promise<{ registered: number; skipped: Array<{ name: string; reason: string; }>; }>; export {};