This is an automated email from the ASF dual-hosted git repository. hefengen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/shenyu.git
from b38315977f [fix] fix application.xml (#6048) add e2cb6f3abc [type:feat] mcp server plugin (#5999) No new revisions were added by this update. Summary of changes: db/init/mysql/schema.sql | 34 +- db/init/ob/schema.sql | 25 +- db/init/og/create-table.sql | 27 +- db/init/oracle/schema.sql | 47 +- db/init/pg/create-table.sql | 28 +- db/upgrade/2.7.0-upgrade-2.7.1-mysql.sql | 31 +- db/upgrade/2.7.0-upgrade-2.7.1-ob.sql | 29 +- db/upgrade/2.7.0-upgrade-2.7.1-og.sql | 27 +- db/upgrade/2.7.0-upgrade-2.7.1-oracle.sql | 43 +- db/upgrade/2.7.0-upgrade-2.7.1-pg.sql | 28 +- pom.xml | 17 + .../src/main/resources/sql-script/h2/schema.sql | 7 +- shenyu-bootstrap/pom.xml | 8 + shenyu-client/shenyu-client-core/pom.xml | 20 +- .../apache/shenyu/common/config/ShenyuConfig.java | 76 +++ .../apache/shenyu/common/constant/Constants.java | 5 + .../org/apache/shenyu/common/enums/PluginEnum.java | 7 +- shenyu-plugin/pom.xml | 1 + .../base/cache/CommonPluginDataSubscriber.java | 12 +- .../plugin/base/utils/ServerWebExchangeUtils.java | 2 +- .../shenyu-plugin-mcp-server}/pom.xml | 72 +-- .../shenyu/plugin/mcp/server/McpServerPlugin.java | 225 ++++++++ .../mcp/server/callback/ShenyuToolCallback.java | 251 +++++++++ .../server/definition/ShenyuToolDefinition.java | 110 ++++ .../server/handler/McpServerPluginDataHandler.java | 167 ++++++ .../mcp/server/holder/ShenyuMcpExchangeHolder.java | 40 +- .../mcp/server/manager/ShenyuMcpServerManager.java | 251 +++++++++ .../mcp/server/model/McpServerToolParameter.java | 164 ++++++ .../plugin/mcp/server/model/ShenyuMcpServer.java | 88 ++-- .../mcp/server/model/ShenyuMcpServerTool.java | 163 ++++++ .../mcp/server/request/BodyWriterExchange.java | 90 ++++ .../plugin/mcp/server/request/RequestConfig.java | 81 +++ .../mcp/server/request/RequestConfigHelper.java | 226 ++++++++ .../response/ShenyuMcpResponseDecorator.java | 121 +++++ .../mcp/server/session/McpSessionHelper.java | 104 ++++ .../ShenyuSseServerTransportProvider.java | 580 +++++++++++++++++++++ .../mcp/server/transport/SseEventFormatter.java | 91 ++++ .../plugin/mcp/server/utils/JsonSchemaUtil.java | 105 ++++ .../param/mapping/strategy/FormDataOperator.java | 33 +- .../param/mapping/strategy/JsonOperator.java | 48 +- .../shenyu-spring-boot-starter-plugin/pom.xml | 2 +- .../pom.xml | 4 +- .../mcp/server/McpServerPluginConfiguration.java | 87 ++++ .../src/main/resources/META-INF/spring.factories | 37 +- .../src/main/resources/META-INF/spring.provides | 2 +- ...rk.boot.autoconfigure.AutoConfiguration.imports | 2 +- .../apache/shenyu/web/filter/FileSizeFilter.java | 20 +- 47 files changed, 3443 insertions(+), 195 deletions(-) copy {shenyu-client/shenyu-client-core => shenyu-plugin/shenyu-plugin-mcp-server}/pom.xml (61%) create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/McpServerPlugin.java create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/callback/ShenyuToolCallback.java create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/definition/ShenyuToolDefinition.java create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/handler/McpServerPluginDataHandler.java copy shenyu-sdk/shenyu-sdk-core/src/main/java/org/apache/shenyu/sdk/core/client/ShenyuSdkClientFactory.java => shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/holder/ShenyuMcpExchangeHolder.java (57%) create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/manager/ShenyuMcpServerManager.java create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/model/McpServerToolParameter.java copy shenyu-admin/src/main/java/org/apache/shenyu/admin/model/dto/AuthPathApplyDTO.java => shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/model/ShenyuMcpServer.java (50%) create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/model/ShenyuMcpServerTool.java create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/request/BodyWriterExchange.java create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/request/RequestConfig.java create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/request/RequestConfigHelper.java create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/response/ShenyuMcpResponseDecorator.java create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/session/McpSessionHelper.java create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/transport/ShenyuSseServerTransportProvider.java create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/transport/SseEventFormatter.java create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/utils/JsonSchemaUtil.java copy shenyu-spring-boot-starter/shenyu-spring-boot-starter-plugin/{shenyu-spring-boot-starter-plugin-httpclient => shenyu-spring-boot-starter-plugin-mcp-server}/pom.xml (92%) create mode 100644 shenyu-spring-boot-starter/shenyu-spring-boot-starter-plugin/shenyu-spring-boot-starter-plugin-mcp-server/src/main/java/org/apache/shenyu/springboot/starter/plugin/mcp/server/McpServerPluginConfiguration.java copy shenyu-spring-boot-starter/shenyu-spring-boot-starter-plugin/{shenyu-spring-boot-starter-plugin-basic-auth => shenyu-spring-boot-starter-plugin-mcp-server}/src/main/resources/META-INF/spring.factories (91%) mode change 100755 => 100644 copy {shenyu-admin-listener/shenyu-admin-listener-etcd => shenyu-spring-boot-starter/shenyu-spring-boot-starter-plugin/shenyu-spring-boot-starter-plugin-mcp-server}/src/main/resources/META-INF/spring.provides (93%) copy shenyu-spring-boot-starter/shenyu-spring-boot-starter-plugin/{shenyu-spring-boot-starter-plugin-basic-auth => shenyu-spring-boot-starter-plugin-mcp-server}/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports (92%)