reportProgress

suspend fun reportProgress(progress: Double, total: Double? = null, message: String? = null)

Report progress from inside McpTool.execute. Over MCP this becomes a notifications/progress message when the client asked for progress (it sent a progressToken); in-process callers receive it through the onProgress overload of DroidMcp.callTool. Otherwise it does nothing, so tools can call it unconditionally.