N Lobby

N Lobby

minagishl

Connects to N Lobby school portal to retrieve academic data like news, announcements, course progress, and calendar events for students, staff, and parents.

Integrates with N Lobby school portal through browser-based authentication to provide secure access to academic data including news, announcements, course progress, and calendar events for students, staff, and parents.

3293 views1Local (stdio)

What it does

  • Authenticate with N Lobby portal via browser
  • Retrieve school announcements and news
  • Access course progress and academic data
  • View calendar events and schedules
  • Manage required course information
  • Access learning resources and materials

Best for

Students tracking course progressParents monitoring child's academic statusStaff accessing school informationAI assistants needing school data integration
Browser-based authenticationSecure session management with cookiesMultiple user role support

About N Lobby

N Lobby is a community-built MCP server published by minagishl that provides AI assistants with tools and capabilities via the Model Context Protocol. Securely access academic data, course progress, and announcements via N Lobby, integrating with Power School and parent It is categorized under developer tools.

How to install

You can install N Lobby in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

License

N Lobby is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

N Lobby MCP Server

Note: The developer assumes no responsibility for any damages that may occur from using this MCP server. This software was developed for educational purposes and its operation is not guaranteed.

A Model Context Protocol (MCP) server for accessing N Lobby school portal data. This server provides secure access to school information including announcements, schedules, and learning resources through browser-based authentication.

Features

  • Browser-based Authentication: Interactive login via automated browser window
  • Cookie-based Session Management: Secure session handling with NextAuth.js cookies
  • School Information Access: Retrieve announcements, schedules, and learning resources
  • Required Courses Management: Access required course information and academic data
  • Multiple Calendar Types: Support for both personal and school calendars
  • User Role Support: Different access levels for students, parents, and staff
  • MCP Protocol Compliance: Full compatibility with MCP-enabled AI assistants
  • Advanced Testing Tools: Built-in debugging and testing capabilities

Installation

Option 1: Install from npm (Recommended)

npm install -g nlobby-mcp

Option 2: Development Installation

  1. Clone the repository:
git clone https://github.com/minagishl/nlobby-mcp.git
cd nlobby-mcp
  1. Install dependencies:
pnpm install
  1. Set up environment variables:
cp .env.example .env
# Edit .env if needed (default values should work)
  1. Build the project:
pnpm run build

Configuration

Create a .env file with the following variables (optional, defaults provided):

# N Lobby Configuration
NLOBBY_BASE_URL=https://nlobby.nnn.ed.jp

# MCP Server Configuration
MCP_SERVER_NAME=nlobby-mcp
MCP_SERVER_VERSION=1.0.0

Usage

Running the Server

For npm installation:

nlobby-mcp

For development installation:

pnpm run start
Setup with Cursor and Other MCP Clients

Cursor IDE Setup

Install MCP Server

Add the following to your Cursor settings (~/.cursor/config.json):

{
  "mcpServers": {
    "nlobby": {
      "command": "npx",
      "args": ["-y", "nlobby-mcp"],
      "env": {
        "NLOBBY_BASE_URL": "https://nlobby.nnn.ed.jp"
      }
    }
  }
}

Claude Desktop Setup

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "nlobby": {
      "command": "npx",
      "args": ["-y", "nlobby-mcp"],
      "env": {
        "NLOBBY_BASE_URL": "https://nlobby.nnn.ed.jp"
      }
    }
  }
}

Other MCP Clients

For any MCP-compatible client, use:

  • Command: nlobby-mcp (if installed globally) or node /path/to/nlobby-mcp/dist/index.js
  • Protocol: stdio
  • Environment: Optional environment variables as listed in Configuration section

MCP Resources

The server provides the following resources:

  • nlobby://news - School news and notices
  • nlobby://schedule - Daily class schedule and events
  • nlobby://required-courses - Required courses and academic information
  • nlobby://user-profile - Current user information

MCP Tools

Available tools:

Authentication Tools

  • interactive_login - Open browser for manual login to N Lobby (recommended)
  • login_help - Get personalized login help and troubleshooting
  • set_cookies - Manually set authentication cookies
  • check_cookies - Check authentication cookie status
  • verify_authentication - Verify authentication status across all clients

Data Retrieval Tools

  • get_news - Retrieve school news with filtering and sorting options
  • get_news_detail - Retrieve detailed information for a specific news article
  • get_required_courses - Retrieve required courses information with filtering options
  • get_schedule - Get schedule for a specific date (backward compatibility)
  • get_calendar_events - Get calendar events with advanced options (personal/school)
  • test_calendar_endpoints - Test both personal and school calendar endpoints
  • mark_news_as_read - Mark news articles as read (supports multiple IDs)

Debugging Tools

  • health_check - Test N Lobby API connection
  • debug_connection - Debug N Lobby connection with detailed information
  • test_page_content - Test page content retrieval and show sample content
  • test_trpc_endpoint - Test specific tRPC endpoint with detailed response

MCP Prompts

This server does not provide any pre-configured prompts.

Authentication Flow

Method 1: Interactive Browser Login (Recommended)

  1. Use the interactive_login tool (no credentials required)
  2. A browser window will open to N Lobby
  3. Complete the login process manually in the browser
  4. The system will detect when you're logged in and extract cookies automatically
  5. Access real N Lobby data immediately

Method 2: Manual Cookie Setup

  1. Login to N Lobby via web browser
  2. Extract cookies from browser developer tools:
    • Open Developer Tools (F12)
    • Go to Application/Storage tab
    • Copy all cookies as a string
  3. Use set_cookies tool with the complete cookie string
  4. Use health_check tool to verify connection
  5. Access real N Lobby data via other tools

Quick Start Examples

For Students

# Get help for your student account
login_help email="your.name@nnn.ed.jp"

# Use interactive login (recommended)
interactive_login

# Get today's news
get_news

# Get detailed information for a specific news article
get_news_detail newsId="980"

# Get news detail and mark as read
get_news_detail newsId="980" markAsRead=true

# Get personal calendar events for today
get_calendar_events calendar_type="personal" period="today"

# Get school calendar events for this week
get_calendar_events calendar_type="school" period="week"

# Get required courses information
get_required_courses

# Get required courses for a specific grade
get_required_courses grade=2

# Mark a news article as read (single ID)
mark_news_as_read ids=["980"]

For Staff

# Get help for your staff account
login_help email="your.name@nnn.ac.jp"

# Use interactive login
interactive_login

# Test both calendar endpoints
test_calendar_endpoints

For Parents

# Get help for your parent account
login_help email="parent@gmail.com"

# Use interactive login
interactive_login

# Check your child's news
get_news

# Get your child's schedule
get_calendar_events calendar_type="personal" period="today"

Troubleshooting

# Get general help
login_help

# Check connection status
health_check

# Check cookie status
check_cookies

# Verify authentication across all systems
verify_authentication

# Debug connection with detailed info
debug_connection

# Test page content retrieval
test_page_content endpoint="/news"

Required Courses

The get_required_courses tool allows you to retrieve academic course information:

# Get all required courses
get_required_courses

# Filter by grade level
get_required_courses grade=1
get_required_courses grade=2

# Combine multiple filters
get_required_courses grade=2 semester="2024"

The response includes comprehensive course information:

  • Course Details: Subject code/name, curriculum code/name
  • Academic Credits: Academic credit hours and approved credits
  • Progress Tracking: Report completion percentage, average scores
  • Status Information: Acquisition status, evaluation grades
  • Test Information: Exam status, periodic exam results, makeup exam URLs
  • Schooling Data: Attendance counts and requirements
  • Time Information: Term year, grade level (1年次, 2年次, 3年次)
  • Computed Fields: Progress percentage, completion status, average scores

Calendar Events

The get_calendar_events tool supports advanced options:

# Get personal calendar for today
get_calendar_events calendar_type="personal" period="today"

# Get school calendar for this week
get_calendar_events calendar_type="school" period="week"

# Get events for a specific date range
get_calendar_events calendar_type="personal" from_date="2024-01-15" to_date="2024-01-20"

# Get events for a single day
get_calendar_events calendar_type="personal" from_date="2024-01-15"

Cookie Format

When using set_cookies, provide the complete cookie string from browser:

__Secure-next-auth.session-token=ey...; __Host-next-auth.csrf-token=abc123...; other-cookies=values;

User Types

The server supports three user types based on email domain:

  • Students: @nnn.ed.jp
  • Staff: @nnn.ac.jp
  • Parents: Any other registered email addresses (Gmail, Yahoo, company emails, etc.)

Development

Scripts

  • pnpm run build - Build the TypeScript project
  • pnpm run dev - Watch mode for development
  • pnpm run start - Start the MCP server
  • pnpm run test - Run tests
  • pnpm run lint - Lint the code
  • pnpm run format - Format the code

Project Structure

src/
├── index.ts              # Entry point
├── server.ts             # MCP server implementation
├── api.ts                # N Lobby API integration
├── browser-auth.ts       # Browser automation for login
├── credential-manager.ts # User credential validation and management
├── nextauth.ts           # NextAuth.js session handling
├── trpc-client.ts        # tRPC client for API calls
├── config.ts             # Configuration management
├── logger.ts             # Logging utilities
└── types.ts              # TypeScript type definitions

Architecture

The server uses multiple layers for authentication and API access:

  1. **Browser A

README truncated. View full README on GitHub.

Alternatives

Related Skills

Browse all skills
ui-design-system

UI design system toolkit for Senior UI Designer including design token generation, component documentation, responsive design calculations, and developer handoff tools. Use for creating design systems, maintaining visual consistency, and facilitating design-dev collaboration.

6
cli-builder

Guide for building TypeScript CLIs with Bun. Use when creating command-line tools, adding subcommands to existing CLIs, or building developer tooling. Covers argument parsing, subcommand patterns, output formatting, and distribution.

2
openai-knowledge

Use when working with the OpenAI API (Responses API) or OpenAI platform features (tools, streaming, Realtime API, auth, models, rate limits, MCP) and you need authoritative, up-to-date documentation (schemas, examples, limits, edge cases). Prefer the OpenAI Developer Documentation MCP server tools when available; otherwise guide the user to enable `openaiDeveloperDocs`.

0
api-documenter

Master API documentation with OpenAPI 3.1, AI-powered tools, and modern developer experience practices. Create interactive docs, generate SDKs, and build comprehensive developer portals. Use PROACTIVELY for API documentation or developer portal creation.

0
ydc-ai-sdk-integration

Integrate Vercel AI SDK applications with You.com tools (web search, AI agent, content extraction). Use when developer mentions AI SDK, Vercel AI SDK, generateText, streamText, or You.com integration with AI SDK.

0
mcp-developer

Use when building MCP servers or clients that connect AI systems with external tools and data sources. Invoke for MCP protocol compliance, TypeScript/Python SDKs, resource providers, tool functions.

0