Translates Thai text to English for Claude Code via an external model backend. Supports OpenAI, Anthropic, Ollama, and DeepL backends.
Single tool with adequate naming (translate_thai) and clear description (71 chars). Input schema present with two parameters: 'text' (string, described) and 'mode' (string with enum-like description and default). However, 'mode' lacks formal enum constraint in schema, description lists 'concise | full | short' but schema does not enforce these as enum values. Output schema not documented. No error handling guidance for missing API keys, network failures, or invalid backend selection. Tool is read-only and low-risk, but lacks production-grade robustness.
Translate Thai text to English for Claude Code execution.
Mode parameter lacks enum constraint in schema. Description lists 'concise | full | short' but JSON Schema does not declare enum: ['concise', 'full', 'short']. LLMs may pass invalid values; tool silently defaults to 'concise' instead of rejecting.
Output schema not documented. Tool returns a string (English translation) but no schema is declared. LLMs cannot plan downstream operations or validate response structure.
Error handling lacks recovery guidance. Missing API key raises RuntimeError with a message, but no guidance on how to resolve (e.g., 'Set OPENAI_API_KEY in .env'). Network timeouts and backend failures are unhandled.
No input validation for empty or whitespace-only text. Tool returns empty string silently; LLM receives no signal that the request was invalid. Should reject with actionable error.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 50 | 2026-07-28+ | v2 |
STDIO transport only. Server is not remotely accessible and cannot be used by hosted MCP clients. Limits deployment to local/CLI-only scenarios.