1. A system for providing access to a server on a target platform from a mobile device, the system comprising: a mobile application associated with the mobile device; a client running on the mobile device, associated with the mobile application, and in communication with the server on the target platform; and a macro recorder configured to record a first sequence of user interactions between the mobile device and the server, and further configured to create a first programmable macro, wherein creating the first programmable macro comprises, for each user interaction in the first sequence: retrieving a raw action comprising raw keyboard input or one or more mouse click locations; identifying a graphical user interface element accessed by the raw action; classifying the raw action as a parameter operation or a non-parameter operation based on the identified graphical user interface element, wherein a parameter operation is enabled to change the state of the identified graphical user interface element with a user-inputted value; and including the parameter operation or non-parameter operation in the first programmable macro.