New Features (2026-06-19) — MCP Structured Tool Output
The MCP server now supports the 2025-06-18 structured tool output spec
feature: a tool may declare an outputSchema, and its dict result is
returned as structuredContent in the tools/call response (alongside
the usual text content). MCP clients and LLMs can then consume a typed,
schema-validated object instead of re-parsing text — saving tokens and
errors. Pure standard library; an MCP-framework enhancement (no new
AC_* command).
Declaring an output schema
from je_auto_control.utils.mcp_server.tools import MCPTool
MCPTool(
name="ac_validate_rows", description="...",
input_schema=..., handler=validate_rows,
output_schema={"type": "object", "properties": {
"ok": {"type": "boolean"}, "errors": {"type": "array"}}},
)
to_descriptor() then includes outputSchema in tools/list, and a
tools/call whose handler returns a dict includes
structuredContent in the result. Tools without an outputSchema are
unchanged; non-dict results never produce structuredContent.
The first built-in tool to adopt this is ac_validate_rows (data-quality
validation), whose {ok, total, valid_count, invalid_count, errors, ...}
result is now schema-typed; more tools can opt in by adding an
output_schema.