Quarkus Model Context Protocol (MCP) Server
此扩展使开发者能够轻松实现MCP服务器功能。
Model Context Protocol (MCP) 是一个开放协议,能够使LLM应用程序与外部数据源和工具无缝集成。
快速开始
1. 添加依赖
<dependency>
<groupId>io.quarkiverse.mcp</groupId>
<!-- 使用HTTP/SSE传输 -->
<artifactId>quarkus-mcp-server-sse</artifactId>
<version>${project-version}</version>
</dependency>
2. 实现服务器功能
使用注解添加MCP功能(提示、资源和工具):
import jakarta.inject.Inject;
import io.quarkiverse.mcp.server.*;
public class ServerFeatures {
@Inject
CodeService codeService;
// 将字符串转换为小写的工具
@Tool(description = "将字符串值转换为小写")
String toLowerCase(String value) {
return value.toLowerCase();
}
// 代码辅助提示
@Prompt(name = "code_assist")
PromptMessage codeAssist(@PromptArg(name = "lang") String language) {
return PromptMessage.withUserRole(new TextContent(codeService.assist(language)));
}
// 资源访问
@Resource(uri = "file:///project/alpha")
BlobResourceContents alpha(RequestUri uri) throws IOException {
return BlobResourceContents.create(uri.value(), Files.readAllBytes(Paths.ALPHA));
}
}
3. 启动应用
运行您的Quarkus应用程序,MCP服务器将自动生效。
注意事项
- LangChain4j 提供MCP客户端功能
- 若需使用STDIO传输,请将依赖改为
quarkus-mcp-server-stdio
文档
完整文档请访问 Quarkus MCP Server 文档
欢迎贡献!该项目遵循 all-contributors 规范。