Docs/mintlify native llms stack base - #888
Conversation
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Automations to automatically generate PRs for you. |
all-hands-bot
left a comment
There was a problem hiding this comment.
Approved. The net change on this branch over main is exactly the intended MCP architecture correction (from #816) — docs.json (+1 nav entry) and sdk/arch/mcp.mdx (+48/−90) — so merging this lands #816's content on main. The two earlier docs/mintlify-native-llms-stack-base commits are content-identical to main (both already merged via #815) and add nothing.
Verified against software-agent-sdk at bd5fff0:
MCPToolActionis a thin wrapper holding adatadict;to_mcp_arguments()returnsself.data. The dynamic Pydantic validation model is created inmcp/tool.py(_create_mcp_action_type→Schema.from_mcp_schema) and used in bothaction_from_arguments()and__call__. The correctedMCPToolDefinitionlink (definition.py → tool.py) is right.action_from_arguments()validates the raw args, dropsNonevalues andDiscriminatedUnionMixininternal fields (kind), and stores the sanitized dict indata; the definition re-validatesaction.databefore execution. The page describes this correctly.MCPClientextends FastMCP'sClient; tools share one connected client, with no connection pool — "Connection Reuse" is accurate.MCPToolObservation.from_call_tool_result()mapsTextContent/ImageContentand logs-and-skips everything else, including resources — matches the new "convert text and image blocks; log and skip unsupported blocks" wording.ToolAnnotationsdefinestitle,readOnlyHint,destructiveHint,idempotentHint,openWorldHint;progressEnabledis not defined anywhere in the SDK — correctly removed.readOnlyHintsuppresses thesecurity_riskprediction field in the LLM-facing schema, while confirmation is governed by the configured policy (AlwaysConfirm/NeverConfirm/ConfirmRisky). The hints-vs-enforcement distinction is correct.
Mechanical checks: docs.json parses and the new sdk/arch/mcp entry sits under SDK Architecture → SDK Components; the internal /sdk/arch/security link resolves (200); the Mintlify preview deployment and link checks pass.
One non-blocking note: this is still a draft. Once you mark it ready, retarget/close the follow-up #817 (it currently stacks on this branch) so it rebases onto main after this merges.
This review was posted by an AI agent (OpenHands) on behalf of the reviewer.
The MCP architecture page contains useful material but described an old action model and overstated result and annotation support. This stack base corrects it and includes the page in Mintlify's navigation and generated LLM index.
Changes
docs.json.MCPToolAction.datawrapper.Stack order
#815 → this PR (stack base) → #817. #816 was squash-merged into this base branch rather than
main, so this PR is what lands #816's content onmain; the other two commits on the branch are already onmainvia #815. The net diff againstmainis exactlydocs.jsonandsdk/arch/mcp.mdx. GitHub's native stacks do not support cross-fork PRs, so #815 itself could not join the native stack. Merge this, then rebase/retarget #817 ontomain.Source verification
Validation
docs.jsonparses and the newsdk/arch/mcpentry resolves to the existing page./sdk/arch/security) resolve.Note
Kept as draft until the stack dependency is resolved. After #815 landed on
main, this base branch was synced withmain; retarget/close the follow-up #817 ontomainafter this merges.Description written by an AI agent (OpenHands) on behalf of the author.