Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

UILM Server

БесплатноНе проверен

MCP server for the SELISE Blocks UILM API, providing translation key management tools for Claude Code, Cursor, and any MCP-compatible client.

GitHubEmbed

Описание

MCP server for the SELISE Blocks UILM API, providing translation key management tools for Claude Code, Cursor, and any MCP-compatible client.

README

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

Quick Start

Option A: Interactive setup (recommended)

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

from github.com/sohanuzzaman/uilm-mcp-server

Установка UILM Server

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/sohanuzzaman/uilm-mcp-server

FAQ

UILM Server MCP бесплатный?

Да, UILM Server MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для UILM Server?

Нет, UILM Server работает без API-ключей и переменных окружения.

UILM Server — hosted или self-hosted?

Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.

Как установить UILM Server в Claude Desktop, Claude Code или Cursor?

Открой UILM Server на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare UILM Server with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории development