Croway opened a new pull request, #27816:
URL: https://github.com/apache/camel/pull/27816

   Fixes https://issues.apache.org/jira/browse/CAMEL-25646
   
   camel-jbang-mcp returned no `instructions` in its MCP `initialize` response. 
Agent hosts read that field before the first tool call, and on the hosts that 
defer tool schemas (Claude Code, Codex, Pi) it is the only text of the server 
the model sees at session start. In an evaluation of coding agents on migration 
tasks, the waste that remained came from questions no tool answers and the 
agents went hunting for: `camel.server.port` under `camel run` needs 
`camel.server.enabled=true`, extra jars go in `--dep`, the mail Subject header 
is ignored unless `useHeaderSubject=true`, onException is a top-level entry and 
`handled` an expression, `smtp` not `mail`.
   
   - `McpServerInstructions`, an `InitialResponseInfo` bean: one summary line 
with the Camel version first (Pi shows only the first line, Codex weights the 
first 512 characters), then the rules in the order of what they cost in the 
evaluation, then a question-to-tool-name map. 2,138 characters, under Claude 
Code's 4,096 limit.
   - `quarkus.mcp.server.server-info.instructions` still overrides it: the bean 
steps aside when the property is set.
   - Test: size and first line, rule order, every `camel_*` name in the text is 
an `@Tool` method of this module and the mapped set is exactly the names in the 
text (a renamed tool fails the test), the override.
   - A "Server instructions" section in camel-jbang-mcp.adoc.
   
   Checked over stdio against the built runner jar: the initialize response 
carries the text, and the property replaces it.
   
   _Claude Code on behalf of Croway_
   


-- 
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]

Reply via email to