diff --git a/test/agent/src/utils.h b/test/agent/src/utils.h
index f74c12ff8134a1d03999901e1b9f1282474f989a..e0b1869e3796366ab7822f5fcc2cf97348296ea3 100644
--- a/test/agent/src/utils.h
+++ b/test/agent/src/utils.h
@@ -138,6 +138,13 @@ struct from_guile
         return scm_to_bool(value);
     }
 
+    operator uint8_t()
+    {
+        ensure_type("uint8", [](SCM v){ return scm_is_unsigned_integer(v, 0, 255); });
+
+        return scm_to_int(value);
+    }
+
     operator int()
     {
         ensure_type("integer", scm_is_integer);