Bhasini Indic Languages
Measured conclusion: Alive, not deep-tested. L2 outcome: not_attempted.
Indic MCP: transliterate into all 22 Indian languages, convert scripts, keymaps. Hosted or local.
| Author | io.github.Codegres-com |
|---|---|
| Access | mixed |
| Publisher key required | No |
| Measured state | Alive, not deep-tested |
| L1 liveness | alive |
| L1 latency | 377 ms |
| Last measured | 2026-10-26 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"Bhasini Indic Languages": {
"url": "https://mcp.bhasini.com/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (6)
convert_scriptread-onlyRewrites text from one Indian script into another letter by letter, e.g. Devanagari 'नमस्ते' → Kannada 'ನಮಸ್ತೇ'. The language does not change, only the letters. Works between the Brahmic scripts (Devanagari, Bengali, Gurmukhi, Gujarati, Odia, Tamil, Telugu, Kannada, Malayalam) and Meetei Mayek; sounds the target script lacks use the nearest letter. Text in other scripts is kept as it is.
Parameters:
text(required) — string — Text in any Brahmic script or Meetei Mayek.targetLanguage(required) — string — Language whose script to convert into, e.g. 'ta', 'Telugu', 'mni'.
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_keymapread-onlyReturns the phonetic keyboard map for a language: which Latin keys produce each letter. Useful for teaching someone to type a language or for building correct romanised input for transliterate.
Parameters:
language(required) — string — Language code or name, e.g. 'ml', 'Odia'.
Hints: read-only yes · destructive no · idempotent yes · open-world no
list_languagesread-onlyLists the 22 scheduled languages of India (plus extra official scripts for Kashmiri, Manipuri and Sindhi) with the codes the other tools accept.
Hints: read-only yes · destructive no · idempotent yes · open-world no
native_digitsread-onlyReplaces ASCII digits 0-9 with a language's native digits, e.g. '2026' → '२०२६' (Hindi), '௨௦௨௬' (Tamil), '۲۰۲۶' (Urdu).
Parameters:
text(required) — string — Text containing digits.language(required) — string — Language code or name.
Hints: read-only yes · destructive no · idempotent yes · open-world no
translateread-onlyTranslates the meaning of text between English and the 22 scheduled languages of India, or between two of them, e.g. 'Where is the station?' → 'स्टेशन कहाँ है?' (Hindi). English → Indic uses AI4Bharat IndicTrans2; Indic → English uses Gemma 4; Indic → Indic goes through English. Free use: up to 2,000 characters per call, 5 calls a minute and 10,000 characters a day. Unlike the other tools this sends the text to Bhasini's server (mcp.bhasini.com); the text is not stored. To write romanised words in a script by sound, use transliterate instead.
Parameters:
text(required) — string — Text to translate. Line breaks are kept.targetLanguage(required) — string — Language to translate into: a code or name from list_languages, or 'en' for English.sourceLanguage— string — Language of the text, or 'auto' (default) to detect it.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
transliterateread-onlyWrites romanised (Latin-letter) text in an Indian script by sound, e.g. 'namaste' → 'नमस्ते' for Hindi or 'vaNakkam' → 'வணக்கம்' for Tamil. This is transliteration, not translation: spell the words as they sound in the target language. Keys follow ITRANS/Baraha conventions: capitals for long vowels and retroflex consonants (A I U E O, T D N L Sh), M = anusvara, H = visarga. Use get_keymap for a language's exact keys.
Parameters:
text(required) — string — Romanised text to transliterate. Punctuation, digits and spaces are kept.language(required) — string — Target language code or name, e.g. 'hi', 'ta', 'kn', 'Bengali', 'sat' (Santali, Ol Chiki).
Hints: read-only yes · destructive no · idempotent yes · open-world no
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.