javaConf-mcp-server
Java Conferences MCP Server is a tool that allows AI models to access information about upcoming Java conferences by analyzing data from a GitHub repository. It utilizes Spring Boot and Spring AI, focusing on conference details like names, locations, and call-for-paper links.
๐ Java Conferences MCP Server ๐
This is an MCP server for Java conferences, built using Spring boot and Spring AI with MCP starter.
๐ก This project provides a tool function that allows AI models to retrieve information about upcoming Java conferences by parsing a public GitHub repository and asking questions about conference names, CPF links, locations, CPF status (open/closed), and more.
Data Source
The server fetches data by parsing the README.md
file from the ๐ javaconferences/javaconferences.github.io repository.
The specific URL is configured in application.properties
and defaults to:
https://raw.githubusercontent.com/javaconferences/javaconferences.github.io/main/README.md
Provided Tool
- Name:
getJavaConferences
- Description: Get information about Java conferences for a specific year (if specified and found in the source) or the current year by default. Parses data for all years found under H3 headings in the source markdown file.
- Input Parameter:
year
(String, Optional): The 4-digit year to retrieve conferences for. If omitted or invalid, defaults to the current year.
- Output: A list of JSON objects, each representing a conference with the following fields:
conferenceName
(String)date
(String)location
(String)isHybrid
(Boolean)cfpLink
(String) - URL for the Call for Papers, if availablecfpDate
(String) - Closing date for CFP, if availablelink
(String) - Main conference linkcountry
(String)
MCP Server Architecture
Configuration
Connecting an MCP Client (e.g., Claude Desktop)
To connect an MCP client like Claude Desktop to this server:
-
Configure your MCP client to connect to the server. For Claude Desktop, you might update your
claude_desktop_config.json
file like this:{ "mcpServers": { "javaConf-mcp-server": { "command": "java", // "command": "PATH_TO_USER/.sdkman/candidates/java/current/bin/java", /* in my case i'm using the java version installed by sdkman */ "args": [ "-jar", "PATH_TO_PROJECT/javaConf-mcp-server/target/javaconf-mcp-server-0.0.1-SNAPSHOT.jar" ] } } }
-
Start the MCP client and ensure that it is connected to the server.
-
Use the tool by asking questions like:
- "What are the upcoming Java conferences?"
- "What are hybrid conferences?"
- "Give the CPF link of Jfokus conference to submit a talk"
Example of a conversation with the MCP server
Tech Stack
Support
- โญ๏ธ๏ธ Star this repository if you find it useful.
- ๐๏ธ If you find a bug, raise an issue or fix it and send a pull request.
- ๐ข๏ธ If you have any feature requests, raise an issue or send a pull request.
- ๐คฒ If you have a moment, don't forget to make a duaa for me and my parents.