Well STREAMS does include an API. Surely they'd be in scope for standardization if the concept was adopted widely, used by portable applications etc.
The lore from the mouths of Linux hackers is that STREAMS was dead by 1994, and only remained in existence for backwards compatibility. (Of the API).
https://lkml.org/lkml/1998/6/28/138
It was originally designed to cover networking as well (cite: Wikipedia). Apparently it was an obstacle to networking performance back in the days of 100M/1G servers... nowadays we have 10G+...
People say Linux networking is still slow (trying to push userspace bypasses like DPDK). So I'm glad we have a network stack that isn't forced into the STREAMS model.
I'm not familiar with STREAMS but the other half of the original design was terminal IO. At least w.r.t. Linux, you could say that's kind of old, we have an interface that does what we need, and coding extra features is just going to cause unnecessary breakages to deal with. You can already switch the intermediate processing with line disciplines, albeit this appears to divert data to another subsystem rather than providing a swappable filter. E.g. one of the disciplines (PPP) creates a network interface - which is completely different from a device node. Even when the result is a device node, it seems pretty clean to announce it as a new device of a given type to the udev hotplug device manager. E.g. applying the serial mouse discipline will create a new input device, which will be picked up by X through the exact same mechanism as plugging a USB mouse.