Local MCP server that transcribes audio files with OpenAI — point it at a path, get the text back
Single tool with strong naming (verb_noun: transcribe_audio), comprehensive parameter descriptions, and detailed tool description (340 chars). Input schema is fully defined with types, enums, and defaults. Tool annotations present (readOnlyHint, idempotentHint, destructiveHint, openWorldHint). Output schema not explicitly documented in visible code, function returns `str` with no structured schema definition. Error handling is present but returns JSON strings rather than structured error objects. Parameter descriptions are detailed and actionable (e.g., 'ISO-639-1 hint such as ar or en'). Mutually exclusive parameters (file_path, audio_url, audio_base64) are documented. No critical security issues, API key injected via environment, not parameters.
Transcribe ONE audio file and return its text. Arabic is fully supported: return the Arabic text as transcribed, and do not translate it unless the user asks. Reads the file directly from this machine, so a path is all that's needed — no uploading, copying, or encoding. Pass exactly one audio source.
Output schema not documented. Function returns `str` (JSON-encoded error or transcript text) with no structured schema definition. LLMs cannot plan downstream operations or extract fields reliably.
Error responses return JSON strings rather than structured error objects. While error messages are actionable (e.g., 'OpenAI rejected the API key...'), returning `str` forces LLMs to parse JSON from a string, adding cognitive overhead.
No pagination or result limiting documented. Transcripts can reach 25,000 chars (MAX_TEXT_CHARS) before truncation, but no mechanism to stream or paginate long results. For very long audio, context window impact is not mitigated.
Tool description mentions Arabic support but does not explain when to use language parameter vs auto-detect. Dependency hint missing: 'Leave language unset for auto-detection; set only if detection fails.'
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | B | 74 | <=2025-11-25 | v2 |