Skip to main content
Glama

UILM MCP Server

MCP (Model Context Protocol) server for the SELISE Blocks UILM (UI Language Management) API. Provides translation key management tools for Claude Code, Cursor, and any MCP-compatible client.

Features

  • Automatic Bearer token management (caches + auto-refreshes on 15-min expiry)

  • Module name resolution (use "auth" instead of UUIDs)

  • Batch key creation with automatic fallback

  • 13 tools covering modules, languages, and translation keys

Related MCP server: tolgee-mcp

Quick Start

npx uilm-mcp-server --init

This walks you through entering credentials and writes the config directly to your Claude Code or Cursor settings.

Option B: Manual config

Add to your project's .mcp.json (Claude Code) or Cursor MCP settings:

{
  "mcpServers": {
    "uilm": {
      "command": "npx",
      "args": ["-y", "uilm-mcp-server"],
      "env": {
        "UILM_API_BASE_URL": "https://api.seliseblocks.com",
        "UILM_PROJECT_KEY": "your-project-key",
        "UILM_CLIENT_ID": "your-client-id",
        "UILM_CLIENT_SECRET": "your-client-secret"
      }
    }
  }
}

No clone or build step required -- npx handles everything.

Option C: Using a .env file

Create a .env file in your project root (make sure it's in .gitignore):

UILM_API_BASE_URL=https://api.seliseblocks.com
UILM_PROJECT_KEY=your-project-key
UILM_CLIENT_ID=your-client-id
UILM_CLIENT_SECRET=your-client-secret

Then use a simpler MCP config without the env block:

{
  "mcpServers": {
    "uilm": {
      "command": "npx",
      "args": ["-y", "uilm-mcp-server"]
    }
  }
}

Getting Your Credentials

You need four values from the SELISE Blocks platform.

API Base URL

https://api.seliseblocks.com

Project Key

  1. Log in to the SELISE Blocks Console

  2. Select your project

  3. Go to Settings (gear icon)

  4. Copy the Project Key (starts with P)

Client ID and Client Secret

These are OAuth credentials used for machine-to-machine authentication:

  1. In the SELISE Blocks Console, navigate to your project

  2. Go to IAM > Clients (or Settings > API Clients, depending on your console version)

  3. Click Create Client (or use an existing one)

  4. Set the grant type to Client Credentials

  5. Copy the Client ID (UUID format) and Client Secret

Note: If you don't see the Clients section, ask your project admin to create a client credential for you or grant you access to IAM settings.

Environment Variables

Variable

Description

UILM_API_BASE_URL

SELISE Blocks API base URL

UILM_PROJECT_KEY

Project key (starts with P, used as x-blocks-key header)

UILM_CLIENT_ID

OAuth client ID (UUID format)

UILM_CLIENT_SECRET

OAuth client secret

Tools

Auth

Tool

Description

uilm_authenticate

Force-refresh Bearer token and check auth status

Modules

Tool

Description

uilm_list_modules

List all modules with IDs

uilm_create_module

Create a new translation module

Languages

Tool

Description

uilm_list_languages

List all configured languages

Keys (Read)

Tool

Description

uilm_get_keys

Get published translations for a module + language

uilm_search_keys

Search keys with filters and pagination

uilm_get_key

Get a single key by item ID

uilm_get_keys_by_names

Look up keys by name (check existence)

Keys (Write)

Tool

Description

uilm_create_key

Create a single translation key

uilm_create_keys

Batch create multiple keys

uilm_update_key

Update an existing key's translations

Keys (Delete / Rollback)

Tool

Description

uilm_delete_key

Delete a key by item ID (irreversible)

uilm_rollback_key

Rollback a key to previous state

Usage Examples

Once configured, ask your AI assistant:

  • "List all UILM modules"

  • "Create a translation key LOGIN_TITLE in the auth module with en-US: 'Login' and de-DE: 'Anmelden'"

  • "Create these keys in the dashboard module: WELCOME_MESSAGE (Welcome / Willkommen), LOGOUT (Logout / Abmelden)"

  • "Search for keys containing 'LOGIN'"

  • "Get all English translations for the common module"

  • "Delete the key with ID abc-123"

CLI

npx uilm-mcp-server              # Start the MCP server (stdio transport)
npx uilm-mcp-server --init       # Interactive setup wizard
npx uilm-mcp-server --help       # Show help
npx uilm-mcp-server --version    # Show version

Development

git clone https://github.com/sohanuzzaman/uilm-mcp-server.git
cd uilm-mcp-server
npm install        # Also runs build via prepare script
npm run dev        # Run with tsx (hot TypeScript execution)
npm run build      # Compile TypeScript
npm start          # Run compiled version

Verify with MCP Inspector

UILM_API_BASE_URL=https://api.seliseblocks.com \
UILM_PROJECT_KEY=your-project-key \
UILM_CLIENT_ID=your-client-id \
UILM_CLIENT_SECRET=your-client-secret \
  npx @modelcontextprotocol/inspector node dist/index.js
F
license - not found
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sohanuzzaman/uilm-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server