This is an automated email from the ASF dual-hosted git repository.
asf-gitbox-commits pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cayenne.git
The following commit(s) were added to refs/heads/master by this push:
new acdbbfe70 CAY-2989 Upgrade mcp lib to 2.0.0
acdbbfe70 is described below
commit acdbbfe707353bf584367355f4b06bbafd704b77
Author: Andrus Adamchik <[email protected]>
AuthorDate: Mon Aug 17 19:20:33 2026 -0400
CAY-2989 Upgrade mcp lib to 2.0.0
---
RELEASE-NOTES.txt | 1 +
.../main/java/org/apache/cayenne/mcp/tools/cgen/CgenRunTool.java | 9 ++++-----
.../org/apache/cayenne/mcp/tools/dbimport/DbImportRunTool.java | 9 ++++-----
.../apache/cayenne/mcp/tools/openproject/OpenProjectTool.java | 9 ++++-----
pom.xml | 2 +-
5 files changed, 14 insertions(+), 16 deletions(-)
diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index dc4f0e2ca..1460353da 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -35,6 +35,7 @@ CAY-2984 Remove "DataChannel" injectable dependency
CAY-2985 DataDomain init and structure cleanup
CAY-2986 Cgen to run unconditionally
CAY-2987 DataNode to own PkGenerator
+CAY-2989 Upgrade MCP SDK to 2.0
Bug Fixes:
diff --git
a/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/cgen/CgenRunTool.java
b/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/cgen/CgenRunTool.java
index 4cfa413e9..a2a8a9b40 100644
---
a/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/cgen/CgenRunTool.java
+++
b/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/cgen/CgenRunTool.java
@@ -81,9 +81,9 @@ public class CgenRunTool {
"""
Run Cayenne class generator (cgen) for a named
DataMap. Returns a JSON report of what was \
written, what was already up-to-date, and any
errors.""",
- new McpSchema.JsonSchema(
- "object",
- Map.of(
+ Map.of(
+ "type", "object",
+ "properties", Map.of(
"projectPath", Map.of(
"type", "string",
"description", "Absolute path to the
top-level Cayenne project descriptor (cayenne-*.xml), not a DataMap file"),
@@ -91,8 +91,7 @@ public class CgenRunTool {
"type", "string",
"description", "Name of the target
DataMap as it appears in the <map name='...'> element of the project
descriptor")
),
- List.of("projectPath", "dataMap"),
- null, null, null
+ "required", List.of("projectPath", "dataMap")
),
null, null, null
);
diff --git
a/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/dbimport/DbImportRunTool.java
b/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/dbimport/DbImportRunTool.java
index a6ab4d846..232b36fa1 100644
---
a/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/dbimport/DbImportRunTool.java
+++
b/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/dbimport/DbImportRunTool.java
@@ -113,9 +113,9 @@ public class DbImportRunTool {
the full database schema is imported. Returns
token-count summary and \
resolved connection metadata; actual schema changes
are written to the \
DataMap XML on disk.""",
- new McpSchema.JsonSchema(
- "object",
- Map.of(
+ Map.of(
+ "type", "object",
+ "properties", Map.of(
"projectPath", Map.of(
"type", "string",
"description", "Absolute path to the
top-level Cayenne project descriptor (cayenne-*.xml), not a DataMap file"),
@@ -123,8 +123,7 @@ public class DbImportRunTool {
"type", "string",
"description", "Name of the target
DataMap as it appears in the <map name='...'> element of the project
descriptor")
),
- List.of("projectPath", "dataMap"),
- null, null, null
+ "required", List.of("projectPath", "dataMap")
),
null, null, null
);
diff --git
a/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/openproject/OpenProjectTool.java
b/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/openproject/OpenProjectTool.java
index 3f83620ba..234ae63f1 100644
---
a/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/openproject/OpenProjectTool.java
+++
b/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/openproject/OpenProjectTool.java
@@ -78,15 +78,14 @@ public class OpenProjectTool {
"""
Launch CayenneModeler with the given project file.
Non-blocking; waits for \
the Modeler to report a startup handshake before
returning.""",
- new McpSchema.JsonSchema(
- "object",
- Map.of(
+ Map.of(
+ "type", "object",
+ "properties", Map.of(
"projectPath", Map.of(
"type", "string",
"description", "Absolute path to the
top-level Cayenne project descriptor (cayenne-*.xml)")
),
- List.of("projectPath"),
- null, null, null
+ "required", List.of("projectPath")
),
null, null, null
);
diff --git a/pom.xml b/pom.xml
index f8d06b0b0..1c5ae7586 100644
--- a/pom.xml
+++ b/pom.xml
@@ -47,7 +47,7 @@
<ant.version>1.10.15</ant.version>
<junit.version>5.14.4</junit.version>
<logback.version>1.5.32</logback.version>
- <mcp-sdk.version>1.1.2</mcp-sdk.version>
+ <mcp-sdk.version>2.0.0</mcp-sdk.version>
<mockito.version>5.23.0</mockito.version>
<slf4j.version>2.0.17</slf4j.version>
<testcontainers.version>2.0.5</testcontainers.version>