diff --git a/tosca-configs/mcord/mcord-release-cluster-fabric-cavium.yaml b/tosca-configs/mcord/mcord-release-cluster-fabric-cavium.yaml
new file mode 100644
index 0000000..9eb00ec
--- /dev/null
+++ b/tosca-configs/mcord/mcord-release-cluster-fabric-cavium.yaml
@@ -0,0 +1,214 @@
+# Copyright 2017-present Open Networking Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# curl -H "xos-username: admin@opencord.org" -H "xos-password: letmein" -X POST --data-binary @mcord-barcelona-fabric.yaml http://192.168.69.1:30007/run
+
+tosca_definitions_version: tosca_simple_yaml_1_0
+imports:
+  - custom_types/switch.yaml
+  - custom_types/switchport.yaml
+  - custom_types/portinterface.yaml
+  - custom_types/fabricipaddress.yaml
+  - custom_types/site.yaml
+  - custom_types/node.yaml
+  - custom_types/vrouterservice.yaml
+  - custom_types/vrouterserviceinstance.yaml
+
+description: Configures the ONF SEBA POD with AT&T workflow
+
+topology_template:
+  node_templates:
+
+    # Site deployment
+    mySite:
+      type: tosca.nodes.Site
+      properties:
+        name: mysite
+        login_base: opencord
+        abbreviated_name: ms
+        site_url: http://opencord.org/
+        hosts_nodes: true
+
+    # compute nodes
+    node#node1:
+      type: tosca.nodes.Node
+      properties:
+        dataPlaneIntf: eth2
+        dataPlaneIp: 118.0.0.201
+        name: node1
+
+    node#node2:
+        type: tosca.nodes.Node
+        properties:
+          dataPlaneIntf: eth2
+          dataPlaneIp: 118.0.0.202
+          name: node2
+
+    # static routes
+    service#vrouter:
+      type: tosca.nodes.VRouterService
+      properties:
+        name: vrouter
+        must-exist: true
+
+    vroutersi#calico:
+      type: tosca.nodes.VRouterServiceInstance
+      properties:
+        name: calico
+      requirements:
+        - owner:
+            node: service#vrouter
+            relationship: tosca.relationships.BelongsToOne
+
+    # Fabric configuration
+    switch#leaf_1:
+      type: tosca.nodes.Switch
+      properties:
+        driver: ofdpa3
+        ipv4Loopback: 192.168.0.204
+        ipv4NodeSid: 214
+        isEdgeRouter: true
+        name: Agg Switch
+        ofId: of:0000000000000001
+        routerMac: 54:87:de:ad:be:ef
+
+    # Node1 Port
+    port#node_1_port:
+      type: tosca.nodes.SwitchPort
+      properties:
+        portId: 34
+      requirements:
+        - switch:
+            node: switch#leaf_1
+            relationship: tosca.relationships.BelongsToOne
+
+    interface#port_1_interface:
+      type: tosca.nodes.PortInterface
+      properties:
+        vlanUntagged: 20
+        name: node_1
+      requirements:
+        - port:
+            node: port#node_1_port
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_1_sgi_net:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 13.1.1.254/24
+        description: node_1_sgi_net
+      requirements:
+        - interface:
+            node: interface#port_1_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_1_s1u_net:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 119.0.0.254/24
+        description: node_1_s1u_net
+      requirements:
+        - interface:
+            node: interface#port_1_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    # Node2 Port
+    port#node_2_port:
+      type: tosca.nodes.SwitchPort
+      properties:
+        portId: 35
+      requirements:
+        - switch:
+            node: switch#leaf_1
+            relationship: tosca.relationships.BelongsToOne
+
+    interface#port_2_interface:
+      type: tosca.nodes.PortInterface
+      properties:
+        vlanUntagged: 20
+        name: node_2
+      requirements:
+        - port:
+            node: port#node_2_port
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_2_sgi_net:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 13.1.1.254/24
+        description: node_2_sgi_net
+      requirements:
+        - interface:
+            node: interface#port_2_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_2_s1u_net:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 119.0.0.254/24
+        description: node_2_s1u_net
+      requirements:
+        - interface:
+            node: interface#port_2_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    # Upstream Router Port
+    port#node_ext_port:
+      type: tosca.nodes.SwitchPort
+      properties:
+        portId: 40
+      requirements:
+        - switch:
+            node: switch#leaf_1
+            relationship: tosca.relationships.BelongsToOne
+
+    interface#port_ext_interface:
+      type: tosca.nodes.PortInterface
+      properties:
+        vlanUntagged: 20
+        name: ext
+      requirements:
+        - port:
+            node: port#node_ext_port
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_ext_upstream:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 11.0.0.254/24
+        description: node_ext_upstream
+      requirements:
+        - interface:
+            node: interface#port_ext_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_ext_sgi_net:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 13.1.1.254/24
+        description: port_ext_sgi_net
+      requirements:
+        - interface:
+            node: interface#port_ext_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_ext_s1u_net:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 119.0.0.254/24
+        description: port_ext_s1u_net
+      requirements:
+        - interface:
+            node: interface#port_ext_interface
+            relationship: tosca.relationships.BelongsToOne
