Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Juno

БесплатноНе проверен

A modular Model Context Protocol (MCP) server for interacting with MGMU Juno ERP, exposing student data tools for LLMs.

GitHubEmbed

Описание

A modular Model Context Protocol (MCP) server for interacting with MGMU Juno ERP, exposing student data tools for LLMs.

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_university rewrites 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

  1. Install Dependencies:

    npm install
    
  2. Configure Environment: copy .env.example to .env and fill it in.

    cp .env.example .env
    
    • Student account: STUDENT_EMAIL / STUDENT_PASSWORD (legacy email / password still 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 to http://localhost:<PORT>.
    • Proxy (optional): set PROXY_URL, or PROXY_USE_RANDOM=true to auto-pick a free one. No proxy is used unless configured.
  3. 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

from github.com/danish-mar/juno-mcp

Установка Juno

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/danish-mar/juno-mcp

FAQ

Juno MCP бесплатный?

Да, Juno MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Juno?

Нет, Juno работает без API-ключей и переменных окружения.

Juno — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Juno в Claude Desktop, Claude Code или Cursor?

Открой Juno на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Juno with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории ai