한국어 원고를 사람 편집자가 손본 것처럼 교정하는 MCP 서버. Upstage Solar Pro 4가 문장을 손보고, 사실·인용·말투가 그대로인지는 코드가 판정합니다.
Solar Human Proofreader demonstrates solid definition quality with complete schemas, detailed descriptions, and thoughtful parameter design. All 6 tools have explicit Zod schemas with type definitions and descriptions. Tool names are action-oriented (proofread, read_through, readability, compare, suggest, usage). Descriptions are substantive (100-300+ chars) and explain WHEN to use each tool. Parameters include enums, constraints, and helpful defaults. However, output schemas are not formally documented in the code, responses are rendered as formatted text strings rather than structured objects. Error handling is present but generic. Tool composition is clean with single responsibilities.
원본과 고친 원고를 나란히 놓고 대조한다. 변경률, 없던 수치가 생겼는지, 직접 인용이 그대로인지, 소제목이 사라졌는지, 문체 등급이 오르내렸는지, 상투구가 새로 심겼는지를 코드로 판정한다. 이 서버가 교정한 결과든, 다른 모델이나 사람이 고친 원고든 똑같이 검증할 수 있다.
한국어 원고를 사람 편집자가 손본 것처럼 교정한다. 원고를 통독해 걸리는 지점을 짚고(Solar), 그 지점만 겨냥해 문장을 손본 뒤(Solar), 원본과 대조해 사실·인용·수치·문체가 그대로인지 코드로 검증한다. 내용은 더하지도 빼지도 않고 문장만 읽기 쉽게 만든다. 한국어 글을 다듬어 달라·윤문해 달라·자연스럽게 만들어 달라는 요청에 쓴다.
원고를 한 글자도 고치지 않고, 이 글이 잘 안 읽히는 이유만 편집자 소견서로 돌려준다. 논지가 끊기는 자리, 같은 말을 두 번 하는 문단, 리듬이 죽은 대목처럼 수치로 안 잡히는 것까지 본다. 교정 전에 방향을 잡거나, 필자가 직접 고치고 싶을 때 쓴다.
한국어 원고의 읽기 난이도를 결정적 규칙으로만 잰다. 문장 길이 분포, 만연체 비율, 번역투·피동·명사화·완곡·상투구 빈도, 리듬 편차를 0~100점으로 요약하고, 빨간 줄을 그을 문장을 짚어 준다. LLM을 부르지 않으므로 무료 한도를 쓰지 않고 즉시 답한다. 교정 전후 비교나 여러 원고 훑기에 쓴다.
문장 하나나 짧은 문단을 놓고 서로 다른 방향의 대안을 여러 개 제안한다. 짧게 끊은 안, 원문의 호흡을 살린 안, 어순을 바꿔 힘을 준 안처럼 결이 다르게 낸다. 뜻과 사실은 그대로 두고 표현만 바꾼다. 제목·리드·마지막 문장처럼 한 줄이 중요한 자리에 쓴다.
오늘 쓴 Solar 호출 수와 남은 무료 한도, 지금 어떤 키로 붙어 있는지를 보여 준다. 본인 키(BYOK)로 붙어 있으면 한도가 없다는 것도 여기서 확인한다.
Output schemas not formally documented. Tools return formatted text strings (via guard() wrapper) rather than structured JSON objects with typed fields. LLMs cannot reliably extract data for downstream chaining.
Error handling is generic. guard() catches errors and returns isError=true with a text message, but does not categorize errors as retryable, user-fixable, or fatal. LLMs cannot determine next steps.
Tool 'usage' has empty input schema (z.object({})). While valid, the description does not explain what context triggers this call or what the response fields mean.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 68 | 2026-07-28+ | v2 |
No pagination or result limits documented for tools that may return large outputs (e.g., readability notes, compare analysis). Unbounded text responses risk context window exhaustion.
Tool names 'read_through' and 'readability' are similar and could cause LLM confusion. 'read_through' performs diagnosis; 'readability' measures metrics. Names do not clearly distinguish intent.