Sending an RPC to the host

Is there any reason why an Rpc send on the host doesn’t get Invoked on the host as well.
I’m currently doing something like this:

			GameObject playerModel = Instantiate(character) as GameObject;
			NetworkServer.Spawn(playerModel);

			playerModel.GetComponent<SpawnParenter>().RpcSetParent(this.gameObject);

and the RPC is:

[ClientRpc]
	public void RpcSetParent(GameObject parent)
	{
		this.transform.SetParent(parent.transform);
	}

The issues I found with this was timing. I just setup using a coroutine which kept looping through all my players while there were no child objects on them and sent the RPC to the spawned playerModel at the start of this loop.