X_MCP_TOOL_UNDECLARED
Means
defineAppMcp lists a primitive that declares no MCP exposure
Typical cause
an action or query named in actions:/queries: with no mcp block, or mcp: { expose: false }
Fix
add mcp: { expose: true, description } beside the primitive's policy — or drop it from the list and let include: 'exposed' project what opted in