MCP Server for searching military service alternative positions from MMA (병무청 병역특례 지정업체 검색). Allows searching for companies designated for military service alternatives including industrial functional personnel (산업기능요원), professional research personnel (전문연구요원), and reserve naval service (승선근무예비역).
Single tool with complete JSON Schema and detailed parameter constraints (enums, oneOf). Description is comprehensive (240+ chars) and explains use cases. However, output schema is undocumented (returns CSV text, not structured fields), and error handling lacks recovery guidance. Parameter descriptions are present but some are minimal (e.g., 'city_district' has no format hints). No tool annotations (readOnlyHint, etc.). Naming is clear (search_military_companies) and follows verb_noun pattern.
병무청 병역일터에서 병역특례 지정업체를 검색합니다 (Search military service alternative companies from MMA). 산업기능요원, 전문연구요원, 승선근무예비역 복무가 가능한 업체 정보를 조회합니다. 병역특례, 산업기능요원, 전문연구요원, 승선근무예비역, 보충역, 현역 관련 질문에 이 도구를 사용하세요. 결과는 CSV 형식으로 전체 업체 목록을 반환합니다.
Output schema undocumented. Tool returns CSV text, but LLM cannot parse structure without explicit field documentation. Prevents downstream tool chaining and forces LLM to parse unstructured text.
Error handling lacks recovery guidance. Errors return raw messages ('MMA API Error: ...') without actionable next steps. LLM cannot determine if error is retryable, user-fixable, or fatal.
No result pagination or limit enforcement. Tool description states 'returns entire company list' but does not cap results or offer page/offset parameters. Large result sets will exhaust context window.
Parameter 'city_district' lacks format constraints. Description says '시/군/구' but provides no enum, pattern, or length limits. LLM may pass invalid district names.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | 2026-07-28+ | v2 |
No tool annotations. Tool is read-only (does not modify state) but lacks readOnlyHint annotation. Agents cannot infer safety properties without explicit hints.