Ultimate

X_AGENT_TOOL_UNEXPOSED

Means

an agent lists a tool that is neither in-process nor an MCP-exposed action

Typical cause

an agent({ tools }) entry that is an action declaring no mcp block, or mcp: { expose: false }, and is not an inProcessTool(). Refused at declaration rather than filtered at the call, because a silently dropped tool is the worst of both: the declaration reads as if the model can call it, and the model is never offered it

Fix

inProcessTool({ name, description, input, execute }) for a tool only this agent may call; or add mcp: { expose: true } to the action to offer it to MCP clients too; or drop it from the agent's tools

Listed under MCP and AI

This page as markdown