amatta-mcp
# amatta-mcp
영유아 건강 레퍼런스(국가예방접종·WHO 성장도표·영유아 건강검진·구강검진)를 LLM에게 도구로 제공하는 MCP 서버. OhRight 앱에 갇혀 있던 데이터·계산 로직을 stdio MCP 서버로 분리했다.
## 도구
- `compute_growth_percentile` — WHO 성장도표(0–24개월) z-score·백분위 계산. 국내 성장도표 기준선(3·5·25·50·75·95·97백분위) 구간과 해당 월령 기준선 값 포함
- `list_vaccine_schedule` / `get_due_vaccines` — NIP 백신 일정·접종 시기 (택1 백신 플래그). 선택 접종(수막구균)은 단일 접종 시점 대신 "생후 2개월부터 접종 가능 · 소아과 상담" 안내
- `list_checkups` / `get_next_checkup` — 국가 영유아 건강검진 8회 + 구강검진 4회, 종류별 현재·다음 검진 시기
나이 문구는 소아과 관례를 따른다: 태어난 날이 생후 1일, 생후 90일까지는 "생후 N일", 이후는 "생후 M개월".
## 리소스
`amatta://growth-reference`, `amatta://vaccine-master`, `amatta://checkup-schedule`(건강검진·구강검진) — 원본 표 열람.
## 설치 · 사용 (npx)
별도 설치 없이 실행할 수 있다. `claude_desktop_config.json`:
```json
{
"mcpServers": {
"amatta-mcp": {
"command": "npx",
"args": ["-y", "amatta-mcp"]
}
}
}
```
npm에 게시하기 전이라면 GitHub에서 바로 실행할 수도 있다:
```json
{
"mcpServers": {
"amatta-mcp": {
"command": "npx",
"args": ["-y", "github:jkimdev/amatta-mcp"]
}
}
}
```
## 개발
```bash
npm install
npm test # vitest
npm run dev # tsx로 서버 실행
npm run build # dist/ 로 컴파일
```
## Claude Desktop 연결 (로컬 빌드)
소스에서 직접 빌드해 연결하려면 `claude_desktop_config.json`:
```json
{
"mcpServers": {
"amatta-mcp": {
"command": "node",
"args": ["/절대경로/amatta-mcp/dist/index.js"]
}
}
}
```
`npm run build` 후 위 경로를 실제 절대경로로 바꾼다.
## 배포
`npm publish`로 게시한다. 게시 전 `prepublishOnly`가 빌드·테스트를 자동 실행하고, 배포물엔 `dist/`·`README`·`LICENSE`만 포함된다(`files` 필드).
## 면책
모든 응답은 참고 정보이며 진단이 아니다. 성장·접종·검진은 소아과 상담이 우선한다.
출처: WHO Child Growth Standards / 질병관리청 NIP / 국민건강보험공단 영유아 건강검진·구강검진.
## 라이선스
MIT — [LICENSE](./LICENSE) 참고.
TDQS
Scored across 5 tools
The tools are mostly distinct: vaccine schedule lists all vaccines, while due vaccines is personalized by age; similarly, checkups list all vs. next checkup. However, the pairing of list/get for both vaccines and checkups could cause minor confusion, though descriptions clarify the difference.
Naming mostly follows a verb_noun pattern (list_, get_, compute_), with list_vaccine_schedule and list_checkups being consistent. compute_growth_percentile introduces a different verb but is still clear. Minor inconsistency in verb choice prevents a perfect score.
With 5 tools, the set is well-scoped for pediatric health reference information. Each tool covers a distinct need without redundancy, and the count is appropriate for the domain.
The domain covers vaccine schedules, growth percentiles, and checkups comprehensively. The only minor gap is the lack of a tool to retrieve details for a specific vaccine or checkup item, but the core informational needs are met.