diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm
index 7e0101b891e..d01f8fd856b 100644
--- a/code/game/mecha/mecha.dm
+++ b/code/game/mecha/mecha.dm
@@ -840,6 +840,9 @@
if(repairing)
to_chat(user, "[src] is currently being repaired!")
return
+ if(state == 0) // If maint protocols are not active, the state is zero
+ to_chat(user, "[src] can not be repaired without maintenance protocols active!")
+ return
WELDER_ATTEMPT_REPAIR_MESSAGE
repairing = TRUE
if(I.use_tool(src, user, 15, volume = I.tool_volume))