Advanced Java Mobile App Build -- 2
Budget: ₹600 – ₹1,500 INR
I’m developing an advanced programming assignment that is organised in three sequential parts—A, B and C—and I’d like a skilled Java developer to step in and see each stage through to completion.
1. Overview
In this group assignment you will design and build a JavaFX desktop application that helps
students carry out everyday campus activities — for example booking a resource, arranging an
appointment with a lecturer, or submitting a leave application. Your application becomes intelligent by
combining two modern techniques:
• Retrieval-Augmented Generation (RAG): the app answers questions using a Large
Language Model (LLM) that is grounded in a local campus knowledge base stored as plain text
files.
• The Model Context Protocol (MCP): the app talks to a supplied Campus Information MCP
server to discover and use Tools, Resources and Prompts over an HTTP/SSE connection.
You are given a complete, working Campus Information MCP server and a reference JavaFX
client. Your job is to implement your own MCP client inside a polished JavaFX application of your
own design. Three reference guides accompany this brief: a guide to RAG and LLMs, a guide to the
MCP server and client, and a walkthrough of the reference client implementation.
6.1 Part A — Analysis and Design (submit a report)
A single PDF design report containing:
• Problem definition and objectives for your chosen campus activity.
• Requirements specification (functional and non-functional).
• A use case diagram with brief use case descriptions.
• UI wireframes / sketches (hand-drawn, Figma, or any tool).
• A class diagram and an explanation of your OOP design.
• An event-handling plan (which UI events trigger which actions).
5
• A data-storage design describing your text-file formats (no database).
• An architecture overview showing the JavaFX app, the MCP client, the LLM and the MCP
server.
• A tool-usage and planning section (which MCP tools/resources/prompts you will use, and your
task plan/timeline).
6.2 Part B — Coding (submit the source code)
A buildable Maven/Gradle JavaFX project (source only — exclude build output) that:
• Implements your design as a working JavaFX application.
• Connects to the supplied MCP server over HTTP/SSE and uses at least two of its tools plus at
least one resource or prompt.
• Includes a RAG question-answering feature grounded in the text-file knowledge base.
• Reads and writes application data to text files only.
• Validates input and handles errors (e.g. server offline, missing fields) gracefully.
• Is organised (e.g. MVC), readable and commented appropriately, with a short README
explaining how to build and run it.
6.3 Part C — Demo and Understanding (live presentation)
A live demonstration to your tutor (around 15–20 minutes per group) in which you run the application,
show the MCP and RAG features working, and answer individual questions about your design and
code. Every group member must be present and must be able to explain the parts they contributed
1. Overview
In this group assignment you will design and build a JavaFX desktop application that helps
students carry out everyday campus activities — for example booking a resource, arranging an
appointment with a lecturer, or submitting a leave application. Your application becomes intelligent by
combining two modern techniques:
• Retrieval-Augmented Generation (RAG): the app answers questions using a Large
Language Model (LLM) that is grounded in a local campus knowledge base stored as plain text
files.
• The Model Context Protocol (MCP): the app talks to a supplied Campus Information MCP
server to discover and use Tools, Resources and Prompts over an HTTP/SSE connection.
You are given a complete, working Campus Information MCP server and a reference JavaFX
client. Your job is to implement your own MCP client inside a polished JavaFX application of your
own design. Three reference guides accompany this brief: a guide to RAG and LLMs, a guide to the
MCP server and client, and a walkthrough of the reference client implementation.
6.1 Part A — Analysis and Design (submit a report)
A single PDF design report containing:
• Problem definition and objectives for your chosen campus activity.
• Requirements specification (functional and non-functional).
• A use case diagram with brief use case descriptions.
• UI wireframes / sketches (hand-drawn, Figma, or any tool).
• A class diagram and an explanation of your OOP design.
• An event-handling plan (which UI events trigger which actions).
5
• A data-storage design describing your text-file formats (no database).
• An architecture overview showing the JavaFX app, the MCP client, the LLM and the MCP
server.
• A tool-usage and planning section (which MCP tools/resources/prompts you will use, and your
task plan/timeline).
6.2 Part B — Coding (submit the source code)
A buildable Maven/Gradle JavaFX project (source only — exclude build output) that:
• Implements your design as a working JavaFX application.
• Connects to the supplied MCP server over HTTP/SSE and uses at least two of its tools plus at
least one resource or prompt.
• Includes a RAG question-answering feature grounded in the text-file knowledge base.
• Reads and writes application data to text files only.
• Validates input and handles errors (e.g. server offline, missing fields) gracefully.
• Is organised (e.g. MVC), readable and commented appropriately, with a short README
explaining how to build and run it.
6.3 Part C — Demo and Understanding (live presentation)
A live demonstration to your tutor (around 15–20 minutes per group) in which you run the application,
show the MCP and RAG features working, and answer individual questions about your design and
code. Every group member must be present and must be able to explain the parts they contributed