diff --git a/a2a/pom.xml b/a2a/pom.xml
index 2cc0420b9..a57b3c9ac 100644
--- a/a2a/pom.xml
+++ b/a2a/pom.xml
@@ -56,6 +56,11 @@
jackson-databind
${jackson.version}
+
+ com.fasterxml.jackson.module
+ jackson-module-parameter-names
+ ${jackson.version}
+
io.reactivex.rxjava3
rxjava
diff --git a/a2a/src/main/java/com/google/adk/a2a/A2AClient.java b/a2a/src/main/java/com/google/adk/a2a/A2AClient.java
index 2e382006e..cf0b43dfe 100644
--- a/a2a/src/main/java/com/google/adk/a2a/A2AClient.java
+++ b/a2a/src/main/java/com/google/adk/a2a/A2AClient.java
@@ -1,7 +1,10 @@
package com.google.adk.a2a;
+import com.fasterxml.jackson.annotation.JsonAutoDetect;
+import com.fasterxml.jackson.annotation.PropertyAccessor;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.json.JsonMapper;
import com.google.common.base.Preconditions;
import io.a2a.client.http.A2AHttpClient;
import io.a2a.client.http.A2AHttpResponse;
@@ -39,7 +42,11 @@ public A2AClient(
AgentCard agentCard, A2AHttpClient httpClient, Map defaultHeaders) {
this.agentCard = Preconditions.checkNotNull(agentCard, "agentCard");
this.httpClient = Preconditions.checkNotNull(httpClient, "httpClient");
- this.objectMapper = new ObjectMapper();
+ this.objectMapper =
+ JsonMapper.builder()
+ .findAndAddModules()
+ .visibility(PropertyAccessor.FIELD, JsonAutoDetect.Visibility.ANY)
+ .build();
this.defaultHeaders = defaultHeaders == null ? Map.of() : Map.copyOf(defaultHeaders);
}