[
https://issues.apache.org/jira/browse/CAMEL-24712?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18115759#comment-18115759
]
Claus Ibsen commented on CAMEL-24712:
-------------------------------------
Analysis before the removal (Claus, 2026-09-15). The shared tools do not cover
three of the older ones yet, so the same PR closes the gaps first:
* camel_catalog_eips -> camel_catalog_find: find has no eip kind and
camel_catalog_doc kind=eip needs the exact name, so the alias search of
CAMEL-23833 (fan-out, dedup, rate-limit) would go. The 30 EIP models carry the
aliases and CatalogTermMatcher already ranks them, it is only wired to
components, data formats and languages. Add suggestEipNames to CamelCatalog,
eip to camel_catalog_find, and let camel_catalog_doc fall back to the best
alias match when the name is not an EIP.
* camel_catalog_component_doc includeHeaders (CAMEL-23793): camel_catalog_doc
does not return the message header metadata. Add includeHeaders to
camel_catalog_doc, and the version field camel_catalog_component_maven returned.
* runtime and platformBom (spring-boot, quarkus catalogs): the shared tools
stay on the main catalog. The core Camel catalog is what the MCP is used for;
whether Spring Boot and Quarkus specifics are needed can be looked at later.
The camel_build_integration prompt keeps its runtime argument for the framing
and camel_version_list, and drops runtime from the catalog steps.
The 14 tools are in CatalogTools (9), TransformTools (camel_validate_route,
camel_validate_yaml_dsl) and RuntimeTools (camel_runtime_eval,
camel_runtime_errors, camel_runtime_stop). Nothing outside camel-jbang-mcp
names them (TUI, ACP, security layer are clean); references to rewrite are the
cross-references in CatalogTools, four lines of PromptDefinitions, the tests,
the camel-jbang-mcp page and an old-to-new mapping in the 4.23 upgrade guide.
CatalogService stays for the kept tools.
> camel-jbang-mcp - retire the catalog and validation tools the shared
> authoring tools replace (deprecate, then remove)
> ---------------------------------------------------------------------------------------------------------------------
>
> Key: CAMEL-24712
> URL: https://issues.apache.org/jira/browse/CAMEL-24712
> Project: Camel
> Issue Type: Improvement
> Components: camel-jbang
> Reporter: Claus Ibsen
> Priority: Major
>
> camel mcp exposes 83 tools. Since CAMEL-24695 the shared authoring tools
> (camel_catalog_doc, camel_catalog_find, camel_validate_source,
> camel_eval_expression, camel_get_errors, camel_control, ...) answer the
> questions a number of older per-kind tools were written for, so a client now
> has two near-identical tools for the same question. For a model that is pure
> cost: more schema to read (about 12,000 characters, a fifth of the set), and
> the choice between two similar tools is where small models pick the weaker
> one (in the CAMEL-24698 benchmark the model chose the schema-only
> camel_validate_yaml_dsl over camel_validate_source and was told a broken
> route was valid, until the schema tool got the catalog checks in PR 26378).
> Older tool -> covered by:
> * camel_catalog_component_doc, camel_catalog_dataformat_doc,
> camel_catalog_language_doc, camel_catalog_eip_doc -> camel_catalog_doc with
> the kind (optionsFilter, includeOptions, includeDoc)
> * camel_catalog_component_maven -> camel_catalog_doc returns the Maven
> coordinates
> * camel_catalog_components, camel_catalog_dataformats,
> camel_catalog_languages, camel_catalog_eips -> camel_catalog_find (name,
> title, label, best match first)
> * camel_validate_yaml_dsl, camel_validate_route -> camel_validate_source
> (schema plus the catalog checks); the endpoint URI check is camel_catalog_doc
> endpoint=
> * camel_runtime_eval -> camel_eval_expression
> * camel_runtime_errors -> camel_get_errors
> * camel_runtime_stop -> camel_control action=stop
> Keep: camel_catalog_docs, camel_catalog_examples and
> camel_catalog_example_file, the kamelet tools, camel_version_list,
> camel_component_properties (the camel.component.* keys, a different
> question), the runtime, migration, security and scaffold groups.
> Proposed: one release with the older tools still present and "Deprecated: use
> camel_catalog_doc ..." at the start of their descriptions (and the prompts in
> PromptDefinitions pointing to the shared tools), then removal. Check first
> whether Kaoto or another client calls the older names; removing a tool is a
> breaking change for MCP clients.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)