"# Building an MCP language coach that works in Claude Code, Cursor, and ChatGPT\n\nEvery day I was copy-pasting phrases into Google Translate to draft messages in a language I'm still learning. The tool returned one answer — no sense of register, nothing explaining whether I was about to sound weirdly stiff or borderline rude. The translation got me through the task and left me no smarter about the language.\n\nkonid is the thing I built to fix that. It's an MCP server that takes anything you want to say and returns three options, casual to formal, with each register labeled and cultural context on what separates them. Audio pronunciation plays through your speakers directly — node-edge-tts, no API key needed.\n\nThe interesting engineering decision was building it as an MCP server from the start rather than a standalone CLI or web app. MCP means I write the tool logic once and any compatible client calls it.\n\n## The client matrix\n\nRight now konid runs in:\n\n- Claude Code — single-line install: claude mcp add konid-ai -- npx -y konid-ai\n- Cursor, VS Code Copilot, Windsurf, Zed, JetBrains — JSON config, same npx invocation\n- Claude Cowork — same config\n- ChatGPT — hosted endpoint at https://konid.fly.dev/mcp, enabled via Developer mode\n\nThe ChatGPT path is worth noting separately. Because there's a hosted version of the server running at https://konid.fly.dev/mcp, ChatGPT users don't need Node installed locally. They add the URL as a custom tool source in Developer mode and the MCP handshake happens over HTTP. Same tools, same responses.\n\nFor local installs on any JSON-config client:\n\n
json\n{\n \"mcpServers\": {\n \"konid-ai\": {\n \"command\": \"npx\",\n \"args\": [\"-y\", \"konid-ai\"]\n }\n }\n}\n
\n\n## What the tool actually returns\n\nFor 13+ languages — Mandarin, Japanese, Korean, Spanish, French, German, Portuguese, Italian, Russian, Arabic, Hindi among them — a query returns:\n\n1. Three phrasings, ordered casual to formal\n2. Register label for each (who uses this, in what context)\n3. Cultural context note on what distinguishes them\n4. Audio pronunciation through local speakers\n\nThe three-option structure matters more than it might seem. A single translation hides the fact that most languages have meaningful variation between how you'd say something to a close friend versus a colleague versus someone you're meeting formally. Surfacing all three forces that comparison into the open.\n\nMIT licensed. Source: https://github.com/robertnowell/konid-language-learning",
For further actions, you may consider blocking this person and/or reporting abuse
Top comments (0)