Juno
БесплатноНе проверенEnables LLMs to interact with MGMU Juno ERP, providing tools to fetch student profile, attendance, fees, schedule, results, and search students.
Описание
Enables LLMs to interact with MGMU Juno ERP, providing tools to fetch student profile, attendance, fees, schedule, results, and search students.
README
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.
🛠️ Setup
Install Dependencies:
npm installConfigure Environment: copy
.env.exampleto.envand fill it in.cp .env.example .env- Student 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.
- Student account:
Build:
npm run build
🏃 Running the Server
npm run dev # live development
# or
npm run build && npm start
The 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 down
This 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
Установка Juno
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/danish-mar/juno-mcpFAQ
Juno MCP бесплатный?
Да, Juno MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Juno?
Нет, Juno работает без API-ключей и переменных окружения.
Juno — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить Juno в Claude Desktop, Claude Code или Cursor?
Открой Juno на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
автор: mcpdotdirectCompare Juno with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
