一、快速搭建 Solon 项目,引入 Solon AI
1. 开发环境准备
- JDK 8 或以上版本。
- Maven 3.8.6 或以上版本。
- 通义千问 API Key(用于模型调用)。
2. 创建名为 mcp-server-demo 的项目
创建时选择 Archetype 为 Solon AI(可以减少些活),会自动添加 Solon AI、MCP 相关依赖。
创建后可以再简化下 pom.xml :- <?xml version="1.0" encoding="UTF-8"?>
- <project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.noear</groupId>
- solon-parent</artifactId>
- <version>3.5.1</version>
- <relativePath />
- </parent>
- <groupId>com.example</groupId>
- solon-bailian-mcp-workflow-server</artifactId>
- <version>1.0</version>
-
- <packaging>jar</packaging>
- <description>Demo project for Solon</description>
- <properties>
- <java.version>1.8</java.version>
- </properties>
- <dependencies>
- <dependency>
- <groupId>org.noear</groupId>
- solon-web</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.noear</groupId>
- solon-ai-mcp</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.noear</groupId>
- solon-logging-logback</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.projectlombok</groupId>
- lombok</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.noear</groupId>
- solon-test</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
- <build>
- <finalName>${project.artifactId}</finalName>
- <plugins>
- <plugin>
- <groupId>org.noear</groupId>
- solon-maven-plugin</artifactId>
- </plugin>
- </plugins>
- </build>
- </project>
复制代码 二、添加 Mcp Server 并添加两个工具
使用 @McpServerEndpoint 注解,就像 MVC 开发一样简单。name 为 mcp-server-demo(可以按需设定),channel 使用 McpChannel.STREAMABLE(表示用 streamable 传输方式),mcpEndpoint 为 /mcp(可以按需设定)。
支持多个端点。就像 MVC 开发有多个控制器,每个控制器可以有自己的前缀地址。提示:不需要别的配置或注册了。
三、添加测试类,简单试下效果
通过测试注解 @SolonTest(App.class) 启动服务端,通过 McpClientProvider 连接服务端并获取所有工具。- import com.example.mcp_server.App;
- import lombok.extern.slf4j.Slf4j;
- import org.junit.jupiter.api.Test;
- import org.noear.solon.ai.chat.tool.FunctionTool;
- import org.noear.solon.ai.mcp.McpChannel;
- import org.noear.solon.ai.mcp.client.McpClientProvider;
- import org.noear.solon.test.SolonTest;
- import java.util.Collection;
- @Slf4j
- @SolonTest(App.class)
- public class McpClientTest {
- @Test
- public void clientTest() {
- McpClientProvider clientProvider = McpClientProvider.builder()
- .url("http://localhost:8080/mcp")
- .channel(McpChannel.STREAMABLE)
- .build();
- //获取所有工具
- Collection<FunctionTool> tools = clientProvider.getTools();
- log.error("{}", tools);
- }
- }
复制代码 单测运行效果:
四、项目打包并部署
打包,并生成 mcp-server-demo.jar
发布到自己的服务器(可用 java -jar mcp-server-demo.jar 运行)。或者,上传到阿里云函数(界面太多,略过...)
五、将部署好的 Streamable MCP 集成到百炼当中
按照界面引导,添加配置(界面太多,略过...)。
后续,可以进一步创建智能体使用 Streamable MCP (界面太多,略过...)
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |