File tree Expand file tree Collapse file tree 2 files changed +23
-1
lines changed
core/src/main/java/com/google/adk/tools/mcp Expand file tree Collapse file tree 2 files changed +23
-1
lines changed Original file line number Diff line number Diff line change 3737public class McpSessionManager {
3838
3939 private final Object connectionParams ; // ServerParameters or SseServerParameters
40+ private final McpTransportBuilder transportBuilder ;
4041 private static final Logger logger = LoggerFactory .getLogger (McpSessionManager .class );
4142
4243 public McpSessionManager (Object connectionParams ) {
44+ this (connectionParams , new DefaultMcpTransportBuilder ());
45+ }
46+
47+ public McpSessionManager (Object connectionParams , McpTransportBuilder transportBuilder ) {
4348 this .connectionParams = connectionParams ;
49+ this .transportBuilder = transportBuilder ;
4450 }
4551
4652 public McpSyncClient createSession () {
47- return initializeSession (this .connectionParams );
53+ return initializeSession (this .connectionParams , this . transportBuilder );
4854 }
4955
5056 public static McpSyncClient initializeSession (Object connectionParams ) {
Original file line number Diff line number Diff line change @@ -149,6 +149,22 @@ public McpToolset(ServerParameters connectionParams) {
149149 this (connectionParams , JsonBaseModel .getMapper (), Optional .empty ());
150150 }
151151
152+ /**
153+ * Initializes the McpToolset with an McpSessionManager.
154+ *
155+ * @param mcpSessionManager A McpSessionManager instance for testing.
156+ * @param objectMapper An ObjectMapper instance for parsing schemas.
157+ * @param toolFilter An Optional containing either a ToolPredicate or a List of tool names.
158+ */
159+ public McpToolset (
160+ McpSessionManager mcpSessionManager , ObjectMapper objectMapper , Optional <Object > toolFilter ) {
161+ Objects .requireNonNull (mcpSessionManager );
162+ Objects .requireNonNull (objectMapper );
163+ this .mcpSessionManager = mcpSessionManager ;
164+ this .objectMapper = objectMapper ;
165+ this .toolFilter = toolFilter ;
166+ }
167+
152168 @ Override
153169 public Flowable <BaseTool > getTools (ReadonlyContext readonlyContext ) {
154170 return Flowable .fromCallable (
You can’t perform that action at this time.
0 commit comments