- Explore MCP Servers
- quarkus-mcp-server
Quarkus Mcp Server
What is Quarkus Mcp Server
Quarkus MCP Server is an extension that allows developers to easily implement features of the Model Context Protocol (MCP), which facilitates seamless integration between large language model (LLM) applications and external data sources and tools.
Use cases
Use cases for Quarkus MCP Server include building AI-infused applications that require integration with external data sources, creating interactive tools for code assistance, and enabling dynamic resource management in LLM applications.
How to use
To use Quarkus MCP Server, add the dependency to your POM file, define server features through annotated business methods of CDI beans, and then run your Quarkus application.
Key features
Key features include declarative and programmatic APIs for implementing MCP server functionalities, support for various transport methods (HTTP/SSE or STDIO), and the ability to create prompts, resources, and tools easily.
Where to use
undefined
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Overview
What is Quarkus Mcp Server
Quarkus MCP Server is an extension that allows developers to easily implement features of the Model Context Protocol (MCP), which facilitates seamless integration between large language model (LLM) applications and external data sources and tools.
Use cases
Use cases for Quarkus MCP Server include building AI-infused applications that require integration with external data sources, creating interactive tools for code assistance, and enabling dynamic resource management in LLM applications.
How to use
To use Quarkus MCP Server, add the dependency to your POM file, define server features through annotated business methods of CDI beans, and then run your Quarkus application.
Key features
Key features include declarative and programmatic APIs for implementing MCP server functionalities, support for various transport methods (HTTP/SSE or STDIO), and the ability to create prompts, resources, and tools easily.
Where to use
undefined
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Content
Quarkus MCP Server
This Quarkus extension provides both declarative and programmatic APIs that enable developers to easily implement MCP[^1] server features.
[^1]: “Model Context Protocol (MCP) is an open protocol that enables seamless integration between LLM applications and external data sources and tools.”
[!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 💡 |
Konstantin Pavlov ⚠️ 🚇 |
Martijn van Duijnhoven 💻 ⚠️ 📖 |
This project follows the all-contributors specification. Contributions of any kind welcome!
Dev Tools Supporting MCP
The following are the main code editors that support the Model Context Protocol. Click the link to visit the official website for more information.










