Claus Ibsen created CAMEL-25687:
-----------------------------------
Summary: camel-jbang - one name per shared AI tool in camel ask
and the MCP server
Key: CAMEL-25687
URL: https://issues.apache.org/jira/browse/CAMEL-25687
Project: Camel
Issue Type: Improvement
Components: camel-jbang, camel-jbang-mcp
Reporter: Claus Ibsen
Fix For: 4.24.0
The runtime tools of the shared registry ({{ToolRegistry}} in camel-jbang-core)
reach models under two names. The Camel MCP server serves them as
{{camel_runtime_...}} tools that call the registry by its own names, 36 such
tools: {{camel_runtime_routes}} calls {{get_routes}}, for example. {{camel
ask}} shows the registry names themselves. The tool group guidance is written
with the MCP names, so {{camel ask}} translates it ({{AskTools.GROUP_TOOLS}},
CAMEL-25676). Prompts, hints and benchmark results for one client do not carry
over to the other, and a model that picks a tool by its name (CAMEL-25639)
meets two names for one tool.
h3. Proposal
* One public name per shared tool: the registry tools take the names the MCP
server serves, with the same description and arguments, and the MCP server's
tool methods take their descriptions from the registry. The MCP server's tool
names stay, so its clients see no change; {{camel ask}} shows the same tools as
the MCP server.
* Delete the ten registry tools that the {{camel_...}} tools replaced:
{{get_errors}}, {{eval_expression}} and the eight {{catalog_...}} tools
({{catalog_components}}, {{catalog_component_doc}} and the like). Since
CAMEL-25676 no client serves them.
* The six registry tools that only {{camel ask}} serves use their shared
counterparts:
** {{list_processes}} and {{select_process}}: {{camel_runtime_processes}}; the
MCP server passes a process name with each call, {{camel ask}} keeps its
selection
** {{stop_application}}: {{camel_control}} with stop
** {{write_heap_dump}}: the heap dump tool of the MCP server
** {{list_examples}} and {{get_example_file}}: {{camel_catalog_examples}} and
{{camel_catalog_example_file}}
* The {{GROUP_TOOLS}} translation in {{AskTools}} goes away.
Do it with or after CAMEL-25639, which consolidates the MCP server's tools and
their arguments: the shared names are the ones it settles on. The core and full
subsets that {{camel ask}} gives a local and a hosted model (CAMEL-25676) can
then line up with the tool profiles of CAMEL-25537.
Counts on main (Oct 15 2026): the registry has 68 tools (16 {{camel_...}}, 52
others); the MCP server 85 (16 {{camel_...}}, 36 {{camel_runtime_...}} over the
registry, 33 of its own); {{camel ask}} serves 25 tools to a local model and 61
to a hosted one since CAMEL-25676.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)