gepai-mcp
This server is designed to assist environmental education teachers in designing lessons by providing access to a comprehensive database of 2022 revised curriculum standards and educational resources, enabling contextualized and iterative lesson planning through specialized tools — all without external API keys.
search_standards: Search 3,285 achievement standards by keyword, school level, subject, grade, or code.
search_resources: Search 933 environmental education materials from 12 regional offices, filterable by school level, subject, environmental topic, SDGs, and more.
get_resource_detail: View detailed metadata and linked achievement standards for a specific resource.
map_standard_to_resources: Find all resources linked to a specific standard code.
search_fulltext: Full-text BM25 search across ~22,341 chunks from 1,053 PDFs to find specific activities, methods, or concepts.
get_document_text: Read full document text chunk by chunk, enabling in-depth study of source materials.
explore_topics: Browse an environmental topic map, see related topics, SDGs, standards, keywords, and recommended resources.
related_resources: Get similar resource recommendations with explanations based on shared standards, topics, or subjects.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@gepai-mcpFind resources on ocean pollution for elementary"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
gepai-mcp
GEP-AI 환경교육 수업 설계 MCP 서버 — 별도 서비스 구독 없이, 이미 사용 중인 AI(Claude, Gemini, ChatGPT/Codex)에서 환경교육 수업을 설계하세요.
교육부·한국환경보전원 연구 사업으로 개발된 GEP-AI 플랫폼(GEP-AI란?)의 핵심 자산을 MCP(Model Context Protocol) 서버로 재포장했습니다. LLM 호출은 사용자의 AI가 수행하므로 운영 비용 없이 지속 가능한 구조입니다.
설계 철학 — '딸깍'이 아니라 대화. GEP-AI의 목적은 버튼 한 번으로 어디에나 있을 법한 자료를 뽑아내는 것이 아닙니다. 교사와 AI가 질의응답을 주고받으며 아이디어를 심화·확장하고, 그 교사의 교실·학교·지역사회 맥락에 맞는 환경 수업을 함께 설계하는 것입니다. 모든 프롬프트는 "한 번에 질문 하나, 선택지와 추천 제공, 요약 확인 후 생성" 원칙으로 이 철학을 강제합니다.
GEP-AI란?
GEP-AI는 교육부·한국환경보전원이 발주하고 국립공주대학교 산학협력단이 수행한 연구 『환경교육 자원 맵 개발 및 AI 기반 교사 수업설계 활용체계 마련 연구』(책임연구원 이재영, 최종보고서 2026. 2)에서 설계·개발된 AI 기반 환경교육 수업설계 플랫폼입니다. 이름은 UNESCO의 'Greening Education Partnership'에서 영감을 받아, Greening Education Partnership with AI(환경교육의 글로벌 파트너십을 AI로 지원)와 Greening Education Platform with AI(환경교육 자원을 통합해 수업설계를 지원하는 플랫폼)라는 이중적 의미를 담고 있습니다.
문제의식 — "자료가 많지 않아서가 아니라, 내 수업과 맞지 않아서"
연구진이 시·도교육청의 환경교육 자료를 전수 분석한 결과, 형식·구성·분류 체계가 교육청마다 달라 자료 간 연결과 상호 활용이 거의 불가능했고, 대부분 PDF·HWP 같은 비구조화 형태여서 검색·조합도 어려웠습니다 — 보고서의 표현으로는 "자료의 양은 많으나, 연결되지 않는 아카이브" 상태입니다. 한편 2022 개정 교육과정은 환경교육(생태전환교육)을 특정 교과가 아닌 전 교과의 성취기준으로 확장했는데, 이는 교사가 자기 교과 속 환경교육 요소를 스스로 해석·재구성해야 하는 부담으로 돌아왔습니다. 교사 면담의 결론이 GEP-AI의 출발점입니다: 교사들은 "자료가 많지 않아서가 아니라, 내 수업과 맞지 않아서 사용하지 않는다."
설계 철학 — "구조는 AI가 제공하고, 의미와 판단은 교사가 만든다"
대체가 아닌 사고 지원: AI는 정답형 수업안을 자동 생성하지 않습니다. 교사의 조건과 맥락을 바탕으로 방향과 선택지를 제안하는 초안(draft) 을 제공하고, 최종 판단과 교육적 책임은 항상 교사에게 있습니다(Human-in-the-Loop).
검색에서 의미 연결로: 자료를 위계적으로 쌓아두고 찾아 쓰는 '나뭇가지형 DB'가 아니라, 성취기준·주제·활동·지역자원이 관계망으로 연결되고 교사가 자기 맥락에서 조합·생성하는 '리좀형 DB' 를 지향합니다.
두 갈래 설계 지원: 조건이 명확한 교사에게는 조건 기반 설계(교과·성취기준·차시 입력 → 수업안 초안)를, 아이디어만 있는 교사에게는 대화 기반 설계(질문과 제안으로 점진적 구조화)를 제공하며, 둘은 한 설계 과정 안에서 서로 전환됩니다.
연구 프로토타입 → 이 MCP 서버
연구에서는 이 철학을 HITL 멀티에이전트 워크플로우(오케스트레이터 + 프롬프트 분석·정보 수집·자료 검색·콘텐츠 생성 에이전트, 3단계 교사 검토), 9차원 온톨로지 기반 RAG 하이브리드 검색, 5항목 품질 검증(SMART 학습목표, 시간 배분, 수레바퀴 정합성, 평가-목표 정합성, 발달단계 적합성), HWPX·DOCX 내보내기를 갖춘 웹 플랫폼 프로토타입으로 구현하고 교사 시범적용까지 마쳤습니다. 그러나 자체 LLM 호출 비용 구조로는 상시 무료 운영이 어려웠기에, 핵심 자산을 이 MCP 서버로 재포장했습니다.
연구 프로토타입 (웹 플랫폼) | 이 MCP 서버 |
자체 LLM(Gemini) 호출 → 운영 비용 발생 | 사용자의 AI(Claude·ChatGPT·Gemini)가 LLM 담당 → 운영 비용 0 |
HITL 멀티에이전트가 질의응답·검토 단계 강제 | 프롬프트 6종이 같은 원칙("한 번에 질문 하나, 요약 확인 후 생성")을 강제 |
온톨로지 RAG 하이브리드 검색 | 메타데이터 검색 + BM25 원문 전문 검색 + 동시출현 기반 주제 탐색 |
Supabase 벡터 DB + 클라우드 저장소 | 전 데이터 패키지 내장 — 외부 DB·API 키 불필요 |
Related MCP server: ClassCraftMCP
무엇이 들어있나
자산 | 규모 | 설명 |
성취기준 DB | 3,285건 | 2022 개정 교육과정 초·중·고 전 과목 성취기준 |
환경교육 자료 카탈로그 | 933건 | 전국 12개 시도교육청 자료 (교육부 자원맵) — 학교급·과목·환경주제·SDGs·성취기준 매핑 포함 |
원문 문서 카탈로그 + 전문 텍스트 | 1,113건 / 22,341청크 | 교육청 자료 PDF 원문 텍스트 — 본문 전문 검색(BM25) 및 문서 읽기 지원 |
배움의 수레바퀴 모형 | — | 이재영 교수의 환경교육 학습 모형 (4단계 + 4연결고리) |
수업 설계 절차 | — | GEP-AI 실서비스에서 검증된 9단계 설계 프롬프트 |
모든 데이터는 패키지에 내장되어 있어 외부 DB·API 키가 필요 없습니다.
내장 DB 상세
① 성취기준 DB (standards.json, 3,285건)
출처: 2022 개정 교육과정 (교육부 고시)
구성: 초등학교 653건 · 중학교 580건 · 고등학교 2,052건, 160개 과목
필드:
code(성취기준 코드),school(학교급),subject(과목),grade(학년군),content(성취기준 내용)
② 환경교육 자료 카탈로그 (resources.json, 933건)
출처: 교육부 자원맵 입력 데이터 — 12개 시도교육청
교육청별: 경기 254 · 충북 131 · 서울 121 · 광주 98 · 충남 65 · 대전 54 · 제주 49 · 경남 46 · 부산 40 · 인천 38 · 전남 32 · 경북 5
학교급: 초등 518 · 중등 332 · 고등 207 · 유치원 13 (자료당 복수 태그 가능)
자료유형(상위): 교사용 지도안+학생용 활동지 348 · 학생용 활동지 138 · 사례 모음 134 · 교사용 지도안 125
환경주제: 생활환경 458 · 지구환경 386 · 자연환경 373 · 환경문화 171 외
성취기준 연계: 838건 자료가 성취기준 2,837건을 참조 (①번 DB와 코드로 교차 조회 —
map_standard_to_resources)필드:
office,collection(자료집),title(활동명),materialType,activityTypes,schoolLevels,hours(차시),subjects,competencies(환경교육역량),place,envTopics,sdgs,methods(교수학습방법),standards[{code, text}]자료 원문 파일은 포함되지 않습니다 — 메타데이터로 검색·추천하고 출처(교육청·자료집명)를 안내합니다.
③ 원문 문서 카탈로그 + 전문 텍스트 (documents.json 1,113건 + chunks.jsonl.br 22,341청크)
출처: GEP-AI 실서비스 RAG 파이프라인 — 교육청 자료 PDF 1,113건을 문서 단위로 AI 메타데이터 강화(지역·학교급·과목·환경주제·SDGs·역량·교수법·시맨틱 키워드) 후 본문을 청크로 추출
지역: 14개 (경기 249 · 충북 144 · 서울 125 · 광주 98 등, "전국" 포함)
본문 텍스트: 청크 22,341건 (평균 686자, brotli 압축 7.7MB 내장) —
search_fulltext로 본문 검색,get_document_text로 이어 읽기정선 카탈로그(②)와 파일명 기준 742건 자동 연결 — 자료 상세에서 원문 텍스트로 바로 이동
원문 PDF 직링크: 1,053건 중 997건(95%)에 Google Drive 원문 파일 링크(
fileUrl) 연결 — 검색된 자료를 클릭 한 번으로 열람. 나머지는 미공개/부분 업로드 자료로 공식 자료실 안내로 대체 (개별 학교 제출 행정보고서 60건은 개인정보 우려로 제외)필드:
fileName,region,schoolLevel,subjects,envTopics,sdgs,competencies,methods,resourceType,activityType,keywords(AI 생성),standards,resourceIds,fileUrl(원문 PDF)
④ 배움의 수레바퀴 모형 — 이재영 교수가 경험학습 이론(Kolb)과 변혁적 학습 이론(Mezirow)을 환경교육 맥락으로 재구성한 학습 모형. 4단계(감각과 체험 → 성찰과 발견 → 창작과 표현 → 참여와 실천)와 4연결고리(탐구·내면화·공유·사회화)의 8블록 순환 구조로, 단계별 예시 활동과 차시 수별 권장 구성을 포함 (gepai://learning-wheel 리소스로도 제공)
도구 (Tools)
도구 | 설명 |
| 성취기준 검색 (키워드·학교급·과목·학년군·코드) |
| 환경교육 자료 검색 (키워드·학교급·과목·환경주제·SDGs·교육청) |
| 자료 상세 + 연계 성취기준 전문 + 원문 찾기 안내(sourceGuide) |
| 성취기준 코드 → 연계 자료 목록 |
| 자료 원문 본문 검색 — 활동 방법·실험 절차·사례를 PDF 본문 텍스트에서 직접 검색 (BM25) |
| 원문 문서 읽기 — 검색으로 찾은 문서의 본문을 청크 단위로 이어 읽기 |
| 환경주제 지도 탐색 — 주제별 자료 수, 관련 주제·SDGs·성취기준·키워드 (몰랐던 자료 발견) |
| 유사 자료 추천 — 공유 성취기준·주제·과목 근거 제시 |
프롬프트 (Prompts)
프롬프트 | 설명 |
| 배움의 수레바퀴 기반 수업 설계 전체 절차 (정보 수집 → 성취기준 → 자료 → 지도안 → 평가 → 활동지) |
| 딸깍 방지 인터뷰 — 수업 의도·학생 맥락·교실/학교/지역 맥락·평가 증거·예상 오개념을 한 번에 하나씩 질문 |
| 학교·지역사회의 실제 환경 문제 기반 프로젝트 학습(PBL) 설계 — driving question, 학생 역할·실제 청중, 과정 평가 |
| 수업 실행 후 증거 기반 성찰 — 반증 가능한 가설로 원인 진단, 다음 차시 최소 수정안 (수레바퀴의 다음 순환) |
| 설계 대화를 한 페이지 브리프로 정리 (미확정 표시, 동료 공유·다음 AI 작업 인계용) |
| 배움의 수레바퀴 모형 해설 |
context_interview, local_pbl_coach, reflect_lesson, lesson_brief는 같은 제작자의 교사용 스킬팩 k-teacher-skills의 검증된 인터뷰·설계 방법론을 환경교육에 맞게 이식한 것입니다.
설치
🧑🏫 처음이신가요? 화면 순서대로 따라하는 쉬운 설치 가이드 (docs/INSTALL.md)를 보세요. 설치 없이 URL만 등록하는 방법부터 플랫폼별 상세 절차, 문제 해결까지 담았습니다.
로컬 설치는 Node.js 18 이상이 필요합니다. (설치가 어려우면 아래 원격 MCP 사용)
Claude Code
claude mcp add gepai -- npx -y gepai-mcpClaude Desktop
설정 → 개발자(Developer) → 설정 편집(Edit Config) 으로 여는 claude_desktop_config.json(Windows: %APPDATA%\Claude\, macOS: ~/Library/Application Support/Claude/)에 추가 후 앱 재시작:
{
"mcpServers": {
"gepai": {
"command": "npx",
"args": ["-y", "gepai-mcp"]
}
}
}Gemini CLI
~/.gemini/settings.json에 추가:
{
"mcpServers": {
"gepai": {
"command": "npx",
"args": ["-y", "gepai-mcp"]
}
}
}Codex (CLI · IDE 확장 · 데스크톱 앱)
터미널에 한 줄:
codex mcp add gepai -- npx -y gepai-mcp또는 ~/.codex/config.toml에 추가 (IDE 확장: ⚙ 메뉴 → MCP settings → Open config.toml). CLI·IDE 확장·데스크톱 앱(Windows·macOS)이 모두 이 설정 파일 하나를 공유하므로 한 번 등록하면 어디서든 쓸 수 있습니다:
[mcp_servers.gepai]
command = "npx"
args = ["-y", "gepai-mcp"]확인: codex 실행 후 /mcp.
Cursor
전역 ~/.cursor/mcp.json 또는 프로젝트의 .cursor/mcp.json에 추가 (Cursor Settings → MCP → Add new MCP Server UI로도 가능):
{
"mcpServers": {
"gepai": {
"command": "npx",
"args": ["-y", "gepai-mcp"]
}
}
}Google Antigravity (CLI · IDE)
Antigravity 제품군은 통합 MCP 설정 파일 하나를 CLI와 IDE가 공유합니다: ~/.gemini/config/mcp_config.json
{
"mcpServers": {
"gepai": {
"command": "npx",
"args": ["-y", "gepai-mcp"]
}
}
}IDE: 에이전트 사이드 패널 상단 "…" → MCP Servers → Manage MCP Servers → View raw config로 같은 파일을 편집할 수 있습니다. (Antigravity 2.0: Settings → Customizations → Installed MCP Servers → Add MCP)
프로젝트 단위로 쓰려면 저장소 루트에
.agents/mcp_config.json을 두면 됩니다. 프롬프트 창에서/mcp로 서버 상태·연결 로그를 확인할 수 있습니다.
위에 없는 도구라도 MCP를 지원한다면 같은 형식(
command: npx,args: [-y, gepai-mcp])으로 등록하면 됩니다.
사용 예
설치 후 AI에게 이렇게 말해보세요:
"초등학교 5학년 기후변화 4차시 수업을 설계해줘" (또는
design_lesson프롬프트 실행)"중학교 과학에서 생태계 관련 성취기준을 찾아줘"
"플라스틱 주제로 쓸 수 있는 교육청 자료가 있어?"
"[6과05-03] 성취기준과 연계된 자료를 보여줘"
원격 MCP — 설치 없이 URL 등록 (교사 추천)
Node.js 설치가 어렵다면 공용 서버 URL을 등록하기만 하면 됩니다:
https://gepai-mcp.pblsketch.workers.dev
플랫폼 | 등록 방법 |
Claude (웹·데스크톱) | 설정 → 커넥터 → 커스텀 커넥터 추가 → 위 URL 입력 |
ChatGPT | 설정 → 커넥터 (개발자 모드) → 새 커넥터 → 위 URL |
Codex (CLI·IDE·데스크톱 앱) |
|
Gemini CLI |
|
Google Antigravity |
|
검색만 수행하고 LLM을 호출하지 않으므로 무료 티어로 운영됩니다.
직접 호스팅
npx gepai-mcp --http --port 3737
# 헬스 체크: GET /healthz, MCP 엔드포인트: POST /
# PORT 환경변수가 있으면(Vercel 등 서버 플랫폼) 자동으로 HTTP 모드로 기동합니다개발
npm install # 의존성 설치 (prepare에서 자동 빌드)
npm run build:data # data/source/*.csv → data/generated/*.json 재생성
npm run build # TypeScript 컴파일
npm test # 스모크 테스트 (MCP 클라이언트-서버 왕복)data/source/ 원본 CSV (성취기준, 자원맵 카탈로그)
data/generated/ 빌드된 JSON (패키지에 번들, 커밋됨)
src/ MCP 서버 (도구·프롬프트·검색)
src/prompts/ 수업 설계 절차 프롬프트데이터 출처와 라이선스
GEP-AI 연구: 『환경교육 자원 맵 개발 및 AI 기반 교사 수업설계 활용체계 마련 연구』 최종보고서 (교육부·한국환경보전원 발주, 국립공주대학교 산학협력단 수행, 책임연구원 이재영, 2026. 2)
코드: MIT License
성취기준: 2022 개정 교육과정 (교육부 고시) 공공 데이터
자료 카탈로그: 교육부 자원맵 입력 데이터 기반 메타데이터. 자료 원문은 각 시도교육청에 저작권이 있으며, 이 서버는 메타데이터(제목·출처·분류)만 제공합니다.
배움의 수레바퀴 모형: 이재영 교수의 학습 모형. 이 서버에는 모형의 구조 요약만 포함됩니다.
로드맵
npm 패키지 배포 (
npx gepai-mcp) — gepai-mcp@0.1.0원격 MCP 배포 — https://gepai-mcp.pblsketch.workers.dev (Cloudflare Workers + D1, 교사가 URL 등록만으로 사용 · 무료 상시 운영 · 배포 절차 worker/DEPLOY.md)
자료 원문 심층 검색 — v0.3.0: 원문 22,341청크 내장 BM25 전문 검색 (임베딩 불필요, 의미 재랭킹은 호출하는 AI가 수행)
자료 원본 링크 1차 확보 — v0.4.0: 자료집 41개의 공식 페이지 URL(교육청 자료실·웹진·전자책, 전수 웹 검증) → 자료 517건·문서 487건에 연결
원문 PDF 직링크 — v0.5.0: 교육청 자료 PDF를 Google Drive 보관소에 게시하고 문서 997/1,053건(95%)에 파일 링크 연결 (개별 학교 제출 행정보고서 60건은 개인정보 우려로 제외, 미업로드 분할본 등 56건은 공식 자료실 안내로 대체)
플랫폼별 설치 가이드 — docs/INSTALL.md (Claude·ChatGPT·Codex·Gemini·Antigravity·Cursor, 공식 문서 기준 검증)
설치 가이드 스크린샷 보강
GEP-AI: 교육부 환경교육 연구 사업의 결과물을 모두가 쓸 수 있는 형태로.
Available Tools
8 toolsexplore_topics환경주제 탐색A
환경주제 지도를 탐색합니다. topic 없이 호출하면 전체 주제 목록과 자료 수를, topic을 주면 관련 주제·SDGs·역량·과목·대표 성취기준·연관 키워드·추천 자료를 보여줍니다. 교사가 무엇이 있는지 둘러보거나 수업 아이디어를 확장할 때 사용하세요.
| Name | Required | Description | Default |
|---|---|---|---|
| topic | No | 탐색할 환경주제 (예: "자원순환", "생태전환"). 생략 시 전체 목록 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully describes the tool's behavior: no topic returns a list of topics with counts; with topic returns related entities. It sets correct expectations for a read-only exploration tool. No hidden side effects are mentioned, but the behavior is transparent enough for use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences: the first states the action and two behaviors, the second provides the intended use case. Every word is purposeful, and the structure is efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the moderate complexity (two modes) and no output schema, the description completely covers what the tool does and what it returns in each scenario. It differentiates from siblings and provides sufficient context for an exploration tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description and parameter description together fully explain the optional topic parameter. The description adds significant value by detailing the two distinct behaviors triggered by its presence or absence, going well beyond the schema's minimum.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: exploring the environmental topic map. It distinguishes between two modes (without topic for overview, with topic for detailed related items) and explicitly mentions the use case for teachers to browse or expand lesson ideas, which differentiates it from sibling search tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on when to use the tool: for browsing the topic map and expanding lesson ideas. It implicitly contrasts with search tools by emphasizing exploration. More explicit differentiation from siblings like search_resources would improve it, but the context is already strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_document_text원문 문서 읽기A
원문 문서의 메타데이터와 본문 텍스트를 연속 청크 단위로 읽습니다. search_fulltext가 반환한 documentId로 호출하세요. count 기본 5청크(약 3~4천 자), 최대 10청크씩 from_chunk를 늘려가며 이어 읽을 수 있습니다.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | 읽을 청크 수 (기본 5, 최대 10) | |
| from_chunk | No | 시작 청크 번호 (기본 0) | |
| document_id | Yes | 문서 id (search_fulltext 결과의 documentId) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the chunked reading behavior, default and maximum chunk count, and pagination method. However, it does not describe the output format, error handling, or authentication requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no fluff. The first sentence states the purpose, the second gives usage instructions. Efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description should cover return values. It mentions 'metadata and body text' but lacks detail on structure or formatting. Pagination is well explained, but completeness is partial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all parameters. The description adds the context that document_id comes from search_fulltext and confirms default/max values for count, but this largely repeats schema information. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it reads the metadata and body text of the original document in continuous chunks, which is a specific verb and resource. It distinguishes itself from sibling tools like search_fulltext by specifying it uses the documentId returned by that tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says to call with documentId from search_fulltext and explains how to paginate via from_chunk. It provides clear context but does not explicitly mention when not to use this tool or list alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_resource_detail자료 상세 조회B
자료 id로 상세 정보를 조회합니다. 연계 성취기준의 전체 내용(자료 원문 표기 + 2022 개정 교육과정 DB 대조)을 포함합니다.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | search_resources가 반환한 자료 id |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It mentions what is included (achievement standards, curriculum comparison), but does not disclose read-only nature, performance implications, required permissions, or return format. The description lacks important behavioral context for a detail retrieval tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at two sentences with no redundant words. It front-loads the primary action ('조회합니다') and efficiently adds key details about included content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no output schema, the description gives a reasonable overview of what is included (achievement standards, curriculum comparison). However, it does not describe return structure, pagination, or error handling, leaving some gaps given the lack of output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage for the single parameter 'id' is 100%, with a clear description. The tool description reinforces the parameter's role but does not add new semantic information beyond what the schema already provides. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves detailed information by resource id, and specifies it includes the full content of linked achievement standards and comparisons with the 2022 revised curriculum DB. The verb '조회합니다' and resource '자료 상세' are specific, and the tool is well differentiated from sibling tools like search_resources which returns a list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. While sibling tools are listed, the description does not state prerequisites (e.g., needing an id from search_resources) or when not to use this tool. 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.
map_standard_to_resources성취기준 연계 자료 찾기A
성취기준 코드를 주면 그 성취기준과 연계된 환경교육 자료 목록을 반환합니다. 수업에서 다룰 성취기준을 확정한 뒤, 바로 활용할 수 있는 자료를 찾을 때 사용하세요.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | 성취기준 코드 (예: "6과05-03" 또는 "[6과05-03]") | |
| limit | No | 최대 결과 수 (기본 10, 최대 30) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description mentions it returns a list but does not disclose potential pagination, permissions, or error behavior. Adequate but not detailed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, each serving a purpose: function and usage scenario. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema. Description says it returns a list but does not specify fields. Adequate for a simple lookup but could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters. The tool description does not add additional semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool maps an achievement standard code to a list of related materials. It distinguishes from siblings like search_resources and search_standards by focusing on direct lookup by code.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says when to use: after confirming the standard in class to find immediately usable materials. Missing explicit when-not-to-use or alternatives, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_fulltext원문 전문 검색A
전국 시도교육청 환경교육 자료 PDF 1053건의 원문 텍스트(약 2.2만 청크)에서 본문 내용을 검색합니다. 메타데이터 검색(search_resources)으로 찾기 어려운 구체적 활동 방법, 실험 절차, 개념 설명, 사례를 찾을 때 사용하세요. 발췌가 잘려 있으면 get_document_text로 해당 문서의 전체 맥락을 이어 읽으세요. 첫 호출은 색인 구축으로 1~2초 걸립니다.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | 최대 결과 수 (기본 8, 최대 20) | |
| query | Yes | 본문 검색 키워드 (예: "탄소발자국 계산 활동") | |
| region | No | 지역/교육청 필터 (예: "경기", "전국") | |
| subject | No | 과목 필터 | |
| school_level | No | 학교급 필터 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses that the tool searches over 1053 PDFs (~22k chunks) and that the first call takes 1-2 seconds. However, it does not describe result ranking, pagination, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences: purpose/scope, usage guidance, and fallback/performance note. No redundant information; every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a search tool with 5 parameters, no output schema, and no annotations, the description covers purpose, usage, a behavioral note, and sibling connection. Lacks output format or pagination details, but adequate for the task.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds context that the query is for full-text content and mentions excerpt truncation, but does not elaborate on each parameter beyond schema. Acceptable but not exceptional.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches full text of 1053 PDFs (environmental education materials) with specific examples of use cases. It distinguishes itself from the sibling tool search_resources (metadata search) and get_document_text (full context reading).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use guidance: for finding specific activity methods, experimental procedures, concept explanations, and cases that metadata search cannot find. Also advises using get_document_text for truncated excerpts. Notes first call is slow due to index building.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_resources환경교육 자료 검색A
전국 시도교육청 환경교육 자료 933건(교육부 자원맵)에서 수업 자료를 검색합니다. 키워드와 필터(학교급/과목/환경주제/SDGs/교육청/자료유형)를 조합할 수 있습니다. 결과의 standardCodes는 해당 자료와 연계된 성취기준 코드입니다. 상세 내용은 get_resource_detail로 조회하세요.
| Name | Required | Description | Default |
|---|---|---|---|
| sdg | No | SDGs 목표 필터 (예: "기후변화 대응") | |
| limit | No | 최대 결과 수 (기본 10, 최대 30) | |
| query | No | 검색 키워드 (예: "기후변화 놀이", "플라스틱") | |
| office | No | 시도교육청 필터 (예: "서울") | |
| subject | No | 과목 필터 (예: "과학") | |
| env_topic | No | 환경주제 필터 (자연환경, 지구환경, 생활환경, 물환경, 환경문화 등) | |
| school_level | No | 학교급 필터 | |
| material_type | No | 자료유형 필터 (예: "참고자료", "활동지") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description implies read-only search behavior and mentions that results include 'standardCodes'. Basic transparency is adequate, but lacks details on permissions or performance.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first states purpose and scope, second explains filtering and points to related tool. No wasted words, front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 optional parameters and no output schema, description provides total count, filter options, and result content hint ('standardCodes'). Could mention result structure but still reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers 100% of parameters with descriptions. Description summarizes filter categories without adding new meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool searches environmental education materials from a specific resource (교육부 자원맵, 933건) and differentiates from siblings like 'get_resource_detail' and 'search_standards'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description lists available filters and explicitly suggests using 'get_resource_detail' for detailed content, providing clear guidance on when to switch tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_standards성취기준 검색A
2022 개정 교육과정 성취기준 3285건(초·중·고 전 과목)에서 검색합니다. 키워드(성취기준 내용), 학교급, 과목, 학년군, 코드로 검색할 수 있습니다. 환경 수업 설계 시 관련 교과의 성취기준을 찾을 때 사용하세요.
| Name | Required | Description | Default |
|---|---|---|---|
| code | No | 성취기준 코드 (전체 또는 접두어, 예: "6과05" 또는 "6과05-03") | |
| grade | No | 학년군 필터 (예: "1~2학년", "5~6학년") | |
| limit | No | 최대 결과 수 (기본 10, 최대 30) | |
| query | No | 내용 키워드 (예: "생태계 보전", "에너지") | |
| subject | No | 과목 필터 (예: "과학", "도덕") | |
| school_level | No | 학교급 필터 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the dataset size and available search dimensions but omits any behavioral traits like pagination, response format, or performance characteristics. This is adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words, but the second sentence could be seen as slightly verbose. The key information is front-loaded. Minor redundancy in listing parameters already in schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters, no output schema, and no annotations, the description lacks details on return format, pagination, or behavior of the limit parameter. The example usage is helpful but incomplete. Adequate but missing some context an agent might need.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description only lists the searchable fields (keyword, school level, subject, grade, code) without adding meaning beyond the already detailed schema descriptions. No significant value added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches achievement standards from the 2022 revised curriculum, specifying scope (3285 items, all subjects and levels). It distinguishes from sibling tools like search_resources or search_fulltext by focusing solely on standards.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a specific use case ('when designing environment classes') but does not explicitly state when not to use this tool or compare with siblings. The context is clear enough for an agent to infer appropriate usage.
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. Dates show when Glama detected each change.
8 tool updates
v0.5.0- First observed
explore_topics - First observed
get_document_text - First observed
get_resource_detail - First observed
map_standard_to_resources - First observed
related_resources - First observed
search_fulltext - First observed
search_resources - First observed
search_standards
TDQS
Each tool has a clearly distinct purpose: browse topics, read document text, get resource details, map standards to resources, recommend related resources, full-text search, metadata search, and standards search. No overlap that would confuse an agent.
Most tools follow a verb_noun pattern (explore_topics, search_resources, etc.), but 'related_resources' uses an adjective_noun pattern, a minor inconsistency. Overall, names are clear and predictable.
With 8 tools, the server is well-scoped for the domain of environmental education resource discovery. Each tool serves a specific function without being excessive or insufficient.
The tool surface covers all major operations: browsing topics, searching resources and standards, full-text search, getting detailed information, mapping standards to resources, and recommendations. No obvious gaps for the intended discovery and research workflow.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for building and testing AI agents with multi-model experimentation and insights.
Educational MCP server with 17 math/stats tools, visualizations, and persistent workspace
An MCP server for deep research or task groups
MCP server for Environment & Nature
Related MCP Servers
- FlicenseBqualityDmaintenanceA Model Context Protocol server that provides AI-driven tools to categorize, tag, and optimize educational content using GPT-4.36-
- FlicenseNot gradedqualityBmaintenanceAn MCP server for creating and validating lesson plans based on the 2022 revised Korean middle school math curriculum, providing context, validation, and rendering tools.-
- AlicenseNot gradedqualityCmaintenanceMCP server for Korean government power/energy statutory plans. Enables AI agents to search and retrieve public power plan documents.MIT
- AlicenseNot gradedqualityBmaintenanceMCP server enabling AI to search and retrieve Korean secondary school (middle/high) 2022 revised curriculum learning graphs, including achievement standards, topics, prerequisites, and transitions, via 11 tools.24314MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/pblsketch/gepai-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server