Guillaume Nodet created CAMEL-23873:
---------------------------------------
Summary: camel-jbang - Introduce shared ToolRegistry for AI tools
Key: CAMEL-23873
URL: https://issues.apache.org/jira/browse/CAMEL-23873
Project: Camel
Issue Type: Improvement
Components: camel-jbang
Reporter: Guillaume Nodet
Fix For: 4.21.0
Introduce a shared ToolRegistry in camel-jbang-core that serves as the single
source of truth for AI tool definitions and execution logic, eliminating
duplication between the MCP server and Agent REPL.
*Changes:*
* New {{ToolRegistry}} class in camel-jbang-core with 50 shared tool
descriptors covering: process discovery, runtime status, runtime actions,
DevConsole data, analysis tools, catalog tools, and examples
* New {{ToolDescriptor}} builder-style descriptor bundling tool metadata and
execution lambda
* New {{ToolContext}} shared execution context wrapping RuntimeHelper +
CamelCatalog (no MCP/Quarkus dependency)
* Refactored {{AskTools}} (Agent REPL) to delegate to ToolRegistry for all
shared tools (995 to 478 lines)
* Refactored {{RuntimeTools}} (MCP server) to delegate to ToolRegistry via thin
MCP wrappers
* New DevConsole tools: circuit breakers, startup steps, datasources, spans,
metrics
* New analysis tools: route analysis with anti-pattern hints, EIP stats, config
drift detection
* New MCP prompts: {{camel_diagnose_route}} (7-step diagnosis workflow),
{{camel_optimize_route}} (6-step optimization workflow)
*Benefits:*
* New tools automatically appear in both MCP server and Agent REPL
* Tool logic changes only need to happen in one place
* Clear separation: ToolRegistry owns tool logic, MCP/REPL own protocol concerns
--
This message was sent by Atlassian Jira
(v8.20.10#820010)