Skip to main content
Glama
theYahia
by theYahia
README.md
# MCP-сервер для ELMA365 — BPM-задачи и приложения low-code платформы через ИИ

Если вы искали, как подключить ELMA365 к нейросети, запускать бизнес-процессы и закрывать BPM-задачи не заходя в веб-интерфейс — это оно. 9 инструментов: элементы приложений, задачи, процессы, пользователи, комментарии. Спрашиваете «мои задачи на сегодня» — получаете список и закрываете их прямо в чате.

[![npm](https://img.shields.io/npm/v/@theyahia/elma365-mcp)](https://www.npmjs.com/package/@theyahia/elma365-mcp)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![CI](https://github.com/theYahia/elma365-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/theYahia/elma365-mcp/actions)

Часть серии [WWmcp](https://github.com/theYahia/WWmcp) (46 серверов) by [@theYahia](https://github.com/theYahia).

## Установка

### Claude Desktop

```json
{
  "mcpServers": {
    "elma365": {
      "command": "npx",
      "args": ["-y", "@theyahia/elma365-mcp"],
      "env": {
        "ELMA365_DOMAIN": "mycompany",
        "ELMA365_TOKEN": "your-token"
      }
    }
  }
}
```

### Claude Code

```bash
claude mcp add elma365 \
  -e ELMA365_DOMAIN=mycompany \
  -e ELMA365_TOKEN=your-token \
  -- npx -y @theyahia/elma365-mcp
```

### VS Code / Cursor

```json
{
  "servers": {
    "elma365": {
      "command": "npx",
      "args": ["-y", "@theyahia/elma365-mcp"],
      "env": {
        "ELMA365_DOMAIN": "mycompany",
        "ELMA365_TOKEN": "your-token"
      }
    }
  }
}
```

### Streamable HTTP (для веб-клиентов)

```bash
ELMA365_DOMAIN=mycompany ELMA365_TOKEN=your-token npx @theyahia/elma365-mcp --http --port 3000
```

Endpoint: `http://localhost:3000/mcp`
Health check: `http://localhost:3000/health`

### Smithery

Используйте `smithery.yaml` в корне репозитория для деплоя на [Smithery](https://smithery.ai).

> Требуется `ELMA365_DOMAIN` (домен или поддомен ELMA365, например `mycompany`) и `ELMA365_TOKEN` (Bearer API-токен).

## Инструменты (9)

| Инструмент | Описание |
|------------|----------|
| `get_app_items` | Список элементов приложения по namespace и code |
| `create_item` | Создание нового элемента в приложении |
| `get_tasks` | Список BPM-задач |
| `get_processes` | Список бизнес-процессов |
| `start_process` | Запуск бизнес-процесса по коду |
| `get_users` | Список пользователей |
| `get_user_by_id` | Получение пользователя по ID |
| `get_comments` | Комментарии к элементу приложения |
| `add_comment` | Добавить комментарий к элементу |

## Skills (Claude Code)

| Skill | Описание |
|-------|----------|
| `/skill-my-tasks` | Мои задачи — показать текущие BPM-задачи |
| `/skill-start-process` | Запусти бизнес-процесс по коду |

## Примеры

```
Покажи элементы приложения deals/crm_deals
Создай новый элемент в приложении hr/candidates
Покажи мои BPM-задачи
Покажи список бизнес-процессов
Запусти процесс approval_flow с параметрами {"amount": 50000}
Покажи пользователей
Покажи комментарии к элементу item-123 в deals/crm_deals
Добавь комментарий "Согласовано" к элементу item-123 в deals/crm_deals
```

## Транспорт

| Режим | Команда | Описание |
|-------|---------|----------|
| stdio (по умолчанию) | `npx @theyahia/elma365-mcp` | Для Claude Desktop, Claude Code, Cursor |
| Streamable HTTP | `npx @theyahia/elma365-mcp --http` | Для веб-клиентов, port 3000 по умолчанию |
| Streamable HTTP (порт) | `npx @theyahia/elma365-mcp --http --port 8080` | Кастомный порт |

## Аутентификация

- `ELMA365_DOMAIN` — домен ELMA365 (например `mycompany` для `mycompany.elma365.ru`, или полный домен `mycompany.elma365.ru`)
- `ELMA365_TOKEN` — Bearer-токен для ELMA365 API

Базовый URL: `https://{domain}.elma365.ru/pub/v1/`

## Разработка

```bash
npm install
npm run build
npm test
npm run dev    # запуск через tsx
```

## Лицензия

MIT

---

Часть [WWmcp](https://github.com/theYahia/WWmcp) · Telegram: [@vhodvai](https://t.me/vhodvai)

TDQS

B3.3/5.0

Scored across 9 tools

Disambiguation5/5

Each tool targets a distinct resource or action: items, comments, processes, tasks, and users are clearly separated. The pairs like get_users/get_user_by_id and get_comments/add_comment are easily distinguishable as list vs. specific, causing no ambiguity.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., create_item, get_tasks, start_process). The verbs are appropriate and the naming is predictable across the entire set.

Tool Count5/5

With 9 tools covering common operations on items, comments, processes, tasks, and users, the count is well-scoped. Each tool serves a distinct purpose without unnecessary duplication or bloat.

Completeness2/5

The tool surface has significant gaps: items lack get single, update, and delete; comments lack delete; processes lack stop; tasks lack update. These missing operations limit the ability to perform full CRUD or lifecycle management for the domain.

Maintenance

ActivityMaintained
ResponsivenessNo issues