DEV Community

J Now
J Now

Posted on

When your translation tool just gets you through the task

Every day I was copying work emails into a translation tool, getting one flat answer, and learning nothing. The translation got me through the task. A week later I'd translate the same phrase again because nothing stuck. Literal translation tools have no memory of teaching you — they're a crutch, not a loop.

I built konid to fix that for myself. For any phrase you want to say, it returns three options ordered casual to formal, with each register named and explained, plus a cultural context note comparing the options. The idea: even when you're just trying to send a professional email, you're seeing the same phrase in three registers side-by-side. That comparison is where the learning actually happens.

A concrete example: you want to write a polite follow-up in Japanese. A literal tool gives you one sentence, probably somewhere in the middle register, no explanation of why. konid gives you the casual version you'd use with a friend, the standard professional version, and the formal version you'd use with a client you've never met — and explains what makes each one what it is. The audio pronunciation plays through your speakers directly using node-edge-tts, no API key required.

It runs as an MCP server, so it lives inside whatever tool you're already working in:

claude mcp add konid-ai -- npx -y konid-ai
Enter fullscreen mode Exit fullscreen mode

Works with Claude Code, Cursor, VS Code Copilot, Windsurf, Zed, JetBrains, and Claude Cowork. Also installs as a ChatGPT app via Developer mode with the endpoint https://konid.fly.dev/mcp.

Supports 13+ languages: Mandarin, Japanese, Korean, Spanish, French, German, Portuguese, Italian, Russian, Arabic, Hindi, and others.

The daily-translation use case is the one I care about most. If you're working in a language you're still learning, every translation is a teaching moment you're currently throwing away.

https://github.com/robertnowell/konid-language-learning

Top comments (0)