Issue
Tool Call Contract Mismatch
The AI or agent calls a tool with names, arguments, types, modes, or shapes that do not match the declared tool interface.
What This Looks Like
The AI or agent tries to call a tool, function, MCP endpoint, connector, or integration with a name, argument, mode, type, or payload shape that does not match the declared interface. The tool may reject the call, run with missing data, return an error, or behave differently than the user expected.
Why It Matters
Tool calls are boundary crossings. When the call does not match the tool contract, the failure can block execution, corrupt downstream state, hide the real cause behind a generic error, or make the agent appear less capable than it is. The problem may sit between the AI output and the tool interface, not inside either one alone.
Structural Signal
A declared tool interface exists, but the observed call does not conform to that interface. The issue is not simply that the tool failed; it is that the AI-generated call and the tool’s declared contract do not line up.
Common Triggers
- Tool names, argument names, or enum values are similar but not identical
- Required arguments are omitted or placed in the wrong structure
- The model uses a tool schema from a different version, mode, or runtime
- Prompt instructions describe the tool differently than the actual interface
- The agent chooses a tool before it has enough input to call it correctly
- The tool accepts structured input but the AI returns a human-readable approximation
When to Use This Issue
Use this Issue when the central failure is a mismatch between the tool call produced by the AI or agent and the declared tool, function, connector, or MCP interface.
When Not to Use This Issue
Do not use this Issue when the tool contract is correct but the tool itself is unavailable, disabled, or unsupported in the current environment. Do not use it when the output is invalid JSON but no tool interface is involved.
Category
Primary Pattern
Declared Patterns
Interface Mismatch
A structural condition where observed interface behavior, shape, or exchange differs from the declared interface contract.
Schema Breakage
A structural condition where an instance, graph, payload, or object violates the type, shape, or rule requirements of a declared schema.
Compatibility Violation
A structural condition where a graph, object, behavior, or runtime state exceeds a declared compatibility envelope without an authorized exception.
Derived Primary Lenses
Compatibility Envelope Lens
Determines whether structure fits within declared runtime, platform, version, or support constraints.
Interface Contract Lens
Compares declared interface structure to observed runtime structure to detect contract deviations.
Invariant Lens
Verifies that declared invariants are structurally enforceable and not contradicted by observed structure.
Derived Secondary Lenses
Boundary Compliance Lens
Evaluates observed structure against declared boundary posture, including allow, block, and exception rules.
Conflict Lens
Detects mutually incompatible constraints, claims, states, or declarations that cannot be simultaneously satisfied.
Normalization Lens
Transforms structurally equivalent variants into a canonical form to prevent false divergence.
Related AI-Adjacent Issues
Agent Uses Old Tool Schema
An agent, prompt, workflow, or integration continues using an older tool schema after the tool contract has changed.
Documented Field Not Available at Runtime
A documented field, option, parameter, property, or capability is expected by the user or agent but is not available in the actual runtime.
Runtime Behavior Does Not Match Docs
Documented behavior, fields, tool schemas, permissions, or runtime capabilities do not match what actually happens during use.
Tool Not Supported in This Mode
A tool or capability appears unavailable in the current mode, environment, product surface, or runtime context.
Search Intents
- AI tool call wrong arguments
- tool call contract mismatch
- function call invalid arguments
- AI called tool with wrong schema
- agent used wrong tool parameters
- tool choice is underspecified