Content
# @theyahia/elma365-mcp
MCP Server for ELMA365 API — app items, BPM tasks, processes, users, comments. **9 tools.**
[](https://www.npmjs.com/package/@theyahia/elma365-mcp)
[](https://opensource.org/licenses/MIT)
[](https://github.com/theYahia/elma365-mcp/actions)
Part of the series [Russian API MCP](https://github.com/theYahia/russian-mcp) (50 servers) by [@theYahia](https://github.com/theYahia).
## Installation
### 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 (for web clients)
```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
Use `smithery.yaml` in the repository root to deploy to [Smithery](https://smithery.ai).
> Requires `ELMA365_DOMAIN` (ELMA365 domain or subdomain, e.g., `mycompany`) and `ELMA365_TOKEN` (Bearer API token).
## Tools (9)
| Tool | Description |
|------|-------------|
| `get_app_items` | List app items by namespace and code |
| `create_item` | Create a new item in the app |
| `get_tasks` | List BPM tasks |
| `get_processes` | List business processes |
| `start_process` | Start a business process by code |
| `get_users` | List users |
| `get_user_by_id` | Get a user by ID |
| `get_comments` | Comments to an app item |
| `add_comment` | Add a comment to an item |
## Skills (Claude Code)
| Skill | Description |
|-------|-------------|
| `/skill-my-tasks` | My tasks — show current BPM tasks |
| `/skill-start-process` | Start a business process by code |
## Examples
```
Show app items deals/crm_deals
Create a new item in the app hr/candidates
Show my BPM tasks
Show a list of business processes
Start process approval_flow with parameters {"amount": 50000}
Show users
Show comments to item item-123 in deals/crm_deals
Add a comment "Approved" to item item-123 in deals/crm_deals
```
## Transport
| Mode | Command | Description |
|------|---------|-------------|
| stdio (default) | `npx @theyahia/elma365-mcp` | For Claude Desktop, Claude Code, Cursor |
| Streamable HTTP | `npx @theyahia/elma365-mcp --http` | For web clients, port 3000 by default |
| Streamable HTTP (port) | `npx @theyahia/elma365-mcp --http --port 8080` | Custom port |
## Authentication
- `ELMA365_DOMAIN` — ELMA365 domain (e.g., `mycompany` for `mycompany.elma365.ru`, or full domain `mycompany.elma365.ru`)
- `ELMA365_TOKEN` — Bearer token for ELMA365 API
Base URL: `https://{domain}.elma365.ru/pub/v1/`
## Development
```bash
npm install
npm run build
npm test
npm run dev # launch via tsx
```
## License
MIT