diff --git a/robot/resources/mso_interface.robot b/robot/resources/mso_interface.robot
new file mode 100644
index 0000000..b6a53b4
--- /dev/null
+++ b/robot/resources/mso_interface.robot
@@ -0,0 +1,54 @@
+*** Settings ***
+Documentation     The main interface for interacting with MSO. It handles low level stuff like managing the http request library and MSO required fields
+Library 	      RequestsLibrary
+Library	          UUID      
+Library           OperatingSystem
+Library           Collections
+Resource          global_properties.robot
+Resource          ../resources/json_templater.robot
+*** Variables ***
+${MSO_HEALTH_CHECK_PATH}    /ecomp/mso/infra/globalhealthcheck
+
+*** Keywords ***
+Run MSO Health Check
+    [Documentation]    Runs an MSO global health check
+    ${auth}=  Create List  ${GLOBAL_MSO_USERNAME}    ${GLOBAL_MSO_PASSWORD}
+    ${session}=    Create Session 	mso 	${GLOBAL_MSO_SERVER}
+    ${uuid}=    Generate UUID
+    ${headers}=  Create Dictionary     Accept=text/html    Content-Type=text/html    X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid}    X-FromAppId=${GLOBAL_APPLICATION_ID}
+    ${resp}= 	Get Request 	mso 	${MSO_HEALTH_CHECK_PATH}     headers=${headers}
+    Should Be Equal As Strings 	${resp.status_code} 	200
+
+Run MSO Get Request
+    [Documentation]    Runs an MSO get request
+    [Arguments]    ${data_path}    ${accept}=application/json
+    ${auth}=  Create List  ${GLOBAL_MSO_USERNAME}    ${GLOBAL_MSO_PASSWORD}
+    Log    Creating session ${GLOBAL_MSO_SERVER}
+    ${session}=    Create Session 	mso 	${GLOBAL_MSO_SERVER}    auth=${auth}
+    ${uuid}=    Generate UUID
+    ${headers}=  Create Dictionary     Accept=${accept}    Content-Type=application/json    X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid}    X-FromAppId=${GLOBAL_APPLICATION_ID}
+    ${resp}= 	Get Request 	mso 	${data_path}     headers=${headers}
+    Log    Received response from mso ${resp.text}
+    [Return]    ${resp}
+    
+Poll MSO Get Request
+    [Documentation]    Runs an MSO get request until a certain status is received. valid values are COMPLETE
+    [Arguments]    ${data_path}     ${status}
+    ${auth}=  Create List  ${GLOBAL_MSO_USERNAME}    ${GLOBAL_MSO_PASSWORD}
+    Log    Creating session ${GLOBAL_MSO_SERVER}
+    ${session}=    Create Session 	mso 	${GLOBAL_MSO_SERVER}    auth=${auth}
+    ${uuid}=    Generate UUID
+    ${headers}=  Create Dictionary     Accept=application/json    Content-Type=application/json    X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid}    X-FromAppId=${GLOBAL_APPLICATION_ID}
+    #do this until it is done
+    :FOR    ${i}    IN RANGE    20
+    \    ${resp}= 	Get Request 	mso 	${data_path}     headers=${headers}
+    \    Should Not Contain    ${resp.text}    FAILED
+    \    Log    ${resp.json()['request']['requestStatus']['requestState']}   
+    \    ${exit_loop}=    Evaluate    "${resp.json()['request']['requestStatus']['requestState']}" == "${status}"
+    \    Exit For Loop If  ${exit_loop}
+    \    Sleep    15s
+    Log    Received response from mso ${resp.text}
+    [Return]    ${resp}
+
+
+    
