Convert any name from 19 languages into its closest natural Korean (Hangul) spelling. The API is free, CORS-enabled, and needs no API key. Best-effort rate limit: ~30 requests/min per IP.
GET https://www.myhangulname.com/api/v1/transliterate?name=Caroline&lang=en
POST https://www.myhangulname.com/api/v1/transliterate { "name": "Caroline", "lang": "en" }name (required) — the name in any language. lang (optional, default en) — UI language for the text fields: en, ko, zh, ja, es, fr, de, ar, ru, pt, vi, id, th, ms, hi, bn, tl, my, mn.
curl "https://www.myhangulname.com/api/v1/transliterate?name=Caroline"const res = await fetch(
"https://www.myhangulname.com/api/v1/transliterate?name=Caroline"
);
const data = await res.json();
console.log(data.variants[0].options[0]); // 캐롤라인import requests
r = requests.get(
"https://www.myhangulname.com/api/v1/transliterate",
params={"name": "Caroline"},
)
print(r.json()["variants"][0]["options"][0]) # 캐롤라인{
"sourceLang": "en-US",
"variants": [
{
"country": "United States",
"flag": "🇺🇸",
"options": ["캐롤라인", "캐롤린"],
"phonetic": "캘로린",
"ipa": "/ˈkærəlaɪn/"
}
],
"origin": "A name of French origin meaning 'free woman'."
}OpenAPI spec: /api/v1/openapi.json · Postman: collection
A hosted Model Context Protocol server exposes a transliterate_name tool, so Claude and other agents can convert names natively — no wrapper needed.
# Claude Code
claude mcp add --transport http my-hangul-name https://www.myhangulname.com/api/mcpOr add https://www.myhangulname.com/api/mcp as a custom connector in Claude Desktop / claude.ai. Prefer plain HTTP? The GET endpoint above works from any client or shell script too.