How can I automatically add an action plan to a service request?

You can add an action plan to an SR using Groovy script.

You must add the Plan Name and the Template ID that you want to apply.

Here's a sample Groovy script.
Note: The status of ORA_SVC_CREATE_AND_INITIATE indicates the plan will be applied to the SR.
def apVO = newView('ActionPlanVO');
def apr = apVO.createRow();
apr.Name = «Plan Name»;
apr.TemplateId = «Action Plan Template Id»;
apr.ObjectEntityName = "ServiceRequest";
apr.StatusCd = "ORA_SVC_CREATE_AND_INITIATE";
apr.ObjectId = SrId;
apVO.insertRow(apr);