GraphQlTransport returns ExecutionResult with parsed JSON so for the most part having MappingProvider is enough. However, when a JSONPath evaluates to String (vs Map or List), the JsonSmartJsonProvider used by default, throws UnsupportedOperationException from toJson.