NEIS MCP Server
MCP (Model Context Protocol) server for Korean NEIS (National Education Information System).
Features
Provides 4 MCP tools to access Korean school information:
1. neis.school.search
Search for schools by name.
Input:
name(string): School name to search for
Output:
schoolCode: School identifierofficeCode: Education office codeschoolName: Full school nameaddress: School addresstype: School type
2. neis.meal
Get school meal information.
Input:
schoolCode(string): School code from searchofficeCode(string): Office code from searchymd(string, optional): Date in YYYYMMDD format (defaults to today)
Output:
date: Query datemeals: Array of meal information (breakfast, lunch, dinner)
3. neis.timetable
Get class timetable.
Input:
schoolCode(string): School code from searchgrade(string, optional): Grade levelclassName(string, optional): Class name/numberymd(string, optional): Date in YYYYMMDD format (defaults to today)
Output:
date: Query datetimetable: Array of class periods with subjects and teachers
4. neis.schedule
Get school events and schedules.
Input:
schoolCode(string): School code from searchofficeCode(string, optional): Office code from searchymd(string, optional): Date in YYYYMMDD format (defaults to today)
Output:
date: Query dateevents: Array of school events
Setup
Environment Variables
Create a .env.local file:
Get your NEIS API key from: https://open.neis.go.kr/
Installation
Development
Deploy to Vercel
Push this repository to GitHub
Import to Vercel
Add
NEIS_API_KEYenvironment variableDeploy
Usage with MCP Clients
Connect to this server using the deployed Vercel URL:
SSE Transport:
HTTP Transport:
Example Workflow
Search for a school:
neis.school.search({ name: "서울고등학교" })Use the returned codes to get meal info:
neis.meal({ schoolCode: "B100000658", officeCode: "B10", ymd: "20240115" })Get timetable:
neis.timetable({ schoolCode: "B100000658", grade: "1", className: "1" })Check school events:
neis.schedule({ schoolCode: "B100000658", officeCode: "B10" })
Tech Stack
Next.js 15 (App Router)
TypeScript
mcp-handler ^1.0.3
@modelcontextprotocol/sdk
zod (schema validation)
axios (HTTP client)
Vercel (deployment)
License
MIT
This server cannot be installed