mcpField
Q
Quarkus Model Context Protocol (MCP) Server

Quarkus Model Context Protocol (MCP) Server

本地服务
docs.quarkiverse.io开发工具2031 天前更新

关于 Quarkus Model Context Protocol (MCP) Server

面向 Quarkus 开发者的 MCP 服务扩展,提供声明式和编程式 API,可在 Quarkus 应用中定义服务器功能。

主要功能

  1. 01声明式与编程式 API
  2. 02使用 CDI 注解业务方法
  3. 03HTTP/SSE 与 Streamable HTTP 传输
  4. 04可选 STDIO 传输

适用场景

  1. 01为 Quarkus 应用添加 MCP 功能
  2. 02定义提示词、资源和工具
  3. 03通过 HTTP 或 STDIO 提供服务

MCP 相关

该扩展支持在 Quarkus 应用中实现 MCP 服务功能。应用可向 MCP 客户端公开提示词、资源和工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Quarkus MCP Server

All Contributors

Version

此 Quarkus 扩展提供声明式和编程式 API,使开发者能够轻松实现 MCP1 服务功能。

说明


LangChain4j 项目提供 MCP 客户端功能,既可以通过底层编程式 API 使用,也可以全面集成到 AI 应用中。

开始使用

第 1 步

将以下依赖项添加到你的 POM 文件中:

<dependency>
    <groupId>io.quarkiverse.mcp</groupId>
    <artifactId>quarkus-mcp-server-http</artifactId>
    <version>${quarkus-mcp-server-version}</version>
</dependency>

说明


此依赖项同时包含旧版“HTTP/SSE”和“Streamable HTTP”传输。如果要改用 STDIO 传输,请使用 quarkus-mcp-server-stdio artifactId。有关详细信息,请参阅文档中的传输部分。

第 2 步

添加服务功能(提示词、资源和工具),这些功能由 CDI Bean 的_带注解的业务方法_表示。

import jakarta.inject.Inject;

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;

import io.quarkiverse.mcp.server.BlobResourceContents;
import io.quarkiverse.mcp.server.Prompt;
import io.quarkiverse.mcp.server.PromptArg;
import io.quarkiverse.mcp.server.PromptMessage;
import io.quarkiverse.mcp.server.Resource;
import io.quarkiverse.mcp.server.TextContent;
import io.quarkiverse.mcp.server.Tool;

// This class is automatically registered as a @Singleton CDI bean
public class MyFeatures {

    @Inject
    CodeService codeService;

    @Tool(description = "Converts the string value to lower case")
    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.txt")
    byte[] alpha() throws IOException{
        return Files.readAllBytes(Path.of("alpha.txt"));
    }

}
第 3 步

运行 Quarkus 应用,尽情体验!

文档

完整文档请参阅 https://quarkiverse.github.io/quarkiverse-docs/quarkus-mcp-server/dev/index.html。

贡献者 ✨

感谢这些优秀的贡献者(表情符号说明):

Martin Kouba
Martin Kouba

💻 🚧
Georgios Andrianakis
Georgios Andrianakis

💻
Max Rydahl Andersen
Max Rydahl Andersen

💡
Rostislav Svoboda
Rostislav Svoboda

💻
George Gastaldi
George Gastaldi

🚇
Jan Martiska
Jan Martiska

📖
Ioannis Canellos
Ioannis Canellos

💻
Sergey Beryozkin
Sergey Beryozkin

💡
Konstantin Pavlov
Konstantin Pavlov

⚠️ 🚇
Martijn van Duijnhoven
Martijn van Duijnhoven

💻 ⚠️ 📖
Pierre Beitz
Pierre Beitz

💻 ⚠️
Matthieu Recouly
Matthieu Recouly

📖
Willem Jan Glerum
Willem Jan Glerum

🚇
Sascha Steffen
Sascha Steffen

💻 ⚠️
Clement Escoffier
Clement Escoffier

📖
Rolfe Dlugy-Hegwer
Rolfe Dlugy-Hegwer

📖 💻
Bruno Baptista
Bruno Baptista

📖 💻
Moayad Alyaghshi
Moayad Alyaghshi

🐛 💻
David Kornel
David Kornel

🐛 💻
Ian Stewart
Ian Stewart

🐛 💻
Eric Hare
Eric Hare

🐛 💻
Nagi KaTou
Nagi KaTou

🐛 💻
Matej Novotny
Matej Novotny

🐛 ⚠️ 💻

本项目遵循 all-contributors 规范。欢迎以任何形式参与贡献!

Footnotes

  1. "Model Context Protocol(MCP)是一种开放协议,可在大模型应用与外部数据源和工具之间实现无缝集成。" ↩

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。