outputSchema
outputSchema is an optional JSON Schema describing the structured result a tool returns. It lets a client validate and parse a response instead of treating it as opaque text. It is genuinely optional, and only 5.6% of the 288 tools we read on 5 August 2026 carried one.
What is outputSchema?
outputSchema is the mirror of inputSchema: a JSON Schema describing the shape of what comes back when the tool is called, rather than what goes in.
When present, a client can validate the result and hand the model structured data. When absent, the result is whatever content the tool returned, typically text.
Why do so few tools have one?
Because it is optional and the default path works without it. A tool that returns prose has nothing useful to describe with a schema, and most tools return prose.
Across 288 tools from 14 servers on 5 August 2026, only 16 carried an outputSchema, which is 5.6%. It was the rarest field we measured apart from _meta at 2.4%.
Should you add one to your server?
Only when your tool genuinely returns structured data. A schema describing a blob of text adds nothing, and an inaccurate one is worse than none because a client may validate against it and reject a correct response.
Where it pays is a tool returning records: a client that knows the shape in advance can extract fields reliably instead of asking a model to parse them back out of a string.
Example
A tool returning a list of issues with an id, a title, and a status is a good candidate: the schema lets the client render a table directly. A documentation search tool returning matched prose is not, which is consistent with what we saw, since the documentation-oriented servers in our sample, including Microsoft Learn and Context7, returned tools with no outputSchema at all.