diff --git a/scripts/extra-properties.py b/scripts/extra-properties.py
new file mode 100755
index 0000000..0baa3e0
--- /dev/null
+++ b/scripts/extra-properties.py
@@ -0,0 +1,34 @@
+#!/usr/bin/env python
+
+import os
+import yaml
+from mako.template import Template
+import argparse
+
+
+def main():
+    parser = argparse.ArgumentParser(
+        description="IPMI FRU VPD parser and code generator")
+
+    parser.add_argument(
+        '-e', '--extra_props_yaml',
+        dest='extra_props_yaml',
+        default='extra-properties-example.yaml',
+        help='input extra properties yaml file to parse')
+    args = parser.parse_args()
+
+    with open(os.path.join(script_dir, args.extra_props_yaml), 'r') as fd:
+        yamlDict = yaml.safe_load(fd)
+
+        # Render the mako template
+        template = os.path.join(script_dir, 'extra-properties.mako.cpp')
+        t = Template(filename=template)
+        with open('extra-properties-gen.cpp', 'w') as fd:
+            fd.write(
+                t.render(
+                    dict=yamlDict))
+
+
+if __name__ == '__main__':
+    script_dir = os.path.dirname(os.path.realpath(__file__))
+    main()
