diff --git a/static/src/descriptorhandler/composer.js b/static/src/descriptorhandler/composer.js
index b3d849e..ecafe77 100644
--- a/static/src/descriptorhandler/composer.js
+++ b/static/src/descriptorhandler/composer.js
@@ -18,7 +18,7 @@
 var graph_editor = new TCD3.ModelGraphEditor();
 
 var type_view = {
-    "nsd": ["vnf", "ns_vl"],
+    "nsd": ["vnf", "ns_vl", "ns_cp"],
     "vnfd": ["vdu", "cp", "vnf_vl", "int_cp"]
 };
 
@@ -201,6 +201,9 @@
             case 'int_cp':
                 intcpDetails(element.info.osm);
                 break;
+            case 'ns_cp':
+                nscpDetails(element.info.osm);
+                break;
             case 'cp':
                 cpDetails(element.info.osm);
                 break;
@@ -343,6 +346,15 @@
     side.append(cp_template);
 }
 
+function nscpDetails(cp) {
+    var side = $('#side_form');
+    var cp_template = getMainSection('Connection Point');
+
+    cp_template += getChildrenTable(cp, true);
+    side.empty();
+    side.append(cp_template);
+}
+
 function vlDetails(vl) {
     var side = $('#side_form');
     var vl_template = getMainSectionWithSubmitButton('Virtual Link');
diff --git a/static/src/descriptorhandler/controller.js b/static/src/descriptorhandler/controller.js
index fd22411..f127ea7 100644
--- a/static/src/descriptorhandler/controller.js
+++ b/static/src/descriptorhandler/controller.js
@@ -210,17 +210,13 @@
         var desc_type = getUrlParameter('type');
 
         if (desc_type === 'nsd') {
-            var element_type = 'cp';
+            var element_type = 'ns_cp';
             var data_form = new FormData();
-
-            var vnfd_node = (link.source.info.type === 'vnf') ? link.source : link.target;
-            var vld_node = (link.source.info.type === 'ns_vl') ? link.source : link.target;
-
+            var ns_cp = (link.source.info.type === 'ns_cp') ? link.source : link.target;
             data_form.append('csrfmiddlewaretoken', getCookie('csrftoken'));
-            //data_form.append('vnfd-connection-point-ref', 'cp_temp');
-            data_form.append('member-vnf-index-ref', vnfd_node.info.osm['member-vnf-index']);
-            data_form.append('vnfd-id-ref', vnfd_node.info.osm['vnfd-id-ref']);
-            data_form.append('vld_id', vld_node.info.osm['id']);
+            data_form.append('member-vnf-index-ref', ns_cp.info.osm['member-vnf-index-ref']);
+            data_form.append('vnfd-id-ref', ns_cp.info.osm['vnfd-id-ref']);
+            data_form.append('vld_id', ns_cp.info.osm['vld_id']);
 
             $.ajax({
                 url: '/projects/descriptors/' + desc_type + '/' + desc_id + '/removeElement/' + element_type,
