Reads a tool's annotations value. Lenient on purpose: a server's annotations are advisory, so a missing value, a value that is not an object, an unknown key, or a hint of the wrong type is ignored (that field is None) rather than failing the whole tool list.
Reads a tool's annotations value. Lenient on purpose: a server's annotations are advisory, so a missing value, a value that is not an object, an unknown key, or a hint of the wrong type is ignored (that field is None) rather than failing the whole tool list.