Composition can be done through configuration files, but the editing of complex configuration files is error-prone... in effect, it becomes as complex as writing a small program.
A graphical editor can provide a set of simplified views of the components, and how they interact. It can reduce the number and type of components available as the user connects components to satisfy the needs of each component.
So, for example, if a Parser component needs an InputStream?, the tool can down-select all components of type InputStream? rather than listing all types of components. The composition tool can also select default connections automatically, reducing the need for user input.
Finally, a graphical editor can display type-specific edit screens for setting values specific to a component.