Enabling MPLS on IOS routers is quite forward. Assuming here LDP is the preferred protocol. On directly connected hosts this should be enough to enable MPLS:
conf t
!
mpls ip
mpls label protocol ldp
!
interface Gi0/0
ip 192.0.2.10 255.255.255.0
mpls ip
!
end
On not directly connected hosts following configuration is needed, if they should establish a neighborship.
conf t
!
mpls ldp discovery targeted-hello accept
!
exit
Verifying mpls ldp neighbourship
sh mpls ldp discovery
The output will reveal something like this:
Local LDP Identifier: 192.0.2.101:0 Discovery Sources: Interfaces: FastEthernet3/0 (ldp): xmit/recv LDP Id: 192.0.2.102:0 FastEthernet3/2 (ldp): xmit/recv LDP Id: 192.0.2.4:0; no route FastEthernet3/3 (ldp): xmit/recv LDP Id: 192.0.2.3:0; no route
This is all one need to know about enabling MPLS on IOS routers. Funny fact is MPLS is enabled per interface, and globally for functionality.