[ 
https://issues.apache.org/jira/browse/CAMEL-23749?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Aurélien Pupier updated CAMEL-23749:
------------------------------------
    Description: 
follow-up to https://github.com/apache/camel/pull/23980 which did the minimal 
upgrade

1. Tests still use deprecated McpSchema.JsonSchema API (Medium)

McpToolConverterTest.java (lines 37, 72, 91) and OpenAIProducerMcpMockTest.java 
(line 130) still construct McpSchema.JsonSchema objects via the deprecated 
Tool.builder().inputSchema(JsonSchema) shim. The production code was correctly 
updated to use Map<String, Object>, but the tests lag behind. Per the project's 
quality expectations ("Avoid usage of deprecated code"), these should be 
updated — acknowledged by @apupier in the commit message as a follow-up item.

2. Missing test assertion for required field (Low)

The convertFullSchema() test exercises the required parameter code path but 
only asserts parameters().isPresent() — it doesn't verify the required array 
appears in the converted output. Also noted by @apupier in the commit message.

3. HttpClientSseClientTransport deprecated upstream (Informational)

MCP SDK 2.0.0 deprecates SSE transports in favor of Streamable HTTP. The sse 
transport type path in OpenAIEndpoint.createMcpTransport() uses the deprecated 
class. The code already supports streamableHttp, so this is not blocking — just 
a note for a future cleanup pass.

  was:
1. Tests still use deprecated McpSchema.JsonSchema API (Medium)

McpToolConverterTest.java (lines 37, 72, 91) and OpenAIProducerMcpMockTest.java 
(line 130) still construct McpSchema.JsonSchema objects via the deprecated 
Tool.builder().inputSchema(JsonSchema) shim. The production code was correctly 
updated to use Map<String, Object>, but the tests lag behind. Per the project's 
quality expectations ("Avoid usage of deprecated code"), these should be 
updated — acknowledged by @apupier in the commit message as a follow-up item.

2. Missing test assertion for required field (Low)

The convertFullSchema() test exercises the required parameter code path but 
only asserts parameters().isPresent() — it doesn't verify the required array 
appears in the converted output. Also noted by @apupier in the commit message.

3. HttpClientSseClientTransport deprecated upstream (Informational)

MCP SDK 2.0.0 deprecates SSE transports in favor of Streamable HTTP. The sse 
transport type path in OpenAIEndpoint.createMcpTransport() uses the deprecated 
class. The code already supports streamableHttp, so this is not blocking — just 
a note for a future cleanup pass.


> Embrace MCP Java SDK new 2.0.0 API
> ----------------------------------
>
>                 Key: CAMEL-23749
>                 URL: https://issues.apache.org/jira/browse/CAMEL-23749
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-openai
>    Affects Versions: 4.20.0
>            Reporter: Aurélien Pupier
>            Priority: Minor
>
> follow-up to https://github.com/apache/camel/pull/23980 which did the minimal 
> upgrade
> 1. Tests still use deprecated McpSchema.JsonSchema API (Medium)
> McpToolConverterTest.java (lines 37, 72, 91) and 
> OpenAIProducerMcpMockTest.java (line 130) still construct 
> McpSchema.JsonSchema objects via the deprecated 
> Tool.builder().inputSchema(JsonSchema) shim. The production code was 
> correctly updated to use Map<String, Object>, but the tests lag behind. Per 
> the project's quality expectations ("Avoid usage of deprecated code"), these 
> should be updated — acknowledged by @apupier in the commit message as a 
> follow-up item.
> 2. Missing test assertion for required field (Low)
> The convertFullSchema() test exercises the required parameter code path but 
> only asserts parameters().isPresent() — it doesn't verify the required array 
> appears in the converted output. Also noted by @apupier in the commit message.
> 3. HttpClientSseClientTransport deprecated upstream (Informational)
> MCP SDK 2.0.0 deprecates SSE transports in favor of Streamable HTTP. The sse 
> transport type path in OpenAIEndpoint.createMcpTransport() uses the 
> deprecated class. The code already supports streamableHttp, so this is not 
> blocking — just a note for a future cleanup pass.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to