This is an automated email from the ASF dual-hosted git repository.

xiaoyu pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/shenyu-website.git


The following commit(s) were added to refs/heads/main by this push:
     new 91db2731937 fea: mcp tools Quick connect to your service (#1093)
91db2731937 is described below

commit 91db2731937497ae6b17f4c30272c9f7a5bbef8b
Author: Yu Siheng <[email protected]>
AuthorDate: Wed Nov 12 10:04:28 2025 +0800

    fea: mcp tools Quick connect to your service (#1093)
    
    * fea: mcp tools Quick connect to your service
    
    * delete: unnecessary description
    
    * fix
---
 docs/user-guide/proxy/mcp-tool-proxy.md            | 208 +++++++++++++++++++++
 .../user-guide/proxy/mcp-tool-proxy.md             | 206 ++++++++++++++++++++
 .../user-guide/proxy/mcp-tool-proxy.md             | 208 +++++++++++++++++++++
 3 files changed, 622 insertions(+)

diff --git a/docs/user-guide/proxy/mcp-tool-proxy.md 
b/docs/user-guide/proxy/mcp-tool-proxy.md
new file mode 100644
index 00000000000..e53935e64f7
--- /dev/null
+++ b/docs/user-guide/proxy/mcp-tool-proxy.md
@@ -0,0 +1,208 @@
+---
+title: McpTool Service Integration  
+keywords: ["Mcp"]  
+description: McpTool Service Integration  
+---
+
+This document is intended to help the `mcpTool` service access the `Apache 
ShenYu` gateway. The `Apache ShenYu` gateway uses the `mcpServer` plugin to 
connect with `mcpTool` services.
+
+Before the connection, start `shenyu-admin` correctly, start  `mcpServer` 
plugin and add related dependencies on the gateway and `mcpTool` application 
client service side. You can refer to the previous [Quick Start with 
McpServer](../../quick-start/quick-start-McpServer).
+
+For details about client access configuration, see [Application Client Access 
Config](../property-config/register-center-access.md) .
+
+For details about data synchronization configurations, see [Data 
Synchronization Config](../property-config/use-data-sync.md) .
+
+## Add mcpServer and proxy plugins in gateway
+
+* Add the following dependencies to the gateway’s `pom.xml` file:
+
+```xml
+    <!--Mcp Server Plugin Start-->
+    <dependency>
+        <groupId>org.apache.shenyu</groupId>
+        <artifactId>shenyu-spring-boot-starter-plugin-mcp-server</artifactId>
+        <version>${project.version}</version>
+    </dependency>
+    <!--Mcp Server Plugin End-->
+```
+
+## Integrate mcpTool with the gateway (for springMvc)
+
+Refer to the example project: 
[shenyu-examples-mcp](https://github.com/apache/shenyu/tree/master/shenyu-examples/shenyu-examples-mcp)
+
+* `SpringBoot` Users
+
+    1. Add the following dependencies to your `mcpTool` service’s `pom.xml` 
file:
+
+  ```xml
+  <dependency>
+      <groupId>org.apache.shenyu</groupId>
+      <artifactId>shenyu-spring-boot-starter-client-mcp</artifactId>
+      <version>${shenyu.version}</version>
+  </dependency>
+  ```
+
+    2. Add the following configuration in `application.yaml`:
+
+  ```yaml
+  shenyu:
+    register:
+      registerType: http #zookeeper #etcd #nacos #consul
+      serverLists: http://localhost:9095 #localhost:2181 
#http://localhost:2379 #localhost:8848
+      props:
+        username: admin
+        password: 123456
+    client:
+      mcp:
+        props:
+          contextPath: /mcp
+          appName: mcp
+  ```
+
+* `Spring` Users
+
+  Add the following dependencies to your HTTP service’s `pom.xml` file:
+
+  ```xml
+  <dependency>
+      <groupId>org.apache.shenyu</groupId>
+      <artifactId>shenyu-client-mcp</artifactId>
+      <version>${shenyu.version}</version>
+  </dependency>
+  ```
+
+  Then add the following bean definitions to your XML configuration file:
+
+  ```xml
+  <bean id="clientConfig" 
class="org.apache.shenyu.register.common.config.PropertiesConfig">
+      <property name="props">
+        <map>
+          <entry key="contextPath" value="/yourContextPath"/>
+          <entry key="appName" value="yourAppName"/>
+        </map>
+      </property>
+  </bean>
+  
+  <bean id="shenyuRegisterCenterConfig" 
class="org.apache.shenyu.register.common.config.ShenyuRegisterCenterConfig">
+     <property name="registerType" value="http"/>
+     <property name="serverList" value="http://localhost:9095"/>
+  </bean>
+  
+  <bean id="shenyuClientRegisterRepository" 
class="org.apache.shenyu.client.core.register.ShenyuClientRegisterRepositoryFactory"
 factory-method="newInstance">
+         <property name="shenyuRegisterCenterConfig" 
ref="shenyuRegisterCenterConfig"/>
+   </bean>
+  
+  <bean id="McpServiceEventListener" 
class="org.apache.shenyu.client.mcp.McpServiceEventListener">
+     <constructor-arg name="clientConfig" ref="clientConfig"/>
+     <constructor-arg name="shenyuClientRegisterRepository" 
ref="shenyuClientRegisterRepository"/>
+     <constructor-arg name="env" ref="environment"/>  
+  </bean>
+  ```
+
+  Add the `@ShenyuMcpTool` annotations to your controller interfaces.
+
+  You need to add the `@ShenyuMcpTool` annotation on the `Controller` class. 
Only controllers annotated with `@ShenyuMcpTool` will be recognized as 
`mcpTool`.
+
+### Example 1
+
+This example demonstrates full McpTool configuration. You can fully customize 
your configuration by annotations, including parameter information defined in 
the operation.
+
+```java
+@GetMapping("/findById")
+@ShenyuMcpTool(
+        operation = @Operation(
+                method = "GET", description = "find order by id"
+        ),
+        requestConfig = @ShenyuMcpRequestConfig(
+                bodyToJson = "false",
+                headers = {
+                        @ShenyuMcpHeader(key = "aaa", value = "bbb")
+                }
+        ),
+        enabled = true, toolName = "findOrderById"
+)
+@ApiDoc(desc = "findById")
+public OrderDTO findById(@ShenyuMcpToolParam(
+        parameter = @Parameter(
+                name = "id",
+                in = ParameterIn.PATH,
+                description = "the id of order",
+                required = true,
+                schema = @Schema(
+                        type = "string",
+                        defaultValue = "1"
+                )
+        )
+) @RequestParam("id") final String id) {
+        OrderDTO dto = new OrderDTO();
+        dto.setId(id);
+        return dto;
+}
+```
+
+### Example 2
+
+This example shows the configuration for a McpTool function without parameters.
+
+```java
+@GetMapping("/findAll")
+@ShenyuMcpTool(
+        operation = @Operation(
+                method = "GET", description = "find all order"
+        ),
+        requestConfig = @ShenyuMcpRequestConfig(
+                bodyToJson = "false",
+                headers = {
+                        @ShenyuMcpHeader(key = "aaa", value = "bbb")
+                }
+        ),
+        enabled = true, toolName = "findAllOrder"
+)
+@ApiDoc(desc = "findAll")
+public String findAll() {
+        return "hello apache shenyu , mcp findAll success";
+}
+```
+
+### Example 3
+
+This is a simplified usage that requires only a simple annotation to register 
the `McpTool` to the gateway.
+
+> Special note: Currently only supports `@RequestMapping`, `@GetMapping`, 
`@PostMapping`, `@DeleteMapping`, and `@PutMapping` annotations. Only the first 
path of the `@XXXMapping` annotation is effective.
+
+```java
+@GetMapping("/findByName")
+@ShenyuMcpTool
+@ApiDoc(desc = "findName")
+public OrderDTO findByName(@ShenyuMcpToolParam final String name) {
+        OrderDTO dto = new OrderDTO();
+        dto.setName(name);
+        return dto;
+}
+```
+
+* Start your project. Your service interfaces will be connected to the 
gateway. In the `shenyu-admin` backend management system, go to `Plugin List -> 
HTTP process -> mcpServer`, and you will see the automatically created 
endpoints and Tools.
+
+## McpTool integration with gateway (Other Languages, Non-SpringMvc)
+
+* First, find the `mcpServer` plugin in `shenyu-admin`, then add selectors and 
rules to filter traffic accordingly.
+
+* If you are unsure how to configure, please refer to [Selector and Rule 
Management](../admin-usage/selector-and-rule).
+
+## User requests
+
+After your `mcpTool` service is connected to the `Apache ShenYu` gateway, you 
can use the `endPoint` configured in the `Selector` as the request interface 
for your `McpClient`.
+
+* Firstly, the domain name of your previous `endPoint` was your own service; 
now it should be replaced with the gateway’s domain name.
+
+* Secondly, the `Apache ShenYu` gateway requires a route prefix configured as 
the `contextPath` in your integration project.
+
+    * In the `mcpServer` plugin, this `contextPath` corresponds to your 
`endPoint`.
+
+    * For example, if you configured `contextPath` as `mcp`, then your 
`endPoint` should be configured as: `http://localhost:9195/mcp/sse`.
+
+    * Here, `localhost:9195` is the IP and port of your gateway (default port 
is `9195`), and `/mcp` is the `contextPath` configured during integration.
+
+* Third, the mcpServer plugin does not include request forwarding 
functionality. To perform remote tool invocation, please enable the 
corresponding proxy plugin for proxying. You can refer to [Quick Start with 
McpServer](../../quick-start/quick-start-McpServer).
+
+Then you can invoke tools via the `mcpClient` through the gateway easily.
diff --git 
a/i18n/zh/docusaurus-plugin-content-docs/version-2.7.0.2/user-guide/proxy/mcp-tool-proxy.md
 
b/i18n/zh/docusaurus-plugin-content-docs/version-2.7.0.2/user-guide/proxy/mcp-tool-proxy.md
new file mode 100644
index 00000000000..f738d305411
--- /dev/null
+++ 
b/i18n/zh/docusaurus-plugin-content-docs/version-2.7.0.2/user-guide/proxy/mcp-tool-proxy.md
@@ -0,0 +1,206 @@
+---
+title: McpTool服务接入
+keywords: ["Mcp"]
+description: McpTool服务接入
+---
+
+本文档旨在帮助 `mcpTool` 服务接入到 `Apache ShenYu` 网关。`Apache ShenYu` 网关使用 `mcpServer` 
插件来接入 `mcpTool` 服务。
+
+接入前,请正确启动 `shenyu-admin`,并开启`mcpServer`插件,在网关端和`mcpTool`服务端引入相关依赖。可以参考前面的 
[McpServer快速开始](../../quick-start/quick-start-McpServer)。
+
+应用客户端接入的相关配置请参考:[客户端接入配置](../../../../../../versioned_docs/version-2.7.0.2/user-guide/property-config/register-center-access.md)。
+
+数据同步的相关配置请参考:[数据同步配置](../../../../../../versioned_docs/version-2.7.0.2/user-guide/property-config/use-data-sync.md)。
+
+## 在网关中引入 mcpServer 和相关 proxy 插件
+
+* 在网关的 `pom.xml` 文件中增加如下依赖:
+
+```xml
+        <!--Mcp Server Plugin Start-->
+        <dependency>
+            <groupId>org.apache.shenyu</groupId>
+            
<artifactId>shenyu-spring-boot-starter-plugin-mcp-server</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <!--Mcp Server Plugin end-->
+```
+
+## mcpTool接入网关
+
+可以参考:[shenyu-examples-mcp](https://github.com/apache/shenyu/tree/master/shenyu-examples/shenyu-examples-mcp)
+
+* `SpringBoot` 用户
+
+    1. 在你的`mcpTool`服务中的 `pom.xml`文件 新增如下依赖:
+
+  ```xml
+  <dependency>
+      <groupId>org.apache.shenyu</groupId>
+      <artifactId>shenyu-spring-boot-starter-client-mcp</artifactId>
+      <version>${shenyu.version}</version>
+  </dependency>
+  ```
+  
+    2. 在 application.yaml 增加如下配置:
+
+  ```yaml
+  shenyu:
+    register:
+      registerType: http #zookeeper #etcd #nacos #consul
+      serverLists: http://localhost:9095 #localhost:2181 
#http://localhost:2379 #localhost:8848
+      props:
+        username: admin
+        password: 123456
+    client:
+      mcp:
+        props:
+          contextPath: /mcp
+          appName: mcp
+  ```
+
+* `Spring` 用户
+
+  在你的`http`服务中的 `pom.xml`文件 新增如下依赖:
+
+  ```xml
+  <dependency>
+      <groupId>org.apache.shenyu</groupId>
+      <artifactId>shenyu-client-mcp</artifactId>
+      <version>${shenyu.version}</version>
+  </dependency>
+   ```
+
+  并在你的 `bean` 定义的 `xml` 文件中新增如下:
+
+  ```xml
+  <bean id="clientConfig" 
class="org.apache.shenyu.register.common.config.PropertiesConfig">
+      <property name="props">
+        <map>
+          <entry key="contextPath" value="/你的contextPath"/>
+          <entry key="appName" value="你的名字"/>
+        </map>
+      </property>
+  </bean>
+  
+  <bean id="shenyuRegisterCenterConfig" 
class="org.apache.shenyu.register.common.config.ShenyuRegisterCenterConfig">
+     <property name="registerType" value="http"/>
+     <property name="serverList" value="http://localhost:9095"/>
+  </bean>
+  
+  <bean id="shenyuClientRegisterRepository" 
class="org.apache.shenyu.client.core.register.ShenyuClientRegisterRepositoryFactory"
 factory-method="newInstance">
+         <property name="shenyuRegisterCenterConfig" 
ref="shenyuRegisterCenterConfig"/>
+   </bean>
+  
+  <bean id ="McpServiceEventListener" class 
="org.apache.shenyu.client.mcp.McpServiceEventListener">
+     <constructor-arg name="clientConfig" ref="clientConfig"/>
+     <constructor-arg name="shenyuClientRegisterRepository" 
ref="shenyuClientRegisterRepository"/>
+     <constructor-arg name="env" ref="environment"/>  
+  </bean>
+  ```
+
+  在你的 `controller` 的接口上加上 `@ShenyuMcpTool` 注解。
+
+  你需要将`@ShenyuMcpTool`注解加到 `Controller` 
类上面,只有添加了`@ShenyuMcpTool`的`Controller`才会被识别为 mcpTool。
+
+示例一
+
+下面演示的是 McpTool 完整配置,你可以通过注解完全自定义你的配置,其中 parameter 信息也可以在 operation 中配置。
+
+```java
+@GetMapping("/findById")
+@ShenyuMcpTool(
+        operation = @Operation(
+                method = "GET", description = "find order by id"
+        ),
+        requestConfig = @ShenyuMcpRequestConfig(
+                bodyToJson = "false",
+                headers = {
+                        @ShenyuMcpHeader(key = "aaa", value = "bbb")
+                }
+        ),
+        enabled = true, toolName = "findOrderById"
+)
+@ApiDoc(desc = "findById")
+public OrderDTO findById(@ShenyuMcpToolParam(
+        parameter = @Parameter(
+                name = "id",
+                in = ParameterIn.PATH,
+                description = "the id of order",
+                required = true,
+                schema = @Schema(
+                        type = "string",
+                        defaultValue = "1"
+                )
+        )
+) @RequestParam("id") final String id) {
+        OrderDTO dto = new OrderDTO();
+        dto.setId(id);
+        return dto;
+        }
+```
+
+示例二
+
+下面表示的是:McpTool 函数没有参数时的配置。
+
+```java
+@GetMapping("/findAll")
+@ShenyuMcpTool(
+        operation = @Operation(
+                method = "GET", description = "find all order"
+        ),
+        requestConfig = @ShenyuMcpRequestConfig(
+                bodyToJson = "false",
+                headers = {
+                        @ShenyuMcpHeader(key = "aaa", value = "bbb")
+                }
+        ),
+        enabled = true, toolName = "findAllOrder"
+)
+@ApiDoc(desc = "findAll")
+public String findAll() {
+        return "hello apache shenyu , mcp findAll success";
+        }
+```
+
+示例三:这是一种简化的使用方式,只需要一个简单的注释即可将`McpTool`注册到网关.
+
+> 
特别说明:目前只支持`@RequestMapping、@GetMapping、@PostMapping、@DeleteMapping、@PutMapping`注解,并且只对`@XXXMapping`中的第一个路径有效
+
+```java
+@GetMapping("/findByName")
+@ShenyuMcpTool
+@ApiDoc(desc = "findName")
+public OrderDTO findByName(@ShenyuMcpToolParam final String name) {
+        OrderDTO dto = new OrderDTO();
+        dto.setName(name);
+        return dto;
+        }
+```
+
+* 启动你的项目,你的服务接口接入到了网关,进入`shenyu-admin`后台管理系统的`插件列表 -> http process -> 
mcpServer`,看到自动创建的 endpoint 和 Tool。
+
+## McpTool 接入网关(其他语言,非springMvc体系)
+
+* 首先在 `shenyu-admin` 找到 `mcpServer` 插件,进行选择器,和规则的添加,进行流量的匹配筛选。
+
+* 如果不懂怎么配置,请参考 [选择器和规则管理](../admin-usage/selector-and-rule)。
+
+## 用户请求
+
+当你的`McpTool`服务接入到`Apache ShenYu`网关后,你就可以用 `selector` 上配置的 `endPoint` 作为 
`mcpClient` 的请求接口。
+
+* 第一点,你之前`endPoint`的域名是你自己的服务,现在要换成网关的域名。
+
+* 第二点,`Apache ShenYu` 网关需要有一个路由前缀,这个路由前缀就是你接入项目进行配置 `contextPath`。
+
+    * 在 McpServer 插件中,这个 `contextPath` 就是你的 `endPoint`
+
+    * 
比如你配置了`contextPath`为`mcp`,那么你的`endPoint`应该配置为`http://localhost:9195/mcp/sse` 或者 
`http://localhost:9195/mcp/streamablehttp`。
+
+    * 其中 `localhost:9195` 为网关的`ip`端口,默认端口是`9195` ,`/mcp` 是你接入网关配置的 
`contextPath`。
+
+* 
第三点,`mcpServer`插件并不包含请求转发的功能,需要进行工具远程调用请启动相关的`proxy`插件进行插件代理。可以参考[McpServer快速开始](../../quick-start/quick-start-McpServer)。
+
+然后你就可以通过`mcpClient`进行工具调用了。
diff --git a/versioned_docs/version-2.7.0.2/user-guide/proxy/mcp-tool-proxy.md 
b/versioned_docs/version-2.7.0.2/user-guide/proxy/mcp-tool-proxy.md
new file mode 100644
index 00000000000..e53935e64f7
--- /dev/null
+++ b/versioned_docs/version-2.7.0.2/user-guide/proxy/mcp-tool-proxy.md
@@ -0,0 +1,208 @@
+---
+title: McpTool Service Integration  
+keywords: ["Mcp"]  
+description: McpTool Service Integration  
+---
+
+This document is intended to help the `mcpTool` service access the `Apache 
ShenYu` gateway. The `Apache ShenYu` gateway uses the `mcpServer` plugin to 
connect with `mcpTool` services.
+
+Before the connection, start `shenyu-admin` correctly, start  `mcpServer` 
plugin and add related dependencies on the gateway and `mcpTool` application 
client service side. You can refer to the previous [Quick Start with 
McpServer](../../quick-start/quick-start-McpServer).
+
+For details about client access configuration, see [Application Client Access 
Config](../property-config/register-center-access.md) .
+
+For details about data synchronization configurations, see [Data 
Synchronization Config](../property-config/use-data-sync.md) .
+
+## Add mcpServer and proxy plugins in gateway
+
+* Add the following dependencies to the gateway’s `pom.xml` file:
+
+```xml
+    <!--Mcp Server Plugin Start-->
+    <dependency>
+        <groupId>org.apache.shenyu</groupId>
+        <artifactId>shenyu-spring-boot-starter-plugin-mcp-server</artifactId>
+        <version>${project.version}</version>
+    </dependency>
+    <!--Mcp Server Plugin End-->
+```
+
+## Integrate mcpTool with the gateway (for springMvc)
+
+Refer to the example project: 
[shenyu-examples-mcp](https://github.com/apache/shenyu/tree/master/shenyu-examples/shenyu-examples-mcp)
+
+* `SpringBoot` Users
+
+    1. Add the following dependencies to your `mcpTool` service’s `pom.xml` 
file:
+
+  ```xml
+  <dependency>
+      <groupId>org.apache.shenyu</groupId>
+      <artifactId>shenyu-spring-boot-starter-client-mcp</artifactId>
+      <version>${shenyu.version}</version>
+  </dependency>
+  ```
+
+    2. Add the following configuration in `application.yaml`:
+
+  ```yaml
+  shenyu:
+    register:
+      registerType: http #zookeeper #etcd #nacos #consul
+      serverLists: http://localhost:9095 #localhost:2181 
#http://localhost:2379 #localhost:8848
+      props:
+        username: admin
+        password: 123456
+    client:
+      mcp:
+        props:
+          contextPath: /mcp
+          appName: mcp
+  ```
+
+* `Spring` Users
+
+  Add the following dependencies to your HTTP service’s `pom.xml` file:
+
+  ```xml
+  <dependency>
+      <groupId>org.apache.shenyu</groupId>
+      <artifactId>shenyu-client-mcp</artifactId>
+      <version>${shenyu.version}</version>
+  </dependency>
+  ```
+
+  Then add the following bean definitions to your XML configuration file:
+
+  ```xml
+  <bean id="clientConfig" 
class="org.apache.shenyu.register.common.config.PropertiesConfig">
+      <property name="props">
+        <map>
+          <entry key="contextPath" value="/yourContextPath"/>
+          <entry key="appName" value="yourAppName"/>
+        </map>
+      </property>
+  </bean>
+  
+  <bean id="shenyuRegisterCenterConfig" 
class="org.apache.shenyu.register.common.config.ShenyuRegisterCenterConfig">
+     <property name="registerType" value="http"/>
+     <property name="serverList" value="http://localhost:9095"/>
+  </bean>
+  
+  <bean id="shenyuClientRegisterRepository" 
class="org.apache.shenyu.client.core.register.ShenyuClientRegisterRepositoryFactory"
 factory-method="newInstance">
+         <property name="shenyuRegisterCenterConfig" 
ref="shenyuRegisterCenterConfig"/>
+   </bean>
+  
+  <bean id="McpServiceEventListener" 
class="org.apache.shenyu.client.mcp.McpServiceEventListener">
+     <constructor-arg name="clientConfig" ref="clientConfig"/>
+     <constructor-arg name="shenyuClientRegisterRepository" 
ref="shenyuClientRegisterRepository"/>
+     <constructor-arg name="env" ref="environment"/>  
+  </bean>
+  ```
+
+  Add the `@ShenyuMcpTool` annotations to your controller interfaces.
+
+  You need to add the `@ShenyuMcpTool` annotation on the `Controller` class. 
Only controllers annotated with `@ShenyuMcpTool` will be recognized as 
`mcpTool`.
+
+### Example 1
+
+This example demonstrates full McpTool configuration. You can fully customize 
your configuration by annotations, including parameter information defined in 
the operation.
+
+```java
+@GetMapping("/findById")
+@ShenyuMcpTool(
+        operation = @Operation(
+                method = "GET", description = "find order by id"
+        ),
+        requestConfig = @ShenyuMcpRequestConfig(
+                bodyToJson = "false",
+                headers = {
+                        @ShenyuMcpHeader(key = "aaa", value = "bbb")
+                }
+        ),
+        enabled = true, toolName = "findOrderById"
+)
+@ApiDoc(desc = "findById")
+public OrderDTO findById(@ShenyuMcpToolParam(
+        parameter = @Parameter(
+                name = "id",
+                in = ParameterIn.PATH,
+                description = "the id of order",
+                required = true,
+                schema = @Schema(
+                        type = "string",
+                        defaultValue = "1"
+                )
+        )
+) @RequestParam("id") final String id) {
+        OrderDTO dto = new OrderDTO();
+        dto.setId(id);
+        return dto;
+}
+```
+
+### Example 2
+
+This example shows the configuration for a McpTool function without parameters.
+
+```java
+@GetMapping("/findAll")
+@ShenyuMcpTool(
+        operation = @Operation(
+                method = "GET", description = "find all order"
+        ),
+        requestConfig = @ShenyuMcpRequestConfig(
+                bodyToJson = "false",
+                headers = {
+                        @ShenyuMcpHeader(key = "aaa", value = "bbb")
+                }
+        ),
+        enabled = true, toolName = "findAllOrder"
+)
+@ApiDoc(desc = "findAll")
+public String findAll() {
+        return "hello apache shenyu , mcp findAll success";
+}
+```
+
+### Example 3
+
+This is a simplified usage that requires only a simple annotation to register 
the `McpTool` to the gateway.
+
+> Special note: Currently only supports `@RequestMapping`, `@GetMapping`, 
`@PostMapping`, `@DeleteMapping`, and `@PutMapping` annotations. Only the first 
path of the `@XXXMapping` annotation is effective.
+
+```java
+@GetMapping("/findByName")
+@ShenyuMcpTool
+@ApiDoc(desc = "findName")
+public OrderDTO findByName(@ShenyuMcpToolParam final String name) {
+        OrderDTO dto = new OrderDTO();
+        dto.setName(name);
+        return dto;
+}
+```
+
+* Start your project. Your service interfaces will be connected to the 
gateway. In the `shenyu-admin` backend management system, go to `Plugin List -> 
HTTP process -> mcpServer`, and you will see the automatically created 
endpoints and Tools.
+
+## McpTool integration with gateway (Other Languages, Non-SpringMvc)
+
+* First, find the `mcpServer` plugin in `shenyu-admin`, then add selectors and 
rules to filter traffic accordingly.
+
+* If you are unsure how to configure, please refer to [Selector and Rule 
Management](../admin-usage/selector-and-rule).
+
+## User requests
+
+After your `mcpTool` service is connected to the `Apache ShenYu` gateway, you 
can use the `endPoint` configured in the `Selector` as the request interface 
for your `McpClient`.
+
+* Firstly, the domain name of your previous `endPoint` was your own service; 
now it should be replaced with the gateway’s domain name.
+
+* Secondly, the `Apache ShenYu` gateway requires a route prefix configured as 
the `contextPath` in your integration project.
+
+    * In the `mcpServer` plugin, this `contextPath` corresponds to your 
`endPoint`.
+
+    * For example, if you configured `contextPath` as `mcp`, then your 
`endPoint` should be configured as: `http://localhost:9195/mcp/sse`.
+
+    * Here, `localhost:9195` is the IP and port of your gateway (default port 
is `9195`), and `/mcp` is the `contextPath` configured during integration.
+
+* Third, the mcpServer plugin does not include request forwarding 
functionality. To perform remote tool invocation, please enable the 
corresponding proxy plugin for proxying. You can refer to [Quick Start with 
McpServer](../../quick-start/quick-start-McpServer).
+
+Then you can invoke tools via the `mcpClient` through the gateway easily.

Reply via email to