During a design review, a developer argues that a tool's structuredContent field makes the language model generate its reply in a schema-constrained format. How does the MCP specification describe structuredContent?
Select an answer to reveal the explanation.
Short Explanation
Same word, different job. structuredContent is the data your server hands back from a tool, typed and validated against outputSchema. It has nothing to do with forcing an LLM to answer in JSON, which is the trap here.
Full Explanation
In MCP, structuredContent is a field in a tool result where the server returns a JSON value, optionally conforming to the tool's outputSchema. The specification adds a note that structuredContent is server-produced result data and is unrelated to LLM structured outputs, the provider feature that constrains model generation to a schema. The server computes the value by executing the tool; the model only reads it afterward, if the host passes it along. Describing it as the model's own reply reverses the direction of data flow, because tool results travel from server to client and the model does not author them. Calling it a host setting that toggles a provider mode invents a configuration role the field does not have; MCP deliberately does not dictate how hosts use their LLMs. Calling it a client capability that makes the server re-run a model is also unfounded, since structuredContent is not declared in capabilities and the server is not required to run a model at all. Exam caveat: when an outputSchema is declared, servers MUST return conforming structuredContent and clients SHOULD validate it, which is about data integrity, not model behavior. Operational check: inspect a tools/call result and confirm structuredContent appears in the server's response and validates against the tool's declared outputSchema.