MCP HubMCP Hub
quarkiverse

quarkus-mcp-servers

by: quarkiverse

Model Context Protocol Servers in Quarkus

96created 22/01/2025
Visit
Quarkus
Protocol

📌Overview

Purpose: The framework provides Model Context Protocol (MCP) servers to enhance the capabilities of MCP-enabled Large Language Model (LLM) applications.

Overview: This project features several servers implemented in Java using the Quarkus MCP server framework, allowing integration with various databases and systems, and contributing to the versatility of AI applications.

Key Features:

  • JDBC Server: Stores and retrieves data from any JDBC-compatible database (e.g., Postgres, MySQL). It simplifies database interactions in LLM applications.

  • Filesystem Server: Serves files from a specified file system, enabling file management and retrieval for integrated applications.

  • JavaFX Server: Provides a canvas for drawing using JavaFX, allowing interactive and graphical applications to be built on top of MCP.

  • Kubernetes Server: Facilitates interaction with Kubernetes clusters, enhancing application deployment and management in containerized environments.

  • Containers Server: Enables operations with Docker, Podman, and OCI-compatible container engines, supporting seamless container management.


Model Context Protocol Servers in Quarkus/Java

This project contains Model Context Protocol servers, implemented in Java using the Quarkus MCP server framework.

These servers extend the capabilities of your MCP enabled LLM (Large Language Model) AI applications. They also work in MCP enabled LLM applications, like Claude Desktop. You can find other clients on the Awesome MCP Clients page.

Running the Servers

All of these servers are available to run with jbang everywhere: Java, JavaScript, Python and more. Where it says jbang it can be replaced with npx @jbangdev/jbang, uvx jbang or pipx jbang depending on your preference.

Servers

jdbc

The jdbc server can be used to store and retrieve data from a database given just a JDBC URL. You can use any JDBC database, like Postgres, MySQL, Oracle, Sqlite, etc.

jbang jdbc@quarkiverse/quarkus-mcp-servers

See more in the jdbc readme.

jvminsight

The jvminsight server can be used to inspect a running JVM process.

jbang jvminsight@quarkiverse/quarkus-mcp-servers

See more in the jvminsight readme.

filesystem

The filesystem server is a file system server that can serve files from a file system.

jbang filesystem@quarkiverse/quarkus-mcp-servers [path1] [path2] ...

See more in the filesystem readme.

jfx

The jfx server exposes a canvas that can be used to make drawings using JavaFX.

jbang jfx@quarkiverse/quarkus-mcp-servers

See more in the jfx readme.

kubernetes

The kubernetes server can be used to interact with a Kubernetes cluster.

jbang kubernetes@quarkiverse/quarkus-mcp-servers

containers

The containers server lets you work with Docker/Podman/OCI compatible container engines.

jbang containers@quarkiverse/quarkus-mcp-servers

wolfram

The wolfram server can be used to perform web search optimized for use by a large language model through the Wolfram Alpha LLM API.

jbang wolfram@quarkiverse/quarkus-mcp-servers

Other Quarkus MCP Based Servers

WildFly

A WildFly MCP server that allows interaction with WildFly running servers.

You can check this WildFly vlog that demonstrates its capabilities.

Read more in the WildFly MCP Server readme.

Ideas for Other Servers

If you have ideas for other servers, feel free to contribute them to this project.

If missing ideas, look at the reference servers at https://github.com/modelcontextprotocol/servers and see if you can implement them in this project.

Other ideas:

  • zulip
  • jfr/java hooked to jmx/jfr
  • quarkus dev mode
  • ...

Contributing

To get started, clone the repository and build it:

git clone https://github.com/quarkiverse/quarkus-mcp-servers
cd quarkus-mcp-servers
mvn clean install

Then run the following commands to generate a new server, for example, jfr:

mkdir jfr
cd jfr
jbang init -t mcp jfr

This will create the jfr directory with a Hello World MCP server.

You can then build it:

mvn clean install

To wire it into the full project, add <module>jfr</module> to the root pom.xml file.

Make sure you have added useful content to the README.md file and updated any demo images.

Then open a PR!