diff --git a/tosca-configs/mcord/onf-demo-pod-fabric.yaml b/tosca-configs/mcord/onf-demo-pod-fabric.yaml
new file mode 100644
index 0000000..6aa4e32
--- /dev/null
+++ b/tosca-configs/mcord/onf-demo-pod-fabric.yaml
@@ -0,0 +1,270 @@
+# 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 @onf-mcord-pod1-fabric.yaml http://10.90.0.131: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/deployment.yaml
+  - custom_types/sitedeployment.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
+
+    myDeployment:
+      type: tosca.nodes.Deployment
+      properties:
+        name: mydeployment
+
+    site_deployment:
+      type: tosca.nodes.SiteDeployment
+      requirements:
+        - site:
+            node: mySite
+            relationship: tosca.relationships.BelongsToOne
+        - deployment:
+            node: myDeployment
+            relationship: tosca.relationships.BelongsToOne
+
+    # compute nodes
+    node#node1:
+        type: tosca.nodes.Node
+        properties:
+            dataPlaneIntf: eth2
+            dataPlaneIp: 118.0.0.201
+            name: node1
+        requirements:
+            - site_deployment:
+                node: site_deployment
+                relationship: tosca.relationships.BelongsToOne
+
+    node#node2:
+        type: tosca.nodes.Node
+        properties:
+            dataPlaneIntf: eth2
+            dataPlaneIp: 118.0.0.202
+            name: node2
+        requirements:
+            - site_deployment:
+                node: site_deployment
+                relationship: tosca.relationships.BelongsToOne
+
+    node#node3:
+        type: tosca.nodes.Node
+        properties:
+            dataPlaneIntf: eth2
+            dataPlaneIp: 118.0.0.203
+            name: node3
+        requirements:
+            - site_deployment:
+                node: site_deployment
+                relationship: tosca.relationships.BelongsToOne
+
+    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: 33
+      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_ip_1:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 13.1.1.0/24
+        description: node_1_ip_1
+      requirements:
+        - interface:
+            node: interface#port_1_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_1_ip_2:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 119.0.0.254/24
+        description: node_1_ip_2
+      requirements:
+        - interface:
+            node: interface#port_1_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_1_ip_3:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 116.0.0.254/24
+        description: node_1_ip_3
+      requirements:
+        - interface:
+            node: interface#port_1_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    # Node2 Port
+    port#node_2_port:
+      type: tosca.nodes.SwitchPort
+      properties:
+        portId: 34
+      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_ip_1:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 13.1.1.0/24
+        description: node_2_ip_1
+      requirements:
+        - interface:
+            node: interface#port_2_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_2_ip_2:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 119.0.0.254/24
+        description: node_2_ip_2
+      requirements:
+        - interface:
+            node: interface#port_2_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_2_ip_3:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 116.0.0.254/24
+        description: node_2_ip_3
+      requirements:
+        - interface:
+            node: interface#port_2_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    # Node3 Port
+    port#node_3_port:
+      type: tosca.nodes.SwitchPort
+      properties:
+        portId: 35
+      requirements:
+        - switch:
+            node: switch#leaf_1
+            relationship: tosca.relationships.BelongsToOne
+
+    interface#port_3_interface:
+      type: tosca.nodes.PortInterface
+      properties:
+        vlanUntagged: 20
+        name: node_3
+      requirements:
+        - port:
+            node: port#node_3_port
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_3_ip_1:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 13.1.1.0/24
+        description: node_3_ip_1
+      requirements:
+        - interface:
+            node: interface#port_3_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_3_ip_2:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 119.0.0.254/24
+        description: node_3_ip_2
+      requirements:
+        - interface:
+            node: interface#port_3_interface
+            relationship: tosca.relationships.BelongsToOne
+
+    ip#port_3_ip_3:
+      type: tosca.nodes.FabricIpAddress
+      properties:
+        ip: 116.0.0.254/24
+        description: node_3_ip_2
+      requirements:
+        - interface:
+            node: interface#port_3_interface
+            relationship: tosca.relationships.BelongsToOne
+
