{
    "toolSpec": {
        "name": "Get_EVM_Wallet",
        "description": "Retrieves an existing wallet for a specific character and chain, this is used when there is a request to fetch the wallet for a character",
        "inputSchema": {
            "json": {
                "type": "object",
                "properties": {
                    "userId": {
                        "type": "string",
                        "description": "The user ID that owns the wallet",
                        "pattern": "^user_[a-zA-Z0-9]{27}$"
                    },
                    "characterId": {
                        "type": "string",
                        "description": "The character ID associated with the wallet"
                    },
                    "network": {
                        "type": "string",
                        "description": "The network name for RPC connection, defaults to base",
                        "enum": ["base", "polygon", "scroll"],
                        "default": "base"
                    }
                },
                "required": ["userId", "characterId"]
            }
        },
        "outputSchema": {
            "json": {
                "type": "object",
                "properties": {
                    "message": {
                        "type": "string",
                        "description": "Contains success data or error details"
                    },
                    "error": {
                        "type": "string",
                        "description": "Error type if any, empty string if successful"
                    },
                    "address": {
                        "type": "string",
                        "description": "The Ethereum address of the wallet"
                    }
                },
                "required": ["message", "error"]
            }
        }
    }
}
