This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 0624c536492a CAMEL-23639: Publish the Camel JBang MCP server as a
Claude Code plugin (#23613)
0624c536492a is described below
commit 0624c536492a9d2e86865d3121cef1eb64d2ffb4
Author: Karol Krawczyk <[email protected]>
AuthorDate: Sat May 30 08:20:40 2026 +0200
CAMEL-23639: Publish the Camel JBang MCP server as a Claude Code plugin
(#23613)
* CAMEL-23639: Publish the Camel JBang MCP server as a Claude Code plugin
Add a Claude Code plugin marketplace at the repository root so users can
install the Camel MCP server with two commands instead of editing
.mcp.json by hand:
claude plugin marketplace add apache/camel
claude plugin install camel-mcp@camel-marketplace
- .claude-plugin/marketplace.json defines the camel-marketplace marketplace
- plugins/camel-mcp ships the plugin manifest and a .mcp.json that launches
the server over STDIO via JBang (camel-jbang-mcp:4.20.0:runner)
- docs: new "Install as a plugin (recommended)" subsection in
camel-jbang-mcp.adoc; the manual .mcp.json setup is kept as an alternative
* CAMEL-23639: Use LATEST instead of pinning the camel-jbang-mcp version
Switch the plugin .mcp.json and the documentation examples to
org.apache.camel:camel-jbang-mcp:LATEST:runner. JBang resolves LATEST to the
newest release on Maven Central, so the version no longer needs a bump on
each
Camel release. Verified that jbang resolves LATEST and the MCP server starts
and lists its tools.
* CAMEL-23639: Broaden camel-mcp plugin keywords
Add java, spring-boot, and quarkus to the plugin keywords so the plugin is
discoverable for Camel's first-class runtimes, per review feedback.
---
.claude-plugin/marketplace.json | 16 +++++++++++
.../modules/ROOT/pages/camel-jbang-mcp.adoc | 32 +++++++++++++++++-----
plugins/camel-mcp/.claude-plugin/plugin.json | 24 ++++++++++++++++
plugins/camel-mcp/.mcp.json | 11 ++++++++
4 files changed, 76 insertions(+), 7 deletions(-)
diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json
new file mode 100644
index 000000000000..33194ec00088
--- /dev/null
+++ b/.claude-plugin/marketplace.json
@@ -0,0 +1,16 @@
+{
+ "name": "camel-marketplace",
+ "description": "Apache Camel plugins for Claude Code, including the Camel
MCP server.",
+ "owner": {
+ "name": "Apache Camel",
+ "email": "[email protected]",
+ "url": "https://camel.apache.org"
+ },
+ "plugins": [
+ {
+ "name": "camel-mcp",
+ "source": "./plugins/camel-mcp",
+ "description": "Apache Camel MCP server: exposes the Camel Catalog plus
specialized tools (catalog exploration, route and YAML DSL validation, security
hardening, error diagnosis, dependency check, OpenAPI contract-first
scaffolding, and version-to-version migration) to AI coding assistants over the
Model Context Protocol. Requires JBang on the PATH."
+ }
+ ]
+}
diff --git a/docs/user-manual/modules/ROOT/pages/camel-jbang-mcp.adoc
b/docs/user-manual/modules/ROOT/pages/camel-jbang-mcp.adoc
index 12be71119980..dcc9cdeeff0e 100644
--- a/docs/user-manual/modules/ROOT/pages/camel-jbang-mcp.adoc
+++ b/docs/user-manual/modules/ROOT/pages/camel-jbang-mcp.adoc
@@ -410,7 +410,25 @@ The MCP server requires https://www.jbang.dev/[JBang] to
be installed and availa
=== Claude Code
-Add the following to your project's `.mcp.json` (or `~/.claude/mcp.json` for
global configuration):
+==== Install as a plugin (recommended)
+
+Claude Code can install the Camel MCP server from the marketplace defined in
the `apache/camel`
+repository, so you do not have to edit any configuration file by hand. JBang
must still be installed
+and available on your PATH.
+
+[source,bash]
+----
+claude plugin marketplace add apache/camel
+claude plugin install camel-mcp@camel-marketplace
+----
+
+The first command registers the marketplace; the second installs the
`camel-mcp` plugin, which ships
+the MCP server configuration. The server is launched on demand over STDIO via
JBang.
+
+==== Manual configuration
+
+Alternatively, add the following to your project's `.mcp.json` (or
`~/.claude/mcp.json` for global
+configuration):
[source,json]
----
@@ -420,7 +438,7 @@ Add the following to your project's `.mcp.json` (or
`~/.claude/mcp.json` for glo
"command": "jbang",
"args": [
"-Dquarkus.log.level=WARN",
- "org.apache.camel:camel-jbang-mcp:4.18.0:runner"
+ "org.apache.camel:camel-jbang-mcp:LATEST:runner"
]
}
}
@@ -439,7 +457,7 @@ Add the server to your MCP configuration:
"command": "jbang",
"args": [
"-Dquarkus.log.level=WARN",
- "org.apache.camel:camel-jbang-mcp:4.18.0:runner"
+ "org.apache.camel:camel-jbang-mcp:LATEST:runner"
]
}
}
@@ -458,7 +476,7 @@ Configure MCP servers in your `.vscode/mcp.json` or in the
user settings:
"command": "jbang",
"args": [
"-Dquarkus.log.level=WARN",
- "org.apache.camel:camel-jbang-mcp:4.18.0:runner"
+ "org.apache.camel:camel-jbang-mcp:LATEST:runner"
]
}
}
@@ -478,7 +496,7 @@ Settings > Tools > AI Assistant > MCP Servers, or create an
`.junie/mcp.json` fi
"command": "jbang",
"args": [
"-Dquarkus.log.level=WARN",
- "org.apache.camel:camel-jbang-mcp:4.18.0:runner"
+ "org.apache.camel:camel-jbang-mcp:LATEST:runner"
]
}
}
@@ -491,7 +509,7 @@ Any MCP client that supports the STDIO transport can launch
the server directly:
[source,bash]
----
-jbang org.apache.camel:camel-jbang-mcp:4.18.0:runner
+jbang org.apache.camel:camel-jbang-mcp:LATEST:runner
----
=== HTTP/SSE Transport
@@ -500,7 +518,7 @@ To start the server with the HTTP/SSE transport enabled:
[source,bash]
----
-jbang -Dquarkus.http.host-enabled=true -Dquarkus.http.port=8080
org.apache.camel:camel-jbang-mcp:4.18.0:runner
+jbang -Dquarkus.http.host-enabled=true -Dquarkus.http.port=8080
org.apache.camel:camel-jbang-mcp:LATEST:runner
----
If you have built Camel locally, you can also run the uber-JAR directly:
diff --git a/plugins/camel-mcp/.claude-plugin/plugin.json
b/plugins/camel-mcp/.claude-plugin/plugin.json
new file mode 100644
index 000000000000..ca72ede6730e
--- /dev/null
+++ b/plugins/camel-mcp/.claude-plugin/plugin.json
@@ -0,0 +1,24 @@
+{
+ "name": "camel-mcp",
+ "version": "0.1.0",
+ "description": "Apache Camel MCP server for AI coding assistants. Launches
the Camel JBang MCP server (org.apache.camel:camel-jbang-mcp) over STDIO,
exposing the Camel Catalog and tools for catalog exploration, route and YAML
DSL validation, security hardening, error diagnosis, dependency check, OpenAPI
contract-first scaffolding, and migration. Requires JBang on the PATH.",
+ "author": {
+ "name": "Apache Camel",
+ "email": "[email protected]",
+ "url": "https://camel.apache.org"
+ },
+ "homepage": "https://camel.apache.org/manual/camel-jbang-mcp.html",
+ "repository": "https://github.com/apache/camel",
+ "license": "Apache-2.0",
+ "keywords": [
+ "camel",
+ "java",
+ "integration",
+ "mcp",
+ "model-context-protocol",
+ "jbang",
+ "spring-boot",
+ "quarkus",
+ "catalog"
+ ]
+}
diff --git a/plugins/camel-mcp/.mcp.json b/plugins/camel-mcp/.mcp.json
new file mode 100644
index 000000000000..000734c98492
--- /dev/null
+++ b/plugins/camel-mcp/.mcp.json
@@ -0,0 +1,11 @@
+{
+ "mcpServers": {
+ "camel": {
+ "command": "jbang",
+ "args": [
+ "-Dquarkus.log.level=WARN",
+ "org.apache.camel:camel-jbang-mcp:LATEST:runner"
+ ]
+ }
+ }
+}