Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
nomadamas avatar

K Schoollunch Menu

  • 2.8k installs
  • 6.5k repo stars
  • Updated July 27, 2026
  • nomadamas/k-skill

k-schoollunch-menu is a skill for Korean NEIS school lunch lookups via k-skill-proxy HTTP APIs.

About

k-schoollunch-menu queries South Korea NEIS school basic info and meal menus through a hosted k-skill-proxy that holds the KEDU_INFO_KEY server side. Users supply a natural-language education office name, school name, and optional meal date defaulting to today in Korea time without memorizing codes. The workflow calls /v1/neis/school-search with educationOffice and schoolName, resolves ambiguous offices via candidate_codes, disambiguates multiple schoolInfo rows by address, then fetches /v1/neis/school-meal with ATPT_OFCDC_SC_CODE and SD_SCHUL_CODE plus YYYYMMDD. Optional mealKindCode filters breakfast, lunch, or dinner. Responses summarize DDISH_NM menus with br tags converted to line breaks and note empty results for holidays or missing data. Self-hosters may set KSKILL_PROXY_BASE_URL; clients never need the NEIS key. Agents must not guess inputs or pick schools without user confirmation when multiple matches appear.

  • Natural-language education office and school name inputs.
  • Two-step school-search then school-meal proxy workflow.
  • Ambiguous office and multi-school disambiguation rules.
  • KEDU_INFO_KEY kept only on the proxy server.
  • User-friendly meal summaries instead of raw JSON dumps.

K Schoollunch Menu by the numbers

  • 2,771 all-time installs (skills.sh)
  • +127 installs in the week ending Jul 28, 2026 (Skillselion tracking)
  • Ranked #76 of 560 CLI & Terminal skills by installs in the Skillselion catalog
  • Security screen: LOW risk (skills.sh audit)
  • Data as of Jul 28, 2026 (Skillselion catalog sync)
At a glance

k-schoollunch-menu capabilities & compatibility

Capabilities
education office natural language resolution · school search and code extraction · meal date formatting in korea time · multi match disambiguation prompts · readable menu summarization from neis fields
Use cases
api development · translation
Runs
Hosted SaaS
Pricing
Free
From the docs

What k-schoollunch-menu says it does

학교명이 여러 건 — 사용자 선택 없이 임의로 고르지 말 것
SKILL.md
npx skills add https://github.com/nomadamas/k-skill --skill k-schoollunch-menu

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs2.8k
repo stars6.5k
Security audit3 / 3 scanners passed
Last updatedJuly 27, 2026
Repositorynomadamas/k-skill

How do I fetch a school's lunch menu when I only know the education office and school name in Korean?

Look up Korean NEIS school lunch menus by natural-language education office and school name through k-skill-proxy HTTP routes.

Who is it for?

Agents answering Korean school meal questions without handling NEIS API keys directly.

Skip if: Skip for non-Korean school systems or meal planning without NEIS data sources.

When should I use this skill?

User asks for Korean school lunch menus, 급식 식단, or NEIS meal lookups by school name.

What you get

Resolved school codes and a readable meal summary for the requested date.

Files

SKILL.mdMarkdownGitHub ↗

Korean School Lunch Menu (NEIS)

What this skill does

나이스(NEIS) 교육정보 개방 포털의 학교기본정보·급식식단정보k-skill-proxy가 중계하는 HTTP API로 조회한다.

  • 사용자는 시도교육청 이름(자연어)과 학교 이름, 날짜만 말하면 된다.
  • 에이전트는 먼저 /v1/neis/school-search로 학교를 찾고, 응답의 SD_SCHUL_CODE·ATPT_OFCDC_SC_CODE/v1/neis/school-meal을 호출한다.
  • 인증키(KEDU_INFO_KEY)는 프록시 서버에만 두고, 클라이언트는 키 없이 프록시 URL만 호출한다.

When to use

  • "서울특별시교육청 미래초등학교 오늘 급식 뭐야?"
  • "○○초 급식 식단 알려줘"
  • "이번 주 화요일 중학교 급식 메뉴"
  • "급식 메뉴 조회해줘" (교육청·학교·날짜 확인 후 진행)

Prerequisites

  • 인터넷 연결
  • curl 사용 가능 환경
  • k-skill-proxyKEDU_INFO_KEY가 설정된 배포(기본 hosted 또는 self-host)에 접근 가능할 것

Credential requirements

  • 사용자 측 필수 시크릿 없음.
  • KSKILL_PROXY_BASE_URL — self-host·별도 프록시를 쓸 때만 설정. 비우면 기본 hosted https://k-skill-proxy.nomadamas.org 를 사용한다.
  • KEDU_INFO_KEY프록시 운영 서버 환경에만 둔다.

Proxy base URL

에이전트는 아래처럼 base 를 정한다.

BASE="${KSKILL_PROXY_BASE_URL:-https://k-skill-proxy.nomadamas.org}"
BASE="${BASE%/}"

Workflow

1) Collect inputs (do not guess)

다음이 없으면 사용자에게 짧게 묻는다.

1. 교육청 — 자연어 허용 (예: 서울특별시교육청, 서울, 경기도교육청). 2. 학교명 — 자연어 (예: 미래초등학교, ○○중학교). 3. 급식일YYYYMMDD 또는 사용자가 말한 날짜를 한국 시간 기준으로 YYYYMMDD로 정한다. 생략 시 오늘(한국 시간).

교육청 표현이 애매해 ambiguous_education_office가 나오면, 응답의 candidate_codes를 보여 주고 더 구체적인 이름(예: 경상북도교육청 vs 경상남도교육청)을 받는다.

2) Search school (/v1/neis/school-search)

curl -fsS --get "${BASE}/v1/neis/school-search" \
  --data-urlencode "educationOffice=${EDU_OFFICE}" \
  --data-urlencode "schoolName=${SCHOOL_NAME}"
  • EDU_OFFICE, SCHOOL_NAME은 사용자 입력을 그대로 넣어도 된다. 프록시가 교육청명을 코드로 해석한다.
  • 응답의 resolved_education_office.atpt_ofcdc_sc_code로 실제 매칭된 시도교육청 코드를 확인할 수 있다.

3) Disambiguate when multiple schools match

schoolInfo 본문에서 row여러 개면 사용자에게 학교명·주소(`ORG_RDNMA` 등)를 보여 주고 하나를 고르게 한다.

한 건뿐이면 그 row의 ATPT_OFCDC_SC_CODE, SD_SCHUL_CODE를 다음 단계에 쓴다.

4) Fetch meal (/v1/neis/school-meal)

curl -fsS --get "${BASE}/v1/neis/school-meal" \
  --data-urlencode "educationOfficeCode=${ATPT}" \
  --data-urlencode "schoolCode=${SD}" \
  --data-urlencode "mealDate=${YYYYMMDD}"
  • ATPT / SD는 3단계에서 확정한 코드.
  • 조식·중식·석식만 보고 싶으면 mealKindCode=1|2|3 (선택).

5) Summarize for the user

  • mealServiceDietInfo 안의 row를 기준으로 요약한다.
  • 메뉴 문자열(DDISH_NM 등)의 <br/>는 줄바꿈으로 바꿔 읽기 쉽게 한다.
  • 칼로리·영양 정보 필드가 있으면 한두 줄로 덧붙인다.
  • NEIS가 빈 결과를 주면 "해당 일자 급식 데이터 없음" 가능성을 안내한다.

Upstream reference

Done when

  • 교육청·학교·날짜를 확인했다.
  • 학교 검색으로 단일 학교를 확정했다(또는 사용자가 선택했다).
  • 급식 API 호출에 성공했고, 메뉴를 사용자 친화적으로 정리했다.

Failure modes

  • 프록시에 KEDU_INFO_KEY 미설정 → 503 / upstream_not_configured
  • 교육청 이름이 여러 시도에 걸침 → 400 / ambiguous_education_office
  • 학교명이 여러 건 — 사용자 선택 없이 임의로 고르지 말 것
  • 공휴일·방학·미제공 일자로 빈 급식
  • NEIS API 일시 장애·호출 제한

Notes

  • 학교 코드를 사용자에게 외우게 하지 않는다. 항상 school-searchschool-meal 순서를 따른다.
  • Raw JSON을 그대로 붙여 넣지 말고 요약 위주로 답한다.
  • 자세한 엔드포인트·필드는 docs/features/k-schoollunch-menu.mddocs/features/k-skill-proxy.md를 참고한다.

Related skills

FAQ

Do users need a NEIS API key?

No. KEDU_INFO_KEY lives on the k-skill-proxy server; clients call the proxy URL only.

What if multiple schools match?

Show names and addresses and let the user pick; never choose arbitrarily.

Which API order is required?

Always school-search first to obtain codes, then school-meal for the date.

Is K Schoollunch Menu safe to install?

skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

CLI & Terminalintegrations

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.