diff --git a/src/main/java/no/nibio/vips/logic/VIPSLogicApplication.java b/src/main/java/no/nibio/vips/logic/VIPSLogicApplication.java
index 9eb180af0bf10e819b187588ef890a03077c7bbf..75ee548ed2488a772afc85f2fbe1f5babfeb9659 100755
--- a/src/main/java/no/nibio/vips/logic/VIPSLogicApplication.java
+++ b/src/main/java/no/nibio/vips/logic/VIPSLogicApplication.java
@@ -58,6 +58,7 @@ public class VIPSLogicApplication extends Application
         resources.add(no.nibio.vips.logic.service.ObservationTimeSeriesService.class);
         resources.add(no.nibio.vips.logic.service.ModelFormService.class);
         resources.add(no.nibio.vips.logic.service.JacksonConfig.class);
+        resources.add(no.nibio.vips.logic.entity.helpers.KmlMessageBodyWriter.class);
         //resources.add(no.nibio.vips.logic.service.JSONBConfig.class);
         //resources.add(no.nibio.vips.coremanager.service.ManagerResourceImpl.class);
     }
diff --git a/src/main/java/no/nibio/vips/logic/entity/helpers/KmlMessageBodyWriter.java b/src/main/java/no/nibio/vips/logic/entity/helpers/KmlMessageBodyWriter.java
new file mode 100644
index 0000000000000000000000000000000000000000..1c94212d6aae477392ccdbb8554c866c01eea8ad
--- /dev/null
+++ b/src/main/java/no/nibio/vips/logic/entity/helpers/KmlMessageBodyWriter.java
@@ -0,0 +1,32 @@
+package no.nibio.vips.logic.entity.helpers;
+
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.ext.Provider;
+import jakarta.ws.rs.ext.MessageBodyWriter;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MultivaluedMap;
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Type;
+import java.io.OutputStream;
+import java.io.IOException;
+import de.micromata.opengis.kml.v_2_2_0.Kml;
+
+@Provider
+@Produces("application/vnd.google-earth.kml+xml")
+public class KmlMessageBodyWriter implements MessageBodyWriter<Kml> {
+
+    @Override
+    public boolean isWriteable(Class<?> type, Type genericType, 
+                               Annotation[] annotations, MediaType mediaType) {
+        return Kml.class.isAssignableFrom(type);
+    }
+
+    @Override
+    public void writeTo(Kml kml, Class<?> type, Type genericType, Annotation[] annotations, 
+                        MediaType mediaType, MultivaluedMap<String, Object> httpHeaders, 
+                        OutputStream entityStream) throws IOException {
+        kml.marshal(entityStream);
+    }
+
+    // Implement other MessageBodyWriter methods as needed
+}