Token导航 LogoToken导航TokenDH.com
neis API logo
运维云端stdio官方级别未说明来源级核验

neis API

MCP Server

一个基于SSE的MCP服务器,提供NEIS教育信息开放门户的API访问服务,包括学校信息和学籍管理功能。

工具数

3

提示词数

0

GitHub Stars

0

资源数

0
PythonVS Code云端部署VS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

arapodcho

提供方

arapodcho

最后核验

2026/5/17 20:19

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv .venv

详细介绍

mcp_server_neis_api

基于SSE的服务器,将NEIS(Nice)教育信息开放门户API公开为Model Context Protocol(MCP)服务器。

特点

  • 传输方式:Server-Sent Events(SSE)
  • 默认端口: 8000
  • 提供工具(Tools):

- get_school_info(school_name) :学校基本信息(学校名称/学校代码/教育厅等) - get_school_schedule(school_code, org_code, from_date, to_date) :学校代码+教育厅代码基础日程(学士日程) - get_school_schedule_by_name(school_name, from_date, to_date, grade=[1,2,3], target_org=None) :直接按学校名称查询日程表(包括年级过滤器)

  • 如果环境变量中没有NEIS服务密钥,则操作为降级模式:每个查询结果最多返回5个

首选参数(.env)

.env 在文件(或环境变量)中指定以下内容:

NEIS_SERVICE_KEY=당신의_서비스_키

替代变量名: SERVICE_KEY (两者中只需要一个)

如果没有密钥:

  • 结果最多限制为5个。 message 在字段中 Success (degraded mode: key missing, limited to 5)显示。
  • 教育局/学校日程表API调用参数中的页面大小(pSize)强制为5。

安装和运行

git clone 
cd mcp_server_neis_api
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install -r requirements.txt  # (requirements.txt가 있다면)
python src/server.py  # 기본 8000 포트에서 SSE 서버 시작

服务器运行时输出示例:

Start MCP server

默认端口在FastMCP内部以8000驱动(如果没有单独设置)。

使用MCP Inspector进行测试

可以使用MCP Inspector直接导航服务器。

启动命令:

npx @modelcontextprotocol/inspector python ./server.py

之后,您可以从Inspector UI连接到SSE,直接查看工具列表和调用。

客户端设置JSON示例

在MCP客户端(例如VS Code扩展或定制启动器)上使用的设置示例:

{
	"mcpServers": {
		"neis_org": {
			"type": "python",
			"command": "python",
			"args": ["./src/server.py"],
			"transport": {
				"type": "sse",
				"port": 8000
			},
			"env": {
				"NEIS_SERVICE_KEY": "${env:NEIS_SERVICE_KEY}"  
			}
		}
	}
}
port如果省略,则使用缺省值(8000)。将环境变量配置为从操作系统或启动器设置中注入。

工具详细信息

get_school_info

输入: school_name (例如: 진관초등학교) 返回: { valid, message, school_num, school_name[], school_code[], org_name[], org_code[] }

get_school_schedule

输入: school_code, org_code, from_date, to_date (YYYMMDD) 返回: { valid, message, schedule_num, event_date[], event_name[], event_type[], event_content[], valid_grade[6][] }

get_school_schedule_by_name

输入: school_name, from_date, to_date,选择 grade(默认\[1,2,3\]),选择 target_org 返回:日程表项目列表 [ { school_name, event_date, event_name, event_type, event_content, grade } ... ]

降级模式下 school_infoschedule 相关查询最多只返回5个结果。

日期格式

当前服务器函数为输入日期(from_date, to_date)将直接传递给NEIS API,因此建议使用YYYYMMDD格式。

错误处理

  • NEIS API错误 valid=False一起 message 向字段返回原因消息
  • 解析错误 Error parsing ... 消息

开发技巧

  • .env 更改后重新启动服务器才能反映新密钥。
  • 未来扩展:可应用高速缓存、计划重复数据删除、超时/刷新逻辑

许可证

有关本项目的许可,请参阅存储库中的LICENSE文件。

目录标签

目录标签

PythonVS Code云端部署教育信息本地部署API服务学校管理学籍管理SSE

支持客户端

VS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP