N Lobby MCP Server
CLI de N Lobby
Nota: El desarrollador no asume ninguna responsabilidad por los daños que puedan ocurrir al usar esta herramienta. Este software fue desarrollado con fines educativos y su funcionamiento no está garantizado.
Un servidor CLI y de Protocolo de Contexto de Modelo (MCP) de modo dual para acceder a los datos del portal escolar N Lobby. Úselo de forma interactiva desde la terminal con nlobby, o conéctelo a un asistente de IA como servidor MCP con nlobby serve.
Características
Modo CLI: Acceda a los datos de N Lobby directamente desde la terminal: noticias, horarios, cursos, perfil y más.
Modo MCP: Servidor MCP completo compatible con Claude, Cursor y otros asistentes de IA habilitados para MCP.
Autenticación basada en navegador: Inicio de sesión interactivo a través de una ventana de navegador Puppeteer automatizada.
Persistencia de sesión: El modo CLI guarda las cookies en
~/.nlobby/sessionpara un uso posterior sin interrupciones.Acceso a información escolar: Recupere anuncios, horarios y recursos de aprendizaje.
Gestión de cursos obligatorios: Acceda a información de cursos obligatorios y datos académicos.
Múltiples tipos de calendario: Soporte tanto para calendarios personales como escolares.
Soporte de roles de usuario: Diferentes niveles de acceso para estudiantes, padres y personal.
Related MCP server: Remote MCP Server with GitHub OAuth
Instalación
Opción 1: Instalar desde npm (Recomendado)
npm install -g nlobby-cliOpción 2: Instalación de desarrollo
Clone el repositorio:
git clone https://github.com/minagishl/nlobby-cli.git
cd nlobby-cliInstale las dependencias:
pnpm installConstruya el proyecto:
pnpm run buildConfiguración
Cree un archivo .env si necesita anular los valores predeterminados (opcional):
NLOBBY_BASE_URL=https://nlobby.nnn.ed.jp
MCP_SERVER_NAME=nlobby-cli
MCP_SERVER_VERSION=1.0.0Uso de CLI
Autenticación
# Interactive browser login (recommended)
nlobby login
# Set cookies manually
nlobby cookies set "__Secure-next-auth.session-token=ey...;"
# Check current authentication status
nlobby cookies checkNoticias
# List latest news (default: 10, newest first)
nlobby news
# Filter and sort
nlobby news --limit 20 --category お知らせ --sort oldest --unread
# Show full article
nlobby news show 980
# Download the first attachment to /tmp
nlobby news download 980 --index 1 --output-dir /tmp
# Mark as read
nlobby news read 980Horarios y Calendario
# Today's schedule
nlobby schedule
# Specific date
nlobby schedule 2026-04-01
# This week's personal calendar
nlobby calendar
# School calendar for a date range
nlobby calendar --type school --from 2026-04-01 --to 2026-04-07Cursos
# All required courses
nlobby courses
# Filter by grade / semester
nlobby courses --grade 2 --semester 2025Perfil y Salud
nlobby profile
nlobby healthServidor MCP
# Start MCP server (stdio transport)
nlobby serve
# or
nlobby mcpTodos los comandos admiten
--jsonpara generar JSON sin formato en lugar de texto formateado.
Uso de MCP
Configuración de Cursor IDE
Añada lo siguiente a su configuración de Cursor (~/.cursor/config.json):
{
"mcpServers": {
"nlobby": {
"command": "npx",
"args": ["-y", "nlobby-cli", "serve"],
"env": {
"NLOBBY_BASE_URL": "https://nlobby.nnn.ed.jp"
}
}
}
}Configuración de Claude Desktop
Añada a su configuración de Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json en macOS):
{
"mcpServers": {
"nlobby": {
"command": "npx",
"args": ["-y", "nlobby-cli", "serve"],
"env": {
"NLOBBY_BASE_URL": "https://nlobby.nnn.ed.jp"
}
}
}
}Otros clientes MCP
Para cualquier cliente compatible con MCP, utilice:
Comando:
nlobby serve(si está instalado globalmente) onode /ruta/a/dist/index.js serveProtocolo: stdio
Entorno: Variables de entorno opcionales como se indica en la sección de Configuración
Recursos MCP
URI | Descripción |
| Noticias y avisos escolares |
| Horario de clases diario y eventos |
| Cursos obligatorios e información académica |
| Información del usuario actual |
Herramientas MCP
Autenticación
Herramienta | Descripción |
| Abrir navegador para inicio de sesión manual (recomendado) |
| Ayuda personalizada para inicio de sesión y solución de problemas |
| Establecer manualmente las cookies de autenticación |
| Comprobar el estado de las cookies de autenticación |
| Verificar el estado de autenticación en todos los clientes |
Noticias
Herramienta | Parámetros clave | Descripción |
|
| Recuperar noticias escolares con filtrado |
|
| Detalle completo de un artículo específico |
|
| Marcar artículos como leídos |
| Recuento de no leídos y banderas de noticias importantes |
Horarios y Calendario
Herramienta | Parámetros clave | Descripción |
|
| Horario para una fecha (AAAA-MM-DD) |
|
| Eventos del calendario (personal/escolar) |
|
| Probar ambos puntos finales de calendario |
| Definiciones de filtro de calendario Lobby |
Cursos y Exámenes
Herramienta | Parámetros clave | Descripción |
|
| Cursos obligatorios con seguimiento de progreso |
|
| Comprobar si una fecha es día de examen |
| Finalizar modo día de examen | |
| Obtener contraseña de un solo uso para examen |
Cuenta y Navegación
Herramienta | Descripción |
| Extraer información de cuenta de la página Next.js |
| Capturar captura de pantalla de tarjeta de estudiante |
| Actualizar marca de tiempo de último acceso |
| Lista de menú de navegación principal |
| Mensajes de notificación |
| Etiquetas de interés del usuario (con datos de icono opcionales) |
| Definiciones de escala de peso de interés |
Depuración
Herramienta | Parámetros clave | Descripción |
| Probar conexión API de N Lobby | |
|
| Depuración detallada de conexión |
|
| Prueba de recuperación de contenido de página |
|
| Probar un punto final tRPC específico |
Flujo de autenticación
Método 1: Inicio de sesión interactivo en navegador (Recomendado)
CLI:
nlobby loginHerramienta MCP: interactive_login
Se abre una ventana del navegador automáticamente. Complete el inicio de sesión en N Lobby, y las cookies se extraerán y guardarán.
Método 2: Configuración manual de cookies
Inicie sesión en N Lobby en su navegador web
Abra DevTools → Aplicación / Almacenamiento → Cookies
Copie todas las cookies como una cadena
CLI:
nlobby cookies set "__Secure-next-auth.session-token=ey...;"Herramienta MCP: set_cookies cookies="__Secure-next-auth.session-token=ey...;"
Tipos de usuario
El servidor admite tres tipos de usuario según el dominio de correo electrónico:
Tipo | Dominio de correo electrónico |
Estudiantes |
|
Personal |
|
Padres | Cualquier otro correo registrado |
Estructura del proyecto
src/
├── index.ts # Entry point — CLI vs MCP mode detection
├── config.ts # Configuration management
├── logger.ts # Logging utilities
├── trpc-client.ts # tRPC client for API calls
├── types.ts # TypeScript type definitions
├── api/
│ ├── index.ts # NLobbyApi facade + session persistence
│ ├── context.ts # ApiContext interface
│ ├── shared.ts # Shared utilities (fetchRenderedHtml, …)
│ ├── news.ts # News functions
│ ├── schedule.ts # Schedule / calendar functions
│ ├── courses.ts # Course / exam functions
│ ├── account.ts # Account info / student card functions
│ ├── navigation.ts # Navigation / notification / interest functions
│ └── health.ts # Health check / debug functions
├── auth/
│ ├── browser.ts # Puppeteer browser authentication
│ ├── nextauth.ts # NextAuth.js session handling
│ └── credentials.ts # Credential validation and guidance
├── cli/
│ ├── index.ts # Commander program wiring
│ ├── commands/ # login, news, schedule, courses, profile, health, serve
│ └── formatters/ # Human-readable output formatters
└── mcp/
└── server.ts # MCP server (28 tools, 4 resources)Desarrollo
Scripts
pnpm run build # Build (esbuild bundle + tsc type declarations)
pnpm run dev # Watch mode
pnpm run start # Start MCP server
pnpm run lint # Lint
pnpm run format # FormatNotas de seguridad
Las cookies de CLI se almacenan en
~/.nlobby/session(texto plano — protéjalas en consecuencia)El modo MCP mantiene todos los tokens de autenticación solo en memoria
La automatización del navegador se utiliza solo para la autenticación, no para el raspado de datos
No se registran datos confidenciales
Licencia
Este proyecto tiene licencia MIT — consulte el archivo LICENSE para obtener más detalles.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceA Model Context Protocol server that enables interaction with the Canvas Learning Management System API, allowing users to manage courses, assignments, enrollments, and grades within Canvas.54330103JavaScriptMIT
- Flicense-qualityDmaintenanceA Model Context Protocol server that supports remote connections and authenticates users via GitHub OAuth, allowing them to access tools based on their GitHub identity.
- Alicense-qualityDmaintenanceA comprehensive Model Context Protocol server providing educational resources and curriculum planning support with intelligent filtering across multiple educational APIs.10MIT
- Alicense-qualityDmaintenanceA Model Context Protocol server that provides intelligent file reading and semantic search capabilities across multiple document formats with security-first access controls.7MIT
Related MCP Connectors
Read-only MCP server for ClassQuill, a tutoring-business-management platform.
A paid remote MCP for AI agent browser MCP session, built to return verdicts, receipts, usage logs,
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/minagishl/nlobby-cli'
If you have feedback or need assistance with the MCP directory API, please join our Discord server