Please check whether the following would be helpful from the AE team.
I am responsible for FMan (including ucode, driver and FMC tool)
MPLS is supported by Hard Header Examination Sequences (HXSs)
See details the following chapter in T1040 RM:
A.9.4.7.5 L2 HXS—MPLS
Table A-352. MPLS Label to Next HXS Mapping
Figure A-312. MPLS (RFC3032)
So MPLS is supported not only by KEYGEN but also by CC (Coarse Classification).
( Keygen is supported by HW and CC is implemented in firmware )
For details about support at FMC tool software level you should look in the HXS PDL definition file at the following location:
\fmc\etc\fmc\config\hxs_pdl_v3.xml
at mpls protocol definition you will find the following fields available: "label", "cos", "s", "ttl"
<protocol name="mpls" longname="Multi Protocol Label Switching" showsumtemplate="mpls">
<format>
<fields>
<!--
The CoS field is identified as Exp (Experimental Use) inside RFC 3032
-->
<field type="bit" name="label" longname="Label" mask="0xFFFFF000" size="4" showtemplate="FieldDec"/>
<field type="bit" name="cos" longname="Class of Service" mask="0x00000E00" size="4" showtemplate="FieldDec"/>
<field type="bit" name="s" longname="Bottom of Stack" mask="0x00000100" size="4" showtemplate="FieldDec"/>
<field type="bit" name="ttl" longname="Time To Live" mask="0x000000FF" size="4" showtemplate="FieldDec"/>
</fields>
</format>