I've been playing around with a similar idea - using plain JSON as the message format, you can make a set of pipeable command line utilities for manipulating data from many web APIs.
A textual format needs parsing though at every stage in the pipeline. Thats why I think using an (optional, when supported) binary format is important.