diff --git a/ipa/MSC_Simulation.ttcn b/ipa/MSC_Simulation.ttcn
index 21596f6..f9fb0d4 100755
--- a/ipa/MSC_Simulation.ttcn
+++ b/ipa/MSC_Simulation.ttcn
@@ -18,6 +18,8 @@
 */
 import from BSSMAP_Emulation all;
 
+import from MGCP_Adapter all;
+
 import from MSC_ConnectionHandler all;
 
 type component MSC_CT {
@@ -25,10 +27,15 @@
 	var IPA_Emulation_CT vc_IPA;
 	var SCCP_CT vc_SCCP;
 	var BSSMAP_Emulation_CT vc_BSSMAP;
+	var MGCP_Adapter_CT vc_MGCP_UDP;
 	/* test port to SCCP emulation */
 	port SCCPasp_PT SCCP;
 }
 
+modulepar {
+	boolean mp_mgcp_uses_udp := false;
+}
+
 function main(charstring local_ip, PortNumber local_port,
 	      MSC_SCCP_MTP3_parameters sccp_pars,
 	      SCCP_PAR_Address sccp_addr_own, charstring id) runs on MSC_CT
@@ -46,8 +53,14 @@
 	/* connect BSSNAP dispatcher to upper side of SCCP */
 	connect(vc_BSSMAP:SCCP, vc_SCCP:SCCP_SP_PORT);
 
-	/* connect BSSMAP dispatcher to IPA_Emulation MGCP */
-	connect(vc_BSSMAP:MGCP, vc_IPA:IPA_MGCP_PORT);
+	if (mp_mgcp_uses_udp == false) {
+		/* connect BSSMAP dispatcher to IPA_Emulation MGCP */
+		connect(vc_BSSMAP:MGCP, vc_IPA:IPA_MGCP_PORT);
+	} else {
+		vc_MGCP_UDP := MGCP_Adapter_CT.create(id & "-MGCP_UDP");
+		connect(vc_BSSMAP:MGCP, vc_MGCP_UDP:MGCP);
+		vc_MGCP_UDP.start(MGCP_Adapter.main());
+	}
 
 	vc_IPA.start(IPA_Emulation.main_server(local_ip, local_port));
 	vc_SCCP.start(SCCPStart(sccp_pars));
@@ -57,6 +70,9 @@
 	vc_IPA.done;
 	vc_BSSMAP.done;
 	vc_SCCP.done;
+	if (mp_mgcp_uses_udp) {
+		vc_MGCP_UDP.done;
+	}
 }
 
 }
