Croway opened a new pull request, #8967: URL: https://github.com/apache/camel-quarkus/pull/8967
JIRA: [CAMEL-24369](https://issues.apache.org/jira/browse/CAMEL-24369) — companion PRs: apache/camel#25404, apache/camel-spring-boot#1881. Two engine gaps found by running the same ai-tool + mcp-server application on Camel Main, Spring Boot and Quarkus: 1. **argSchema tools advertised an empty inputSchema.** `QuarkusMcpServerEngine` rebuilt the schema from the flat `addArgument` calls, so a tool defined with a nested `argSchema` was exposed as `{"type":"object","properties":{},"required":[]}` — an MCP client/LLM could not know what arguments to send (flat parameters also lost `enum` constraints). The engine now publishes the bridge's pre-built JSON Schema via `ToolDefinition.setInputSchema(new JsonObject(inputSchemaJson))`, which quarkiverse serves verbatim in `tools/list`. 2. **MCP tool annotation hints were dropped.** `title`, `readOnlyHint`, `destructiveHint`, `idempotentHint`, `openWorldHint` are now mapped via `setTitle`/`setAnnotations`, matching the Vert.x and Spring AI engines. The quarkiverse annotations record uses primitive booleans, so unset hints are published with the MCP specification's client-side defaults; when no hint is set at all, no annotations are published. Three new conformance scenarios in `integration-tests/mcp-server` (annotations, argSchema in `tools/list`, argSchema execution with nested Map/List arguments); full module suite passes (9 tests), and the argSchema classpath resource is registered for native mode. --- _Claude Code on behalf of Croway (Federico Mariani)_ 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
