RMS is the root-mean-square value of a signal. For a digitised signal, you can calculate it by squaring each value, finding the arithmetic mean of those squared values, and taking the square root of the result.
Loosely speaking, it represents the average "power" of a signal. In electrical terms, all signals with the same RMS voltage, when applied across a resistor, will produce the same amount of heat.
Note that Matlab has an RMS function Y = rms(X)
in the signal processing toolbox. if you don't have that toolbox, it shouldn't be hard to write your own function.
Since the RMS value is only related to the signal amplitude, knowing it doesn't help you to create the waveform. However, if you have a function that will generate the desired waveform, you could measure the RMS value of the result, and multiply by an appropriate scaling factor to give you the amplitude you want.
If "the noise contributes to 5% of the signal RMS value", then presumably the signal would only have an RMS value of 95% of the total before you added the noise. But beware that RMS values don't simply add. Adding noise of RMS amplitude 1 to a signal of amplitude 10 will not necessarily produce a new signal of RMS amplitude 11.