duda-co/mcp-strings-admin
If you are the rightful owner of mcp-strings-admin and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
MCP server for Duda strings admin service. Provides AI tools to manage translation strings.
mcp-strings-admin
MCP server for Duda strings admin service. Provides AI tools to manage translation strings.
[!IMPORTANT]
You need to be connected to VPN in order to use the MCP.
Installation
From Private Registry (Duda Team)
- Create GitHub Personal Access Token with
read:packagespermission: https://github.com/settings/tokens - Configure npm:
export GITHUB_TOKEN="your_token_here"
echo "registry=https://registry.npmjs.org/" > ~/.npmrc
echo "@duda-co:registry=https://npm-github-packs.dud4.co/" >> ~/.npmrc
echo "//npm-github-packs.dud4.co/:_authToken=\${GITHUB_TOKEN}" >> ~/.npmrc
- Install:
npm install -g @duda-co/mcp-strings-admin
From Source
git clone <repo>
cd mcp-strings-admin
npm install
npm run build
Configuration
Set environment variables:
export STRINGS_ADMIN_HOST="http://prd-ms-strings-admin-1.dudamobile.com" # Default
export LOG_LEVEL="info" # Optional
Setup Instructions
Claude Desktop Setup
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or ~/.config/Claude/claude_desktop_config.json (Linux):
{
"mcpServers": {
"strings-admin": {
"command": "npx",
"args": ["@duda-co/mcp-strings-admin"]
}
}
}
For global install: "args": ["@duda-co/mcp-strings-admin"]
Restart Claude Desktop.
Cursor Setup
Create or edit ~/.cursor/mcp.json (macOS/Linux) or %USERPROFILE%\.cursor\mcp.json (Windows):
{
"mcpServers": {
"strings-admin": {
"command": "npx",
"args": ["@duda-co/mcp-strings-admin"]
}
}
}
GitHub Copilot Setup
GitHub Copilot supports MCP servers through its Agent Mode in compatible IDEs. The setup process varies by IDE and requires configuring MCP servers in the Copilot extension settings.
VS Code with GitHub Copilot Extension
- Ensure you have the latest GitHub Copilot extension installed
- Open the Command Palette (
Cmd/Ctrl + Shift + P) - Run "GitHub Copilot: Open Agent Mode"
- In the Copilot Chat panel, click the tools icon to access MCP configuration
- Add your MCP server configuration:
{
"servers": {
"strings-admin": {
"command": "npx",
"args": ["@duda-co/mcp-strings-admin"]
}
}
}
JetBrains IDEs (IntelliJ, PyCharm, etc.)
- Open the GitHub Copilot Chat panel (click the Copilot icon in the right sidebar)
- Click the Agent tab at the top of the chat panel
- Click the tools icon in the Copilot Chat box
- Configure your MCP server in the settings
- Use natural language commands to interact with the strings-admin tools
Usage in GitHub Copilot
Once configured, you can use the MCP server in Copilot Chat by:
- Opening Copilot Chat and selecting Agent mode
- Using natural language commands like:
- "Show me all available string scopes using the strings-admin tool"
- "Create a new string key for a login button using strings-admin"
- "List scopes and create an error message string"
Important Notes:
- MCP support in GitHub Copilot requires Agent Mode, which is available in supported IDEs
- The exact configuration steps may vary between IDE versions
- Refer to the official GitHub Copilot MCP documentation for the latest setup instructions
Available Tools
duda_strings_admin_get_all_scopes
- Purpose: Lists all available scopes where strings can be created
- Parameters: None
- Returns: JSON array of scopes with
value(scope name) andshouldTranslateproperties - Usage: Always call this first to see available scopes before creating strings
duda_strings_admin_create_new_string_key
- Purpose: Creates new translation string in a specific scope
- Workflow:
- First call
get_all_scopesto see available scope options - Choose appropriate scope from the results
- Create string key using the scope
valuefield asscopeValue
- First call
- Parameters:
key(string, 1-200 chars): String identifier with required format:- Must start with
ui.ed.prefix - Format:
ui.ed.{category}.{specific_name} - Examples:
ui.ed.button.save,ui.ed.error.invalid_email,ui.ed.modal.confirm_delete - Suffix is developer choice - verify naming with your team
- Must start with
value(string, 1-1000 chars): The actual display textshouldTranslate(boolean): Whether this string needs translationscopeValue(string, 1-50 chars): Use thevaluefield fromget_all_scopesresponse
- Returns: Success confirmation
duda_strings_admin_create_bulk_string_keys
- Purpose: Creates multiple translation strings at once in the same scope
- Use Case: Efficient for creating many related strings (e.g., all button labels, all error messages)
- Workflow:
- First call
get_all_scopesto see available scope options - Choose appropriate scope from the results
- Create multiple string keys using the scope
valuefield asscopeValue
- First call
- Parameters:
keys(array, min 1 item): Array of key-value pairs to create- Each item contains:
key(string): String identifier with required format:- Must start with
ui.ed.prefix - Format:
ui.ed.{category}.{specific_name} - Examples:
ui.ed.button.save,ui.ed.error.invalid_email
- Must start with
value(string): The actual display text for this key
- All keys must be unique within the request
- Each item contains:
shouldTranslate(boolean, default: true): Whether all these strings need translationscopeValue(string): Use thevaluefield fromget_all_scopesresponse
- Returns:
- Full success: List of all created keys
- Partial success: List of successful and failed keys with detailed error messages
- Complete failure: Error details for all failed keys
- Validation: Checks for duplicate keys, invalid key formats, and validates each key before creation
Usage Examples
Ask Claude:
- "Show me all string scopes"
- "Create string key 'ui.ed.button.submit' with value 'Submit Form' in 'checkout' scope, translatable"
- "List scopes then create a login error message"
- "Create multiple button strings at once: save, cancel, submit, and delete in the 'editor' scope"
- "Bulk create all error messages for form validation in one go"
- "Create a set of navigation menu labels using the bulk tool"
Troubleshooting
- Connection errors: Check
STRINGS_ADMIN_HOSTand network access - Authentication: Verify GitHub token has
read:packagespermission - Tools not appearing:
- Claude Desktop: Check config file syntax and restart Claude Desktop
- Cursor: Verify MCP server configuration in settings and restart Cursor
- GitHub Copilot: Ensure you're in Agent Mode, have a compatible IDE version, and MCP server is properly configured
- Command not found: Make sure the package is properly installed (
npm install -g @duda-co/mcp-strings-admin) - Permission errors: Check that your environment has the necessary permissions to run the MCP server