A JavaScript-based Model Context Protocol (MCP) server providing translation, language detection, and supported language listing via Devnagri AI APIs, with a focus on Indic languages.
- Text Translation between 35+ languages (including all major Indic languages)
- Language Detection for any input text
- Supported Languages Listing
- MCP Protocol: Ready for AI tool integration
- Robust Error Handling and Validation
- Extensive Test Suite
- Features
- Quick Start
- API Key Procurement
- Installation
- Usage
- MCP Tools
- Configuration
- Testing
- Contributing
- Support
- Security
- License
npx @devnagriai/devnagriai-translate-mcp API_KEY="your_devnagri_api_key"
To use the Devnagri Translation API, you need an API key. Follow these steps:
-
Sign Up
- Go to Devnagri Dashboard and sign up for a free account.
-
Access API Hub
- After logging in, navigate to the API Hub section from the sidebar menu.
-
Select the Translation API
- Click on Get API Key.
- Click Create.
- Enter a name for the API key.
- Click Save.
-
Copy API Key
- Copy the generated API key. Keep it secure and do not share it publicly.
The simplest way to use this MCP server is through npx, which allows you to run it without installing:
npx @devnagriai/devnagriai-translate-mcp API_KEY="your_devnagri_api_key"
This is ideal for integration with AI tools like Claude, GPT, Windsurf, and Cursor.
If you prefer to install the server locally:
- Clone the repository:
git clone https://github.com/DevnagriAI/devnagriai-translate-mcp.git
cd devnagriai-translate-mcp
- Install dependencies:
npm install
- Set up environment variables:
Create a .env
file in the root directory with the following content:
DEVNAGRI_API_KEY=your_devnagri_api_key
For local/private use or development, add the server to your MCP config:
{
"mcpServers": {
"devnagri-translation": {
"command": "npx",
"args": [
"@devnagriai/devnagriai-translate-mcp",
"API_KEY=\"your_devnagri_api_key\""
]
}
}
}
Start the server:
npm start
For development with auto-reload:
npm run dev
This MCP server can be used with any MCP client. For example, using the MCP CLI client:
mcp-client --transport stdio -- node src/index.js
In ~/.codeium/windsurf/mcp_config.json
:
{
"devnagri-translation": {
"command": "npx",
"args": [
"@devnagriai/devnagriai-translate-mcp",
"API_KEY=\"your_devnagri_api_key\""
]
}
}
In Cursor's settings:
{
"tools": {
"devnagri-translation": {
"command": "npx",
"args": [
"@devnagriai/devnagriai-translate-mcp",
"API_KEY=\"your_devnagri_api_key\""
],
"transport": "stdio"
}
}
}
In Claude Desktop App:
- Go to Settings > Extensions
- Click "Add Custom Extension"
- Select "Add from local server"
- Enter the following details:
- Name: Devnagri Translation Service
- Command:
npx @devnagriai/devnagriai-translate-mcp API_KEY="your_devnagri_api_key"
- Transport: stdio
Or use this configuration:
{
"devnagri-translation": {
"command": "npx",
"args": [
"@devnagriai/devnagriai-translate-mcp",
"API_KEY=\"your_devnagri_api_key\""
],
"transport": "stdio"
}
}
The following tools are exposed via this MCP server:
Tool Name | Description |
---|---|
translate |
Translate text between supported languages |
detect_language |
Detect the language of given text |
list_supported_languages |
List all available languages |
Refer to examples/mcp_config_example.json
for sample tool configuration.
Translates text from source language to target language.
Parameters:
source_text
(string, required): The text to be translatedsource_language
(string, required): The source language code (e.g., "en")target_language
(string, required): The target language code (e.g., "hi")translation_type
(string, optional): Type of translation requested ("literal" or "base", defaults to "literal")
Returns:
{
"translated_text": "नमस्ते, आप कैसे हैं?",
"source_language": "en",
"target_language": "hi",
"translation_type": "literal"
}
Detects the language of the provided text.
Parameters:
text
(string, required): The text for language detection
Returns:
{
"detected_language": "en",
"confidence_score": 0.98,
"supported": true
}
Returns a list of all supported languages for translation.
Parameters:
- None
Returns:
[
{
"name": "English",
"native_name": "English",
"code": "en"
},
{
"name": "Hindi",
"native_name": "हिन्दी",
"code": "hi"
},
// ... more languages
]
- API Key: Required. Pass as an environment variable or command-line argument:
API_KEY="your_devnagri_api_key"
- Port: Defaults to 8080 (can be configured via MCP protocol parameters)
- .env Support: You may place your API key in a
.env
file for local development.
Run the test suite with:
npm test
Test coverage includes unit and integration tests for all MCP tools and API client logic.
- Fork the repository
- Create a feature branch
- Submit a pull request describing your changes
- For API issues, contact Devnagri Support
- For MCP server issues, open a GitHub issue in this repository
- Never share your API key publicly
- Rotate API keys periodically via the Devnagri dashboard
MIT