BASE frame is not that relevant but e.g. as BASE frame you can define the mounting frame on your flange.
As TCP frame you should select the frame which is later the TCP for your robot. In many cases grippers are modeled in car body 0 frame. So in this case TCP is self-origin of your gripper.
You never should to set TCP as a self origin. For guys from simulation it is ok but when you will be able to upload your program on the real robot then it is very complicated. Online programmers have to know where is a TCP on the gripper. You should always use for gripper some real and clearly visible place. Usually is fixed pin and secondly the moving pin or other visible element.
I agrea with mlysy.
We use more frames.
If it is a single gripper that picks one part we use three frames.
A mount frame so I or a colleague will ALWAYS mount the tool correctly.
We also have a frame for car zero so we ALWAYS have the part correctly in the gripper and when it's defined as tcpf can ALWAYS jump to the correct position in a fixture or what ever.
The third frame is taken from our customer robotics spec and is mostly a pin and if we are not sure we ask our robotics department.