juno-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@juno-mcpshow my attendance details"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Juno ERP MCP Client
A modular Model Context Protocol (MCP) server for interacting with MGMU Juno ERP. It exposes both student (own data) and employee (university-wide management) capabilities as tools for use with LLMs (like Claude).
๐ Features
Student tools: profile, academic info, attendance (+ graph), fees, admission, exam results, schedule, courses, search.
Employee tools: university-wide search and the full student-management dashboard (personal info, academics, fees, attendance/marks graphs, exams, transfers, hostel, library, placement, grievances, leave, and more) โ looked up by
studentId.Profile-image proxy:
search_universityrewrites profile-picture URLs to this server, which streams the authenticated image back so the AI panel can render it directly.Optional proxy: route ERP traffic through an HTTP/HTTPS/SOCKS proxy, or auto-pick a free one.
Related MCP server: FAST-NUCES Flex Student Portal MCP Server
๐ ๏ธ Setup
Install Dependencies:
npm installConfigure Environment: copy
.env.exampleto.envand fill it in.cp .env.example .envStudent account:
STUDENT_EMAIL/STUDENT_PASSWORD(legacyemail/passwordstill work).Employee account:
EMPLOYEE_EMAIL/EMPLOYEE_PASSWORDโ required for the employee tools and the image proxy.PUBLIC_URL: the externally reachable base URL of this server (used to build image links). Defaults tohttp://localhost:<PORT>.Proxy (optional): set
PROXY_URL, orPROXY_USE_RANDOM=trueto auto-pick a free one. No proxy is used unless configured.
Build:
npm run build
๐ Running the Server
npm run dev # live development
# or
npm run build && npm startThe MCP endpoint is http://localhost:8987/mcp. Health check at /health.
๐ผ๏ธ Profile-image proxy
search_university returns each hit with its imageUrl rewritten to:
<PUBLIC_URL>/img/getStudentProfileImageById.json?id=<id>
<PUBLIC_URL>/img/getEmployeeProfileImageById.json?id=<id>Requesting that URL makes the server fetch the image from the ERP using the logged-in employee session and stream it back, so the AI can display it without its own credentials. Only the two known profile-image endpoints are proxied (it is not an open proxy).
๐ณ Docker Support
The image is published to GHCR: ghcr.io/danish-mar/juno-mcp:master.
docker-compose up -d --build
docker logs -f juno-mcp
docker-compose downThis depends on juno-erp-client@^1.1.0 from npm, so the Docker build's
npm install resolves it from the registry with no extra setup.
๐งฐ Available Tools
Student (logged-in student's own data)
get_profile, get_academic_info, get_admission_details, get_remaining_fees,
get_fees_structure, get_attendance_details, get_attendance_graph,
get_exam_details, get_student_results, get_today_schedule,
get_courses_for_term, search_student
Employee (staff account)
search_universityโ search all students/staff; profile images are proxied.Per-student lookups (take a
studentId):get_student_personal_information,get_student_academic_info,get_student_admission_details,get_student_fees_details,get_student_fee_structure,get_student_receivable,get_student_attendance_details,get_student_attendance_graph,get_student_marks_graph,get_student_clinical_attendance_analysis,get_student_exam_details,get_student_transfer_details,get_student_transfer_history,get_student_event_details,get_student_grievances,get_student_library_details,get_student_placement_details,get_student_hostel_details,get_student_course_file_details,get_student_leave_history
๐ Security
Credentials are loaded from
.env(gitignored), never hardcoded.Sessions are kept in memory per role and refreshed automatically on expiry.
The image proxy is restricted to the two ERP profile-image endpoints.
๐ License
ISC
This server cannot be deployed
Maintenance
Related MCP Connectors
- uNotesOAuthnet.unotes
Search university course materials, your flashcards, quizzes, streak and quota. All tools read-only.
Gateway between LLM agents and world data through eight tools and a bundled endpoint catalog.
Self-hosted AI prompt library: prompts, collections, tags, teams, chains. 29 MCP tools for agents.
Provides tools for searching Google Workspace documentation and much more.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables LLM interaction with the Macau University of Science and Technology (M.U.S.T.) campus system, including automated login to Wemust and Moodle, retrieving class schedules, checking assignments and deadlines, downloading course materials, and managing course content.73MIT
- FlicenseNot gradedqualityCmaintenanceConnects AI assistants to the FAST-NUCES Flex Student Portal, enabling students to query their academic data including attendance, marks, transcript, and fee reports through natural language conversations.6-
- FlicenseNot gradedqualityCmaintenanceEnables LLMs to manage student records through natural language by wrapping a simple HTTP student server's endpoints as MCP tools.-
- FlicenseNot gradedqualityCmaintenanceEnables an AI assistant to help students by providing tools for math calculations, attendance tracking, marks analysis, reading PDF notes, searching lecture notes, and checking college regulations.-