Skip to main content
Glama
sonbyobyo

korean-special-education-curriculum-mcp

by sonbyobyo

한국 특수교육 교육과정 MCP

대한민국 2022 개정 특수교육 교육과정의 중학교·고등학교 기본·공통·선택 중심 내용을 공식 출처와 함께 검색하는 읽기 전용 MCP 서버입니다.

기본 설치에는 현행 법정 교육과정 29개 문서가 내장되어 있습니다. 사용자가 교육과정 파일을 따로 내려받거나 Kordoc을 실행할 필요가 없습니다.

가장 쉬운 설치

Claude Desktop: 파일 하나로 설치

  1. GitHub Releases에서 korean-special-education-curriculum-mcp-0.1.0.mcpb를 내려받습니다.

  2. Claude Desktop의 **Settings → Extensions → Advanced settings → Install Extension…**을 엽니다.

  3. 내려받은 .mcpb 파일을 선택합니다.

Claude Desktop에 포함된 Node.js로 실행되므로 Git·Node.js·Python을 별도로 설치하지 않아도 됩니다. 자세한 공식 절차는 Claude의 로컬 MCP 설치 안내를 참고하세요.

Codex: 명령 한 줄

Node.js 20 이상이 필요합니다.

codex mcp add korean-special-education -- npx -y korean-special-education-curriculum-mcp

Codex를 다시 시작한 뒤 /mcp로 연결 상태를 확인합니다. Codex의 STDIO MCP 등록 형식은 OpenAI 공식 MCP 문서에 맞췄습니다.

Claude Code: 명령 한 줄

macOS·Linux:

claude mcp add korean-special-education --scope user -- npx -y korean-special-education-curriculum-mcp

Windows:

claude mcp add korean-special-education --scope user -- cmd /c npx -y korean-special-education-curriculum-mcp

Claude Code에서 /mcp로 연결 상태를 확인합니다. Windows의 cmd /c 사용은 Claude Code 공식 MCP 안내를 따릅니다.

npm 패키지가 공개되기 전 개발판을 시험하려면 저장소를 복제해 로컬 서버를 연결하세요. 릴리스된 .mcpb는 npm 공개 여부와 관계없이 Claude Desktop에서 설치할 수 있습니다.

Related MCP server: ClassCraftMCP

설치 후 첫 질문

특수교육 MCP의 get_coverage_report를 실행해서 현재 수록 범위를 알려줘.

이후에는 다음처럼 요청할 수 있습니다.

2022 개정 특수교육 기본 교육과정에서 고등학교 국어 성취기준을 문서명, 쪽수, 공식 URL과 함께 찾아줘.
[12국어01-02]의 원문을 찾아서 수업 목표로 재구성하되 원문과 재구성안을 구분해줘.
진로와 직업에서 안전 관련 성취기준을 찾아 4차시 수업 흐름과 평가 루브릭 초안을 만들어줘.

무엇이 들어 있나

구분

기본 배포

내용

현행 법정 교육과정

포함

특수교육 별책 1·2·3 및 중·고등학교 준용 일반교육과정 별책 26개

문서 규모

포함

29개 출처, 16,284쪽, 58,605개 검색 청크

공식 출처 추적

포함

고시 번호, 문서명, 쪽수, 목차 경로, 공식 원문 URL

해설·성취수준·평가·연구자료

미포함

권리 조건과 설치 용량 때문에 개발자용 로컬 선택 자료로 분리

원본 HWP·HWPX·PDF

미포함

검색용 기계 추출 데이터만 포함

현행 기준일은 2026-08-19이고 특수교육 기준선은 국가교육위원회 고시 제2026-2호입니다. 별책 2가 준용하는 일반교육과정 중 중·고등학교 범위인 별책 3·4·7·12·14·18·19·22·23~39·41을 포함합니다.

패키지 실측값은 npm 다운로드 약 8.0 MiB, 설치 후 약 54.4 MiB이며 Claude Desktop용 MCPB는 약 9.8 MiB입니다. 운영체제와 npm 캐시에 따라 조금 달라질 수 있습니다.

MCP 도구

  • get_coverage_report: 법정 원문과 선택형 보충자료의 수록·누락 상태 확인

  • list_official_sources: 공식 출처, 고시 번호, URL, 준비 상태 나열

  • search_curriculum: 검색어·학교급·교육과정 유형·교과·자료 종류 검색

  • get_curriculum_chunk: 검색 결과의 더 긴 원문 문맥과 출처 위치 조회

  • find_achievement_standard: [12국어01-02] 같은 성취기준 코드 검색

모든 도구는 읽기 전용이며 로그인이나 API 키가 필요하지 않습니다. 로컬 STDIO 서버이므로 클라이언트에 “인증 미지원”이 표시되는 것은 정상입니다.

수업 설계에서 권장하는 사용법

과목별 Codex·Claude 작업에서 먼저 연간교육과정이나 학교 양식 파일을 첨부하고 다음 순서로 요청하면 좋습니다.

  1. get_coverage_report로 법정 자료 범위를 확인합니다.

  2. find_achievement_standard 또는 search_curriculum으로 공식 성취기준을 찾습니다.

  3. 응답에 sourceId, 쪽수와 공식 URL을 반드시 남깁니다.

  4. 공식 원문, 교사 재구성 목표, 수업 활동, 평가 기준을 서로 다른 항목으로 작성합니다.

  5. 완성된 수업안·활동지·루브릭은 해당 과목 작업의 기존 파일 형식에 맞춥니다.

개발과 선택형 보충자료

기본 사용자는 이 절차를 실행할 필요가 없습니다. 해설·평가·연구자료까지 로컬에서 색인하거나 데이터 갱신에 기여할 때만 사용합니다.

git clone https://github.com/sonbyobyo/korean-special-education-curriculum-mcp.git
cd korean-special-education-curriculum-mcp
npm ci
npm run sources:prepare
npm run check:full

sources:prepare는 공개 자료를 공식 URL에서 내려받아 Kordoc으로 구조화합니다. 게시기관 로그인이 필요한 보충자료는 사용자가 적법하게 확보해 수집기가 안내한 로컬 파일명으로 두어야 하며 Git이나 배포 패키지에 포함되지 않습니다.

배포 산출물 재생성:

npm run data:core
npm run mcpb:validate
npm run mcpb:pack
npm pack

권리와 출처

코드는 MIT 라이선스입니다. 내장 코어 데이터는 국가교육위원회가 공공누리 제1유형으로 제공한 공식 문서의 기계적 변환물이며 출처표시 조건을 따릅니다. 원문별 제목·고시 번호·공식 게시 페이지·SHA-256·변환 내용은 data/core/manifest.json에 기록합니다.

이 프로젝트와 응답은 교육부·국가교육위원회·NCIC의 공식 제품이나 공식 해석이 아닙니다. 실제 교육과정 편성·이수 판단에는 응답에 연결된 최신 공식 원문과 담당 기관 안내를 확인하세요.

상세 이용조건은 LICENSES.md, 출처는 PROVENANCE.md, 감사·제3자 고지는 ACKNOWLEDGEMENTS.md와 THIRD_PARTY_NOTICES.md를 참고하세요. 오류 제보와 기여는 CONTRIBUTING.md, 보안 문제는 SECURITY.md를 이용해 주세요.

Available Tools

5 tools
find_achievement_standard성취기준 코드 조회A
Read-onlyIdempotent

예: 9국어01-01 또는 [12진로01-01] 같은 성취기준 코드를 찾아 출처와 문맥을 반환합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYes
limitNo
curriculumTypeNo

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is known. The description adds that it returns 'source and context,' but doesn't disclose any other behaviors like pagination or error cases, so it's adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One concise sentence with an example, no fluff. It's efficient and front-loaded, earning every character it uses.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With three parameters and no output schema, the description provides the core purpose and output type, but lacks parameter semantics and usage timing. It's sufficient for a simple lookup but leaves gaps for the optional parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the description provides no parameter explanations beyond examples of code formats. The limit and curriculumType parameters are entirely unexplained, leaving the agent to guess their semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool finds achievement standard codes and returns their source and context, with concrete examples of code formats. This is specific and distinct from sibling tools by focusing on code lookup rather than broader curriculum search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for finding achievement standard codes, but it doesn't explicitly state when to prefer this over search_curriculum or other siblings. No exclusions or alternative guidance is provided, so usage context is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_coverage_report교육과정 수록 범위·완전성 확인A
Read-onlyIdempotent

중·고등학교 특수교육 고시 원문과 준용 일반교육과정 별책의 수록 완전성, 아직 별도 수집 중인 보조자료 범위를 보고합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, idempotent, and non-destructive behavior. The description adds context about 'still being collected separately,' indicating the report may reflect incomplete data. However, it does not clarify the report's format, limitations, or any side effects beyond what annotations imply, so it adds modest value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, but it packs substantial detail about the report's content. It is not overly verbose, though splitting into two sentences could improve readability. The core information is front-loaded before the verb, which is acceptable in Korean. Overall, it earns its length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (no parameters, no output schema), the description sufficiently conveys what the report covers. It mentions completeness of certain documents and scope of auxiliary materials, which is the core purpose. Without an output schema, some might expect a clearer description of the return format, but for a simple report tool, this is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so there is no schema to elaborate. The description provides no parameter-related information, which is appropriate. Baseline for 0 parameters is 4, and the description does not need to compensate for missing parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool reports on the completeness of curriculum inclusion and scope of auxiliary materials, which is a clear purpose (a coverage report). It distinguishes from sibling tools that focus on listing, searching, or chunk retrieval. However, it lacks specificity about exactly which documents are covered and the nature of 'auxiliary materials,' so it's not a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for checking coverage/completeness, but it does not explicitly state when to use it versus alternatives, nor does it mention any exclusions. Given the existence of sibling tools (search, list), some inference is possible, but no direct guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_curriculum_chunk교육과정 원문 청크 조회A
Read-onlyIdempotent

검색 결과의 sourceId와 chunkId로 해당 원문 청크와 정확한 출처 위치를 조회합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
chunkIdYes
maxCharsNo
sourceIdYes

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds value by stating that it returns the '원문 청크와 정확한 출처 위치' (original text chunk and exact source location), which is behavioral information not present in the annotations. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that clearly communicates the tool's purpose and inputs without wasted words. It is concise and efficient, with no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple retrieval tool with 3 parameters and no output schema, the description adequately states what is returned (chunk and source location) but lacks details about maxChars behavior, error conditions, or response format. Given the absence of an output schema, more detail about the return value would improve completeness, but the description is minimally acceptable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It mentions sourceId and chunkId as inputs but does not explain their meanings beyond the names, and completely omits maxChars, which controls chunk length. The agent cannot infer syntax or purpose of maxChars from the description, leaving a significant gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb ('조회합니다' - retrieves) and resource ('educational curriculum chunk'), and explicitly mentions the inputs (sourceId and chunkId) and outputs (original text chunk and exact source location). It distinguishes itself from siblings like search_curriculum by targeting a specific chunk from search results.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for use after a search ('검색 결과의'), providing clear context that it retrieves a chunk given IDs. It does not explicitly name alternatives or exclusions, but the purpose is evident from the phrasing, making it clear when to use it versus a search tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_official_sources공식 출처 및 준비 상태 확인A
Read-onlyIdempotent

현행 기준일, 고시·별책, 원문 URL, 추출 여부와 청크 수를 나열합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering safety. The description adds context about the output fields, but does not disclose additional behavioral traits such as whether it returns all sources, pagination, or ordering. With annotations in place, the description provides minimal extra value but does not contradict them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, compact sentence that front-loads the action and lists the key outputs. Every word is meaningful, with no filler or redundancy. It is appropriately sized for the tool's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's lack of parameters, output schema, and straightforward nature, the description is mostly complete. It identifies all the data points returned, but could be slightly more explicit about the scope (e.g., 'all official sources' or 'current official sources') and whether any filtering applies. However, for a simple listing tool, this is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4. There is no parameter information to add, but the description clarifies what the tool returns, which indirectly helps users understand the tool's scope. Since there are no parameters, the description fully covers the semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states what the tool lists: current base date, notifications/supplements, original URL, extraction status, and chunk count. The verb '나열합니다' (list) is specific and the resource is explicit, distinguishing it from sibling tools like search_curriculum or get_curriculum_chunk, which have different purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. It does not mention scenarios where it should be preferred, nor any exclusions or prerequisites. The description only states what it does, leaving usage decisions to inference from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_curriculum특수교육 교육과정 검색A
Read-onlyIdempotent

중·고등학교 특수교육 교육과정 고시 원문 또는 별도 해설서 청크를 검색합니다. 결과마다 자료 유형, 고시·자료명, 쪽수, 목차 경로와 공식 출처 URL을 반환합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYes검색어 또는 성취기준 코드
subjectNo교과명 필터(예: 국어, 진로와 직업)
sourceIdsNo특정 공식 문서만 검색
schoolLevelNo중학교 또는 고등학교 필터
materialKindNostatutory=고시 원문, commentary=해설서statutory
curriculumTypeNo
includeSupersededNo현행 검색에서 제외된 구 총론 포함

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false. The description adds value by specifying the document types searched (고시 원문 vs 해설서) and the exact return fields (자료 유형, 고시·자료명, 쪽수, 목차 경로, 공식 출처 URL), providing useful behavioral context without contradicting annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of two efficient sentences: the first defines the action and scope, the second enumerates the return fields. There is no repetition, fluff, or irrelevant detail, making it easy to parse at a glance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 8-parameter tool with no output schema, the description adequately communicates the search domain and result format. It does not describe search semantics like fuzzy matching or pagination, but the annotations and schema defaults (e.g., materialKind default, limit bounds) fill in most gaps, making it complete enough for agent selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 75%, meaning most parameters are already explained. The description maps major concepts (중·고등학교, 고시 원문/해설서) to schoolLevel and materialKind parameters, but leaves limit and curriculumType untouched. Since the schema carries most of the semantic weight, the description adds only modest value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('검색합니다' – searches) and resource ('중·고등학교 특수교육 교육과정 고시 원문 또는 별도 해설서 청크'), with clear scope. It distinguishes itself from siblings like get_curriculum_chunk and find_achievement_standard by focusing on cross-document search and listing result fields.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage through the search verb and scope but does not explicitly state when to use this tool over siblings or when not to use it. There is no mention of alternatives like list_official_sources or get_curriculum_chunk, so the agent must infer selection from context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv0.1.0-candidate
    • First observedfind_achievement_standard
    • First observedget_coverage_report
    • First observedget_curriculum_chunk
    • First observedlist_official_sources
    • First observedsearch_curriculum

TDQS

A3.9/5.0

Scored across 5 tools

Disambiguation4/5

The tools are mostly distinct: coverage report, source listing, search, chunk retrieval, and achievement standard lookup. However, search_curriculum and find_achievement_standard could overlap when searching for specific standards, though the latter is more targeted.

Naming Consistency4/5

Tool names follow a consistent verb_noun pattern (get_, list_, search_, find_). Minor deviation: 'get_coverage_report' and 'get_curriculum_chunk' both use 'get' but target different resources, which is acceptable.

Tool Count5/5

Five tools is well-scoped for a specialized curriculum server, covering search, retrieval, source listing, coverage reporting, and standard lookup without redundancy.

Completeness4/5

The surface covers core operations: listing sources, searching, retrieving chunks, and finding standards. Minor gaps like direct browsing of curriculum structure or filtering by grade/subject are not present, but the provided tools likely suffice for typical queries.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    This MCP server enables searching Korean construction standards (KDS/KCS), laws from the Ministry of Government Legislation, administrative rules and interpretations, and optionally local water/wastewater design manuals to generate grounded evidence packages for engineering answers.
    2
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    A server that enables checking and managing learning paths based on the 2022 Korean national curriculum, including child profile management, curriculum search, prerequisite tracing, and learning check creation with deterministic state assessment.
    1
    -