How to add glossiness on a cartoon shading?
A BSDF shader requires three parameters: normal, size and smooth. 

If the mix-shader doesn't produce the results you want you can still write your own shader using OSL.

shader Toon(
float diffuse_Fac = .5,
float glossy_Fac = .5,
color diffuse_color = .8,
color glossy_color = .8,
float diffuse_size = .5, 
float glossy_size = .5, 
float diffuse_smooth = 0, 
float glossy_smooth = 0, 
normal diffuse_normal = N,
normal glossy_normal = N,
output closure color BSDF = background()
)

{
BSDF = diffuse_Fac * diffuse_color * diffuse_toon(diffuse_normal, diffuse_size, diffuse_smooth)
     + glossy_Fac * glossy_color * glossy_toon(glossy_normal, glossy_size, glossy_smooth);
}


This one was adapted from this BA Thread where you also find pointers on this topic.

You only need to enable OSL in the render settings (this implies that it can't any longer be process by the GPU) and add a Script Node as shown in the image.



You could also try specular_toon() I wonder why this is not accessible from the Add Menu.