Quarkus Model Context Protocol (MCP) Server
“Model Context Protocol (MCP) is an open protocol that enables seamless integration between LLM applications and external data sources and tools.”
This extension provides declarative and programmatic APIs that enable developers to implement the MCP server features easily.
[!NOTE]
The LangChain4j project provides the MCP client functionality, either as a low-level programmatic API or as a full-fledged integration into AI-infused applications.
Get Started
Step #1
Add the following dependency to your POM file:
<dependency>
<groupId>io.quarkiverse.mcp</groupId>
<!-- use 'quarkus-mcp-server-stdio' if you want to use the STDIO transport instead of the HTTP/SSE transport -->
<artifactId>quarkus-mcp-server-sse</artifactId>
<version>${project-version}</version>
</dependency>
Step #2
Add server features (prompts, resources and tools) represented by annotated business methods of CDI beans.
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.Tool;
import io.quarkiverse.mcp.server.Resource;
import io.quarkiverse.mcp.server.TextContent;
// This class is automatically registered as a @Singleton CDI bean
public class ServerFeatures {
@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")
BlobResourceContents alpha(RequestUri uri) throws IOException{
return BlobResourceContents.create(uri.value(), Files.readAllBytes(Path.of("alpha.txt")));
}
}
Step #3
Run your Quarkus app and have fun!
Documentation
The full documentation is available at https://quarkiverse.github.io/quarkiverse-docs/quarkus-mcp-server/dev/index.html.
Contributors ✨
Thanks goes to these wonderful people (emoji key):
Martin Kouba 💻 🚧 | Georgios Andrianakis 💻 | Max Rydahl Andersen 💡 | Rostislav Svoboda 💻 | George Gastaldi 🚇 | Jan Martiska 📖 | Ioannis Canellos 💻 |
Sergey Beryozkin 💡 |
This project follows the all-contributors specification. Contributions of any kind welcome!
Quarkus MCP Server
Project Details
- quarkiverse/quarkus-mcp-server
- Apache License 2.0
- Last Updated: 5/14/2025
Recomended MCP Servers
an MCP server for makin' notes
🪐 ✨ Model Context Protocol (MCP) Server for Jupyter.
A GitHub MCP Server
Claude can perform Web Search | Exa with MCP (Model Context Protocol)
A powerful Model Context Protocol (MCP) server that provides an all-in-one solution for public web access.
Bluesky MCP (Model Context Protocol) Server
Put an end to code hallucinations! GitMCP is a free, open-source, remote MCP server for any GitHub project
alpaca-mcp using stdio/stdout
Bun Server Transport implementation for MCP - MCP SSE
PDF to Markdown conversion tool
FRED (Federal Reserve Economic Data) API integration with Model Context Protocol (MCP)





