diff --git a/src/libmsc/call_leg.c b/src/libmsc/call_leg.c
index e890f75..f8a75c4 100644
--- a/src/libmsc/call_leg.c
+++ b/src/libmsc/call_leg.c
@@ -122,7 +122,13 @@
 
 static void call_leg_mgw_endpoint_gone(struct call_leg *cl)
 {
+	struct mgcp_client *mgcp_client;
 	int i;
+
+	/* Put MGCP client back into MGW pool */
+	mgcp_client = osmo_mgcpc_ep_client(cl->mgw_endpoint);
+	mgcp_client_pool_put(mgcp_client);
+
 	cl->mgw_endpoint = NULL;
 	for (i = 0; i < ARRAY_SIZE(cl->rtp); i++) {
 		if (!cl->rtp[i])
@@ -275,10 +281,17 @@
 	if (cl->rtp[dir])
 		return 0;
 
-	if (!cl->mgw_endpoint)
+	if (!cl->mgw_endpoint) {
+		struct mgcp_client *mgcp_client = mgcp_client_pool_get(gsmnet->mgw.mgw_pool);
+		if (!mgcp_client) {
+			LOG_CALL_LEG(cl, LOGL_ERROR,
+				     "cannot ensure MGW endpoint -- no MGW configured, check configuration!\n");
+			return -ENODEV;
+		}
 		cl->mgw_endpoint = osmo_mgcpc_ep_alloc(cl->fi, CALL_LEG_EV_MGW_ENDPOINT_GONE,
-						       gsmnet->mgw.client, gsmnet->mgw.tdefs, cl->fi->id,
-						       "%s", mgcp_client_rtpbridge_wildcard(gsmnet->mgw.client));
+						       mgcp_client, gsmnet->mgw.tdefs, cl->fi->id,
+						       "%s", mgcp_client_rtpbridge_wildcard(mgcp_client));
+	}
 	if (!cl->mgw_endpoint) {
 		LOG_CALL_LEG(cl, LOGL_ERROR, "failed to setup MGW endpoint\n");
 		return -EIO;
diff --git a/src/libmsc/msc_vty.c b/src/libmsc/msc_vty.c
index be05a95..357b975 100644
--- a/src/libmsc/msc_vty.c
+++ b/src/libmsc/msc_vty.c
@@ -2033,6 +2033,8 @@
 	install_element(GSMNET_NODE, &cfg_net_no_per_loc_upd_cmd);
 	install_element(GSMNET_NODE, &cfg_net_call_wait_cmd);
 	install_element(GSMNET_NODE, &cfg_net_no_call_wait_cmd);
+	mgcp_client_pool_vty_init(GSMNET_NODE, MGW_NODE, " ", msc_network->mgw.mgw_pool);
+
 
 	install_element(CONFIG_NODE, &cfg_msc_cmd);
 	install_node(&msc_node, config_write_msc);
@@ -2066,7 +2068,9 @@
 	/* Timer configuration commands (generic osmo_tdef API) */
 	osmo_tdef_vty_groups_init(MSC_NODE, msc_tdef_group);
 
+	/* Deprecated: Old MGCP config without pooling support in MSC node: */
 	mgcp_client_vty_init(msc_network, MSC_NODE, &msc_network->mgw.conf);
+
 #ifdef BUILD_IU
 	ranap_iu_vty_init(MSC_NODE, (enum ranap_nsap_addr_enc*)&msc_network->iu.rab_assign_addr_enc);
 #endif
