diff --git a/xos-profiles/mcord-services/templates/_helpers.tpl b/xos-profiles/mcord-services/templates/_helpers.tpl
new file mode 100644
index 0000000..0bd8908
--- /dev/null
+++ b/xos-profiles/mcord-services/templates/_helpers.tpl
@@ -0,0 +1,47 @@
+{{/* vim: set filetype=mustache: */}}
+{{/*
+Copyright 2018-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.
+*/}}
+{{/*
+Expand the name of the chart.
+*/}}
+{{- define "mcord.name" -}}
+{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
+
+{{/*
+Create a default fully qualified app name.
+We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
+If release name contains chart name it will be used as a full name.
+*/}}
+{{- define "mcord.fullname" -}}
+{{- if .Values.fullnameOverride -}}
+{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
+{{- else -}}
+{{- $name := default .Chart.Name .Values.nameOverride -}}
+{{- if contains $name .Release.Name -}}
+{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
+{{- else -}}
+{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
+{{- end -}}
+{{- end -}}
+
+{{/*
+Create chart name and version as used by the chart label.
+*/}}
+{{- define "mcord.chart" -}}
+{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
diff --git a/xos-profiles/mcord-services/templates/_tosca.tpl b/xos-profiles/mcord-services/templates/_tosca.tpl
new file mode 100644
index 0000000..353a6cc
--- /dev/null
+++ b/xos-profiles/mcord-services/templates/_tosca.tpl
@@ -0,0 +1,294 @@
+{{/* vim: set filetype=mustache: */}}
+{{/*
+Copyright 2018-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.
+*/}}
+{{- define "mcord-services.onosFabricTosca" -}}
+tosca_definitions_version: tosca_simple_yaml_1_0
+description: Configures ONOS services
+
+imports:
+   - custom_types/onosapp.yaml
+   - custom_types/onosservice.yaml
+   - custom_types/serviceinstanceattribute.yaml
+
+topology_template:
+  node_templates:
+
+    service#onos:
+      type: tosca.nodes.ONOSService
+      properties:
+          name: onos
+          kind: data
+          rest_hostname: {{ .onosFabricRestService | quote }}
+          rest_port: 8181
+
+    onos_app#segmentrouting:
+      type: tosca.nodes.ONOSApp
+      properties:
+        name: org.onosproject.segmentrouting
+        app_id: org.onosproject.segmentrouting
+      requirements:
+        - owner:
+            node: service#onos
+            relationship: tosca.relationships.BelongsToOne
+
+    onos_app#netcfghostprovider:
+      type: tosca.nodes.ONOSApp
+      properties:
+        name: org.onosproject.netcfghostprovider
+        app_id: org.onosproject.netcfghostprovider
+      requirements:
+        - owner:
+            node: service#onos
+            relationship: tosca.relationships.BelongsToOne
+
+    onos_app#openflow:
+      type: tosca.nodes.ONOSApp
+      properties:
+        name: org.onosproject.openflow
+        app_id: org.onosproject.openflow
+      requirements:
+        - owner:
+            node: service#onos
+            relationship: tosca.relationships.BelongsToOne
+{{- end -}}
+
+{{- define "mcord-services.onosProgranTosca" -}}
+tosca_definitions_version: tosca_simple_yaml_1_0
+description: Configures ONOS services
+
+imports:
+   - custom_types/onosapp.yaml
+   - custom_types/onosservice.yaml
+   - custom_types/serviceinstanceattribute.yaml
+
+topology_template:
+  node_templates:
+
+    service#onos-progran:
+      type: tosca.nodes.ONOSService
+      properties:
+          name: onos-progran
+          kind: data
+          rest_hostname: {{ .onosProgranRestService | quote }}
+          rest_port: 8181
+
+    onos_app#progran:
+      type: tosca.nodes.ONOSApp
+      properties:
+        name: org.onosproject.progran
+        app_id: org.onosproject.progran
+      requirements:
+        - owner:
+            node: service#onos-progran
+            relationship: tosca.relationships.BelongsToOne
+{{- end -}}
+
+{{- define "mcord-services.serviceGraphTosca" -}}
+tosca_definitions_version: tosca_simple_yaml_1_0
+
+imports:
+   - custom_types/mcordsubscriberservice.yaml
+   - custom_types/servicegraphconstraint.yaml
+   - custom_types/servicedependency.yaml
+   - custom_types/service.yaml
+{{- if or .Values.fabric.enabled .Values.progran.enabled }}
+   - custom_types/onosservice.yaml
+{{- end }}
+{{- if .Values.fabric.enabled }}
+   - custom_types/fabricservice.yaml
+   - custom_types/vrouterservice.yaml
+{{- end }}
+{{- if .Values.progran.enabled }}
+   - custom_types/progranservice.yaml
+{{- end }}
+
+description: Configures the M-CORD service graph
+
+topology_template:
+  node_templates:
+    service#mcord:
+      type: tosca.nodes.MCordSubscriberService
+      properties:
+        name: mcord
+        must-exist: true
+
+    service#omec-cp:
+      type: tosca.nodes.Service
+      properties:
+        name: omec-cp
+
+    service#omec-up:
+      type: tosca.nodes.Service
+      properties:
+        name: omec-up
+
+    service#cdn-local:
+      type: tosca.nodes.Service
+      properties:
+        name: cdn-local
+
+    service#cdn-remote:
+      type: tosca.nodes.Service
+      properties:
+        name: cdn-remote
+
+{{- if .Values.fabric.enabled }}
+    service#onos:
+      type: tosca.nodes.ONOSService
+      properties:
+        name: onos
+        must-exist: true
+
+    service#fabric:
+      type: tosca.nodes.FabricService
+      properties:
+        name: fabric
+        must-exist: true
+
+    service#vrouter:
+      type: tosca.nodes.VRouterService
+      properties:
+        name: vrouter
+        must-exist: true
+{{- end }}
+
+{{- if .Values.progran.enabled }}
+    service#onos-progran:
+      type: tosca.nodes.ONOSService
+      properties:
+        name: onos-progran
+        must-exist: true
+
+    service#progran:
+      type: tosca.nodes.ProgranService
+      properties:
+        name: progran
+        must-exist: true
+{{- end }}
+
+    service_dependency#mcord_epc_cp:
+      type: tosca.nodes.ServiceDependency
+      properties:
+        connect_method: none
+      requirements:
+        - subscriber_service:
+            node: service#omec-cp
+            relationship: tosca.relationships.BelongsToOne
+        - provider_service:
+            node: service#mcord
+            relationship: tosca.relationships.BelongsToOne
+
+    service_dependency#mcord_epc_up:
+      type: tosca.nodes.ServiceDependency
+      properties:
+        connect_method: none
+      requirements:
+        - subscriber_service:
+            node: service#omec-up
+            relationship: tosca.relationships.BelongsToOne
+        - provider_service:
+            node: service#mcord
+            relationship: tosca.relationships.BelongsToOne
+
+    service_dependency#epc_cp_epc_up:
+      type: tosca.nodes.ServiceDependency
+      properties:
+        connect_method: none
+      requirements:
+        - subscriber_service:
+            node: service#omec-up
+            relationship: tosca.relationships.BelongsToOne
+        - provider_service:
+            node: service#omec-cp
+            relationship: tosca.relationships.BelongsToOne
+
+    service_dependency#cdn_remote_cdn_local:
+      type: tosca.nodes.ServiceDependency
+      properties:
+        connect_method: none
+      requirements:
+        - subscriber_service:
+            node: service#cdn-local
+            relationship: tosca.relationships.BelongsToOne
+        - provider_service:
+            node: service#cdn-remote
+            relationship: tosca.relationships.BelongsToOne
+
+{{- if .Values.fabric.enabled }}
+    service_dependency#fabric_vrouter:
+      type: tosca.nodes.ServiceDependency
+      properties:
+        connect_method: none
+      requirements:
+        - subscriber_service:
+            node: service#fabric
+            relationship: tosca.relationships.BelongsToOne
+        - provider_service:
+            node: service#onos
+            relationship: tosca.relationships.BelongsToOne
+
+    service_dependency#onos_fabric:
+      type: tosca.nodes.ServiceDependency
+      properties:
+        connect_method: none
+      requirements:
+        - subscriber_service:
+            node: service#vrouter
+            relationship: tosca.relationships.BelongsToOne
+        - provider_service:
+            node: service#fabric
+            relationship: tosca.relationships.BelongsToOne
+{{- end }}
+
+{{- if .Values.progran.enabled }}
+    service_dependency#mcord_progran:
+      type: tosca.nodes.ServiceDependency
+      properties:
+        connect_method: none
+      requirements:
+        - subscriber_service:
+            node: service#progran
+            relationship: tosca.relationships.BelongsToOne
+        - provider_service:
+            node: service#mcord
+            relationship: tosca.relationships.BelongsToOne
+
+    service_dependency#onos_progran:
+      type: tosca.nodes.ServiceDependency
+      properties:
+        connect_method: none
+      requirements:
+        - subscriber_service:
+            node: service#progran
+            relationship: tosca.relationships.BelongsToOne
+        - provider_service:
+            node: service#onos-progran
+            relationship: tosca.relationships.BelongsToOne
+{{- end }}
+
+    constraints:
+      type: tosca.nodes.ServiceGraphConstraint
+      properties:
+{{- if and .Values.fabric.enabled .Values.progran.enabled }}
+        constraints: '[ [null, "mcord", null, "fabric"], ["cdn-remote", "omec-cp", "progran", "vrouter"], ["cdn-local", "omec-up", "onos-progran", "onos"] ]'
+{{- else if and (not .Values.fabric.enabled) .Values.progran.enabled }}
+        constraints: '[ [null, null, "mcord", null], ["cdn-remote", "omec-cp", null, "progran"], ["cdn-local", "omec-up", null, "onos-progran"] ]'
+{{- else if and .Values.fabric.enabled (not .Values.progran.enabled) }}
+        constraints: '[ [null, "mcord", "fabric"], ["cdn-remote", "omec-cp", "vrouter"], ["cdn-local", "omec-up", "onos"] ]'
+{{- else }}
+        constraints: '[ [null, "mcord"], ["cdn-remote", "omec-cp"], ["cdn-local", "omec-up"] ]'
+{{- end }}
+{{- end -}}
diff --git a/xos-profiles/mcord-services/templates/tosca-configmap.yaml b/xos-profiles/mcord-services/templates/tosca-configmap.yaml
new file mode 100644
index 0000000..9c2b807
--- /dev/null
+++ b/xos-profiles/mcord-services/templates/tosca-configmap.yaml
@@ -0,0 +1,39 @@
+---
+
+# Copyright 2018-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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: mcord-tosca
+data:
+{{- if .Values.fabric.enabled }}
+  010-onos-fabric-service.yaml: |
+{{ include "mcord-services.onosFabricTosca" .Values | indent 4 }}
+  020-fabric-service.yaml: |
+{{ include "fabric.serviceTosca" .Values.fabric | indent 4 }}
+  030-vrouter-service.yaml: |
+{{ include "vrouter.serviceTosca" .Values.vrouter | indent 4 }}
+{{- end }}
+{{- if .Values.progran.enabled }}
+  040-onos-progran-service.yaml: |
+{{ include "mcord-services.onosProgranTosca" .Values | indent 4 }}
+  050-progran-service.yaml: |
+{{ include "progran.serviceTosca" .Values.progran | indent 4 }}
+{{- end }}
+  100-mcord-subscriber-service.yaml: |
+{{ include "mcord-subscriber.serviceTosca" (index .Values "mcord-subscriber") | indent 4 }}
+  300-service-graph.yaml: |
+{{ include "mcord-services.serviceGraphTosca" . | indent 4 }}
diff --git a/xos-profiles/mcord-services/templates/tosca-job.yaml b/xos-profiles/mcord-services/templates/tosca-job.yaml
new file mode 100644
index 0000000..5f72ce2
--- /dev/null
+++ b/xos-profiles/mcord-services/templates/tosca-job.yaml
@@ -0,0 +1,54 @@
+---
+
+# Copyright 2018-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.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+  name: {{ template "mcord.fullname" . }}-tosca-loader
+  labels:
+    app: {{ template "mcord.name" . }}
+    chart: {{ template "mcord.chart" . }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  template:
+    metadata:
+      labels:
+        app: {{ template "mcord.name" . }}
+        release: {{ .Release.Name }}
+      annotations:
+        checksum/config: {{ include (print $.Template.BasePath "/tosca-configmap.yaml") . | sha256sum }}
+    spec:
+      restartPolicy: OnFailure
+      containers:
+        - name: {{ .Chart.Name }}-tosca-loader
+          image: {{ .Values.global.registry }}{{ .Values.images.tosca_loader.repository }}:{{ tpl .Values.images.tosca_loader.tag . }}
+          imagePullPolicy: {{ .Values.images.tosca_loader.pullPolicy }}
+          env:
+            - name: XOS_USER
+              value: {{ .Values.xosAdminUser }}
+            - name: XOS_PASSWD
+              valueFrom:
+                secretKeyRef:
+                  name: xos-admin-passwd-secret
+                  key: password
+          volumeMounts:
+            - name: mcord-tosca
+              mountPath: /opt/tosca
+      volumes:
+        - name: mcord-tosca
+          configMap:
+            name: mcord-tosca
