Mikrotik updated fetch a few months ago with "output=user", which does the following:
Output ::= file | none | user
none -- do not store downloaded data
user -- return up to 63k bytes directly in 'data' variable without storing on disk
file -- store to file
Though the only way I can see the contents of the "data" variable is by running a fetch command directly, I haven't actually been able to grab the contents of the variable in a script and store it in a global variable to use later. I assume it's not fully implemented yet? It's kind of weird that Mikrotik would include an unfinished feature in the current and bugfix releases...