Skip to main content
Glama

Teachermall MCP (티처몰 MCP)

Claude Code와 Codex에서 자연어로 티처몰(shop.teacherville.co.kr)의 상품을 검색하고, 학급운영·수업 준비물을 추천받을 수 있는 MCP 서버 + Claude Code 슬래시 명령어입니다.

GitHub: https://github.com/reallygood83/teachermall-mcp

주요 대상: 초등/유치원 교사, 학급 운영과 수업 준비물을 자주 구매하는 분들

주요 기능

고수준 스마트 도구 (강력 추천)

  • /tcv 또는 자연어로 사용 가능

  • recommend_for_lesson — 수업 주제/단원 기반 준비물 추천 (가격 필터, 제외 키워드 지원)

  • build_classroom_kit — 학급운영/보상 키트 자동 구성 + 예산 내 최적 조합

  • generate_semester_preparation_list — 이번 학기 전체 준비물 리스트 자동 생성 (Notion 친화적 출력)

  • optimize_within_budget — 여러 필요 항목 + 예산으로 최적 조합 탐색

  • create_shopping_list_from_text — 수업 계획/교안 텍스트를 붙여넣으면 필요한 물품 자동 추출

기본 도구

  • 상품 검색, 인기 상품, 상세 정보 조회

Related MCP server: Education AI MCP

설치 방법 (5분 컷)

1. 레포 클론

git clone https://github.com/reallygood83/teachermall-mcp.git
cd teachermall-mcp

2. 의존성 설치 및 빌드

npm install
npm run build

3. Claude Code + Codex MCP 등록

가장 쉬운 방법은 제공 스크립트를 실행하는 것입니다. 현재 레포 경로를 자동으로 감지해 dist/index.js를 Claude Code와 Codex 양쪽에 등록합니다.

./scripts/setup-claude.sh

스크립트가 하는 일:

  • ~/.claude/mcp.jsonteachermall MCP 서버 등록

  • ~/.codex/config.toml[mcp_servers.teachermall] 등록

  • commands/tcv.md~/.claude/commands/tcv.md로 설치

  • skills/tcv/SKILL.md~/.codex/skills/tcv/SKILL.md로 설치

  • 기존 설정 파일은 타임스탬프 백업 생성

수동 등록이 필요하면 아래 예시를 사용하세요.

Claude Code:

{
  "mcpServers": {
    "teachermall": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/teachermall-mcp/dist/index.js"],
      "description": "티처몰(Teacherville) 학급운영·수업 준비물 추천 MCP"
    }
  }
}

Codex:

[mcp_servers.teachermall]
command = "node"
args = ["/ABSOLUTE/PATH/teachermall-mcp/dist/index.js"]
startup_timeout_sec = 30.0
tool_timeout_sec = 120.0

args의 경로는 본인 환경에 맞게 수정해주세요.

4. Claude Code와 Codex 완전 재시작

설치 후 Claude Code와 Codex를 완전히 종료하고 다시 실행하세요.

5. 검증

npm run typecheck
npm test
npm run build
npm run smoke:mcp

smoke:mcp는 빌드된 MCP 서버가 9개 도구를 정상 노출하는지 확인합니다.

사용 방법

추천 방식: /tcv 명령어 사용

/tcv 2학년 1학기 전체 준비물 리스트, 보상과 과학 중점으로 총 8만원 예산으로 짜줘

/tcv 3학년 화산 수업에 필요한 준비물, 2만원 이하로 추천해줘

/tcv [수업 계획이나 단원 설명 텍스트를 길게 붙여넣기]
이 수업에 필요한 물품 리스트 만들어줘

Codex에서 사용

Codex에서는 설치 후 다음처럼 호출하세요:

$tcv 3학년 화산 실험 준비물 2만원 이하로 추천해줘

tcv 2학년 보상체계 키트 3만원, 간식 제외

Codex skill은 Claude Code와 달리 $tcv/tcv 형태로 트리거됩니다.

자연어로 직접 사용

Claude Code에서 그냥 이렇게 말해도 됩니다:

  • "티처몰에서 1학년 보상 스티커 인기순으로 찾아줘"

  • "이번 학기 학급운영 키트 예산 3만원으로 만들어줘"

주의사항

  • 이 MCP는 티처몰 공식 API가 아닌 내부 엔드포인트를 사용합니다.

  • 사이트 구조 변경 시 일부 기능이 동작하지 않을 수 있습니다.

  • 과도한 요청은 자제해주세요 (기본 캐싱 적용됨).

  • 추천 로직은 관련도 하한을 적용하지만, 구매 전에는 실제 상세 페이지의 옵션과 배송 조건을 확인하세요.

로드맵

  • npm 패키지 배포

  • 더 정교한 추천 로직

  • 실제 교사 피드백 기반 개선

기여

버그 제보, 기능 제안, Pull Request 모두 환영합니다!


Made for teachers who hate repetitive shopping.

Available Tools

9 tools
build_classroom_kitD
ParametersJSON Schema
NameRequiredDescriptionDefault
gradeNo주요 학년
purposeYes목적 (예: 학급운영, 보상체계, 출석체크, 과학실험)
itemCountNo키트 상품 수
maxBudgetNo최대 예산 (원)
excludeKeywordsNo제외할 키워드

TDQS

D1/5.0
Behavior1/5

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

Tool has no description.

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

Conciseness1/5

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

Tool has no description.

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

Completeness1/5

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

Tool has no description.

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

Parameters1/5

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

Tool has no description.

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

Purpose1/5

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

Tool has no description.

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

Usage Guidelines1/5

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

Tool has no description.

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

clear_cacheD
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

D1/5.0
Behavior1/5

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

Tool has no description.

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

Conciseness1/5

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

Tool has no description.

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

Completeness1/5

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

Tool has no description.

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

Parameters1/5

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

Tool has no description.

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

Purpose1/5

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

Tool has no description.

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

Usage Guidelines1/5

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

Tool has no description.

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

create_shopping_list_from_textD
ParametersJSON Schema
NameRequiredDescriptionDefault
gradeNo학년
maxBudgetNo전체 예산
lessonTextYes수업 계획이나 단원 설명 텍스트 (자유롭게 붙여넣기)

TDQS

D1/5.0
Behavior1/5

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

Tool has no description.

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

Conciseness1/5

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

Tool has no description.

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

Completeness1/5

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

Tool has no description.

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

Parameters1/5

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

Tool has no description.

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

Purpose1/5

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

Tool has no description.

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

Usage Guidelines1/5

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

Tool has no description.

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

generate_semester_preparation_listD
ParametersJSON Schema
NameRequiredDescriptionDefault
gradeYes학년 (예: 2학년, 4학년)
semesterNo학기 (1학기 / 2학기)
focusAreasNo중점 영역 (예: ["보상체계", "과학", "한글"])
maxTotalBudgetNo전체 예산 상한

TDQS

D1/5.0
Behavior1/5

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

Tool has no description.

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

Conciseness1/5

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

Tool has no description.

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

Completeness1/5

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

Tool has no description.

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

Parameters1/5

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

Tool has no description.

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

Purpose1/5

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

Tool has no description.

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

Usage Guidelines1/5

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

Tool has no description.

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

get_best_sellersD
ParametersJSON Schema
NameRequiredDescriptionDefault
tabNo베스트 탭 (school, all 등)school
limitNo가져올 개수

TDQS

D1/5.0
Behavior1/5

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

Tool has no description.

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

Conciseness1/5

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

Tool has no description.

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

Completeness1/5

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

Tool has no description.

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

Parameters1/5

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

Tool has no description.

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

Purpose1/5

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

Tool has no description.

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

Usage Guidelines1/5

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

Tool has no description.

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

get_product_detailsD
ParametersJSON Schema
NameRequiredDescriptionDefault
goods_noYes상품 번호 (goods_seq)

TDQS

D1/5.0
Behavior1/5

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

Tool has no description.

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

Conciseness1/5

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

Tool has no description.

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

Completeness1/5

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

Tool has no description.

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

Parameters1/5

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

Tool has no description.

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

Purpose1/5

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

Tool has no description.

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

Usage Guidelines1/5

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

Tool has no description.

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

optimize_within_budgetD
ParametersJSON Schema
NameRequiredDescriptionDefault
needsYes필요한 항목 목록 (예: ["보상 스티커", "우체통", "과학실험 키트"])
itemCountNo원하는 상품 수
maxBudgetYes최대 예산

TDQS

D1/5.0
Behavior1/5

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

Tool has no description.

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

Conciseness1/5

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

Tool has no description.

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

Completeness1/5

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

Tool has no description.

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

Parameters1/5

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

Tool has no description.

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

Purpose1/5

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

Tool has no description.

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

Usage Guidelines1/5

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

Tool has no description.

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

recommend_for_lessonD
ParametersJSON Schema
NameRequiredDescriptionDefault
gradeNo학년 (예: 1학년, 3학년, 유치원)
limitNo추천 개수
topicYes수업 주제 또는 단원 (예: 화산, 소수, 한글, 보상체계, 과학실험)
maxPriceNo최대 가격 (예산 상한)
minPriceNo최소 가격
excludeKeywordsNo제외할 키워드 (예: ["중국", "비싼"])

TDQS

D1/5.0
Behavior1/5

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

Tool has no description.

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

Conciseness1/5

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

Tool has no description.

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

Completeness1/5

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

Tool has no description.

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

Parameters1/5

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

Tool has no description.

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

Purpose1/5

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

Tool has no description.

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

Usage Guidelines1/5

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

Tool has no description.

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

search_productsD
ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo페이지 번호 (기본 1)
sortNo정렬 기준: relevance(관련도), popular(인기/판매량), price_low(낮은가격), price_high(높은가격), newest(최신)relevance
limitNo결과 개수 (기본 10, 최대 20)
queryYes검색어 (예: 스티커, 보상, 우체통, 1학년, 과학실험)

TDQS

D1/5.0
Behavior1/5

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

Tool has no description.

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

Conciseness1/5

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

Tool has no description.

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

Completeness1/5

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

Tool has no description.

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

Parameters1/5

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

Tool has no description.

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

Purpose1/5

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

Tool has no description.

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

Usage Guidelines1/5

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

Tool has no description.

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

TDQS

D1.8/5.0
Disambiguation3/5

Tool names suggest some overlap (e.g., build_classroom_kit vs. create_shopping_list_from_text), but most have distinct purposes. Without descriptions, an agent may struggle to differentiate between planning and product tools.

Naming Consistency3/5

Most tools follow verb_noun pattern (search_products, get_product_details), but a few have inconsistent formats (build_classroom_kit, create_shopping_list_from_text). The mix reduces predictability.

Tool Count4/5

9 tools is appropriate for a teacher mall assistant covering product search, recommendations, list generation, and budget optimization. The count feels well-scoped for the domain.

Completeness4/5

The tool set covers key functions: product search, details, best sellers, recommendations, list creation, budget optimization, and classroom kit building. Minor gaps like list editing or checkout may exist but are not critical for the assistant's purpose.

Maintenance

ActivityInactive
ResponsivenessNo issues

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

Related MCP Servers

Latest Blog Posts

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/reallygood83/teachermall-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server