SmartKasa MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@SmartKasa MCP Servershow me today's sales report for the Kyiv store"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
SmartKasa MCP Server
Production-ready Model Context Protocol (MCP) server for SmartKasa POS API
πΊπ¦ Π£ΠΊΡΠ°ΡΠ½ΡΡΠΊΠ° Π²Π΅ΡΡΡΡ Π½ΠΈΠΆΡΠ΅
Overview
SmartKasa MCP Server enables AI assistants (Claude, GPT, etc.) to interact with SmartKasa - Ukrainian POS system with fiscal compliance. Through natural language, you can manage:
πͺ Shops - Create, update, manage retail locations
π¦ Products - Full inventory management with categories
π§Ύ Receipts - Sales transactions and fiscal operations
π₯ Employees - Staff management with roles
π Reports - Z-reports and sales statistics
π³ Terminals - POS terminal configuration
Related MCP server: SalesDrive MCP Server
Features
β 58 API tools covering all SmartKasa endpoints
β HTTP/2 with connection pooling for high performance
β Automatic token refresh with exponential backoff
β Rate limiting protection with smart retries
β Secure credential handling - memory-only storage
β Multi-user support via process isolation
β Structured logging for debugging
β Two transport modes: stdio (local) and SSE (remote server)
β Docker support for easy deployment
How MCP Works
β οΈ Important: You do NOT need to manually run this server!
MCP uses stdio transport by default - your LLM client (Claude Desktop, Cursor, etc.) automatically starts the server as a child process and communicates via stdin/stdout.
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β LLM Client (Claude Desktop / Cursor / VS Code) β
β β
β 1. Reads your config file β
β 2. Spawns: python smartkasa-mcp-server.py β
β 3. Communicates via stdin/stdout β
β 4. Server runs as long as client is open β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββYou only configure the path - the client handles everything else.
Quick Start
1. Installation
# Clone the repository
git clone https://github.com/1212bogdan/smartkasa-mcp-server.git
cd smartkasa-mcp-server
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt2. Get SmartKasa Credentials
You need three things from SmartKasa:
API Key - Get from SmartKasa dashboard or support
Phone Number - Your registered phone (e.g.,
380501234567)Password - Your account password
3. Configure Your LLM Client
See Client Configuration section below for your specific client.
Client Configuration
Claude Desktop (macOS)
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"smartkasa": {
"command": "/path/to/venv/bin/python",
"args": ["/path/to/smartkasa-mcp-server/smartkasa-mcp-server.py"],
"env": {
"SMARTKASA_API_KEY": "your_api_key_here",
"SMARTKASA_PHONE": "380501234567",
"SMARTKASA_PASSWORD": "your_password"
}
}
}
}Claude Desktop (Windows)
Edit %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"smartkasa": {
"command": "C:\\path\\to\\venv\\Scripts\\python.exe",
"args": ["C:\\path\\to\\smartkasa-mcp-server\\smartkasa-mcp-server.py"],
"env": {
"SMARTKASA_API_KEY": "your_api_key_here",
"SMARTKASA_PHONE": "380501234567",
"SMARTKASA_PASSWORD": "your_password"
}
}
}
}Claude Desktop (Linux)
Edit ~/.config/Claude/claude_desktop_config.json:
{
"mcpServers": {
"smartkasa": {
"command": "/path/to/venv/bin/python",
"args": ["/path/to/smartkasa-mcp-server/smartkasa-mcp-server.py"],
"env": {
"SMARTKASA_API_KEY": "your_api_key_here",
"SMARTKASA_PHONE": "380501234567",
"SMARTKASA_PASSWORD": "your_password"
}
}
}
}VS Code with Continue Extension
Add to ~/.continue/config.json:
{
"experimental": {
"modelContextProtocolServers": [
{
"transport": {
"type": "stdio",
"command": "/path/to/venv/bin/python",
"args": ["/path/to/smartkasa-mcp-server/smartkasa-mcp-server.py"]
}
}
]
}
}Cursor IDE
Add to Cursor settings (Cmd/Ctrl + , β search "MCP"):
{
"mcp.servers": {
"smartkasa": {
"command": "/path/to/venv/bin/python",
"args": ["/path/to/smartkasa-mcp-server/smartkasa-mcp-server.py"]
}
}
}Cline (VS Code Extension)
Configure in Cline settings panel:
Server Name:
smartkasaCommand:
/path/to/venv/bin/pythonArguments:
/path/to/smartkasa-mcp-server/smartkasa-mcp-server.py
Usage Guide
First Time Setup
If you didn't configure environment variables, set credentials via chat:
Please set my SmartKasa credentials:
- API Key: sk_live_xxxxx
- Phone: 380501234567
- Password: mypassword
Then authenticate and show my shops.Example Conversations
List all products:
Show me all products in my SmartKasa accountCreate a new product:
Create a new product called "Espresso" with price 45 UAH,
tax group 1 (20% VAT), sold by units (not weight)Get sales report:
Show me sales statistics for the last week for shop ID 123Check inventory:
What products have low stock in my main shop?Manage employees:
List all employees with their roles, then show me details for employee ID 5Available Tools (58 total)
Authentication (4 tools)
Tool | Description |
| Set API key, phone, password |
| Authenticate and get token |
| Check auth status and expiry |
| Logout and clear session |
Terminals (4 tools)
Tool | Description |
| List all POS terminals |
| Get terminal by ID |
| Update terminal config |
| Delete terminal |
Shops (6 tools)
Tool | Description |
| List all shops |
| Get shop by ID |
| Create new shop |
| Update shop |
| Delete shop |
| List shop employees |
Employees (5 tools)
Tool | Description |
| List all employees |
| Get employee by ID |
| Create employee |
| Update employee |
| Delete employee |
Categories (6 tools)
Tool | Description |
| List categories |
| Create category |
| Update category |
| Delete category |
| Batch create |
| Batch delete |
Products (8 tools)
Tool | Description |
| Search/list products |
| Get product by UUID |
| Create product |
| Update product |
| Delete product |
| Batch create |
| Batch delete |
Inventory Cards (5 tools)
Tool | Description |
| List inventory cards |
| Get card by ID |
| Create card |
| Update stock |
| Delete card |
Receipts (7 tools)
Tool | Description |
| List receipts |
| Get receipt by UUID |
| Create receipt |
| Update receipt |
| Delete receipt |
| Batch create |
| Batch delete |
Reports (2 tools)
Tool | Description |
| Get Z-reports |
| Sales statistics |
Other Tools
smartkasa_unit_types_list- Unit typessmartkasa_subgroups_*- Product subgroups (4 tools)smartkasa_import_*- Product import (3 tools)smartkasa_shifts_*- Fiscal shifts (2 tools)smartkasa_transactions_get- Payment transactions
Security
Credential Storage
π Credentials are stored in memory only and are never written to disk by the server.
The security model:
Each MCP client spawns a separate process for this server
Process memory is isolated - credentials cannot leak between users
When the process ends, all credentials are cleared
Tokens auto-expire (typically 12 hours for access, 30 days for refresh)
Environment Variables
Variable | Description |
| Your SmartKasa API key |
| Phone number (e.g., 380501234567) |
| Account password |
| Logging level (DEBUG/INFO/WARNING/ERROR) |
| API URL (default: https://core.smartkasa.ua) |
Multi-User Architecture
How It Works
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β User Alice β β User Bob β β User Carol β
β (Claude App) β β (VS Code) β β (Cursor) β
ββββββββββ¬βββββββββ ββββββββββ¬βββββββββ ββββββββββ¬βββββββββ
β β β
βΌ βΌ βΌ
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β MCP Process 1 β β MCP Process 2 β β MCP Process 3 β
β (Alice's creds)β β (Bob's creds) β β (Carol's creds) β
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β β β
βββββββββββββββββββββββββ΄ββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββ
β SmartKasa API β
β core.smartkasa.ua β
βββββββββββββββββββββββββKey points:
Each user's LLM client spawns its own MCP server process
Credentials are isolated in process memory
No session conflicts between users
Process termination = automatic cleanup
Session Persistence
β οΈ Sessions do NOT persist across:
Application restarts
System reboots
Process crashes
To maintain access:
Configure credentials in environment variables
Server auto-authenticates on startup if env vars are set
Or re-set credentials via
smartkasa_set_credentialstool
Troubleshooting
Common Issues
"Import mcp could not be resolved"
pip install mcp"Authentication failed: 401"
Verify API key is correct
Check phone number format (no + prefix, just 380...)
Verify password
"Connection timeout"
Check internet connection
Verify https://core.smartkasa.ua is accessible
Try increasing
SMARTKASA_REQUEST_TIMEOUT
"Rate limited"
Server automatically handles this with retry
Reduce request frequency if persistent
Debug Mode
Enable verbose logging:
export SMARTKASA_LOG_LEVEL=DEBUGOr in config:
{
"env": {
"SMARTKASA_LOG_LEVEL": "DEBUG"
}
}Development
Running Tests
pip install pytest pytest-asyncio
pytest tests/Local Development
# Run server directly
python smartkasa-mcp-server.py
# With debug logging
SMARTKASA_LOG_LEVEL=DEBUG python smartkasa-mcp-server.pyRemote Deployment (Server Mode)
For hosting on a server, use SSE (Server-Sent Events) transport instead of stdio.
Deployment Options
Platform | Suitability | Notes |
Docker + VPS | β Best | Full control, persistent connections |
Coolify | β Excellent | Easy Docker deployment |
Railway | β Good | Supports long-running processes |
Fly.io | β Good | Global edge deployment |
Render | β Good | Free tier available |
AWS ECS/Fargate | β Good | Enterprise-grade |
Vercel | β No | Serverless, no persistent connections |
Cloudflare Workers | β No | No long-running processes |
AWS Lambda | β No | Timeout limits, no SSE |
Option 1: Docker (Recommended)
# Build image
docker build -t smartkasa-mcp .
# Run with credentials
docker run -d \
--name smartkasa-mcp \
-p 8080:8080 \
-e SMARTKASA_API_KEY="your_api_key" \
-e SMARTKASA_PHONE="380501234567" \
-e SMARTKASA_PASSWORD="your_password" \
--restart unless-stopped \
smartkasa-mcpOption 2: Docker Compose
Create .env file:
SMARTKASA_API_KEY=your_api_key
SMARTKASA_PHONE=380501234567
SMARTKASA_PASSWORD=your_passwordRun:
docker-compose up -dOption 3: Coolify
Create new service in Coolify
Select "Docker Compose" or "Dockerfile"
Point to your repository
Add environment variables in Coolify UI
Deploy
Option 4: Direct Python (with systemd)
Create /etc/systemd/system/smartkasa-mcp.service:
[Unit]
Description=SmartKasa MCP Server
After=network.target
[Service]
Type=simple
User=www-data
WorkingDirectory=/opt/smartkasa-mcp-server
Environment=SMARTKASA_API_KEY=your_key
Environment=SMARTKASA_PHONE=380501234567
Environment=SMARTKASA_PASSWORD=your_password
Environment=SMARTKASA_TRANSPORT=sse
ExecStart=/opt/smartkasa-mcp-server/venv/bin/python smartkasa-mcp-server.py --transport sse
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.targetEnable and start:
sudo systemctl enable smartkasa-mcp
sudo systemctl start smartkasa-mcpOption 5: Process Manager (PM2)
# Install PM2
npm install -g pm2
# Start server
pm2 start smartkasa-mcp-server.py \
--name smartkasa-mcp \
--interpreter python \
-- --transport sse --port 8080
# Save and enable startup
pm2 save
pm2 startupHTTPS with Reverse Proxy
For production, put behind nginx/Caddy with HTTPS:
Caddy (automatic HTTPS):
mcp.yourdomain.com {
reverse_proxy localhost:8080
}Nginx:
server {
listen 443 ssl http2;
server_name mcp.yourdomain.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
location / {
proxy_pass http://localhost:8080;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_buffering off;
proxy_cache off;
# SSE specific
proxy_set_header Cache-Control no-cache;
proxy_read_timeout 86400s;
}
}Connecting to Remote MCP Server
Claude Desktop (Remote SSE)
Edit config to use SSE transport:
{
"mcpServers": {
"smartkasa": {
"transport": {
"type": "sse",
"url": "https://mcp.yourdomain.com/sse"
}
}
}
}VS Code with Continue (Remote)
{
"experimental": {
"modelContextProtocolServers": [
{
"transport": {
"type": "sse",
"url": "https://mcp.yourdomain.com/sse"
}
}
]
}
}Health Check Endpoint
Your remote server exposes /health endpoint:
curl https://mcp.yourdomain.com/health
# {"status": "healthy", "server": "smartkasa-mcp", "transport": "sse", "authenticated": true}License
MIT License - see LICENSE file.
SmartKasa MCP Server (Π£ΠΊΡΠ°ΡΠ½ΡΡΠΊΠ°)
Production-ready MCP ΡΠ΅ΡΠ²Π΅Ρ Π΄Π»Ρ SmartKasa POS API
ΠΠ³Π»ΡΠ΄
SmartKasa MCP Server Π΄ΠΎΠ·Π²ΠΎΠ»ΡΡ AI-Π°ΡΠΈΡΡΠ΅Π½ΡΠ°ΠΌ (Claude, GPT ΡΠΎΡΠΎ) ΠΏΡΠ°ΡΡΠ²Π°ΡΠΈ Π· SmartKasa - ΡΠΊΡΠ°ΡΠ½ΡΡΠΊΠΎΡ ΠΊΠ°ΡΠΎΠ²ΠΎΡ ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π· ΡΡΡΠΊΠ°Π»ΡΠ·Π°ΡΡΡΡ. Π§Π΅ΡΠ΅Π· Π·Π²ΠΈΡΠ°ΠΉΠ½Ρ ΠΌΠΎΠ²Ρ Π²ΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΊΠ΅ΡΡΠ²Π°ΡΠΈ:
πͺ ΠΠ°Π³Π°Π·ΠΈΠ½Π°ΠΌΠΈ - ΡΡΠ²ΠΎΡΠ΅Π½Π½Ρ, ΠΎΠ½ΠΎΠ²Π»Π΅Π½Π½Ρ, ΠΊΠ΅ΡΡΠ²Π°Π½Π½Ρ ΡΠΎΡΠΊΠ°ΠΌΠΈ ΠΏΡΠΎΠ΄Π°ΠΆΡ
π¦ Π’ΠΎΠ²Π°ΡΠ°ΠΌΠΈ - ΠΏΠΎΠ²Π½Π΅ ΡΠΏΡΠ°Π²Π»ΡΠ½Π½Ρ ΡΠΊΠ»Π°Π΄ΠΎΠΌ Π· ΠΊΠ°ΡΠ΅Π³ΠΎΡΡΡΠΌΠΈ
π§Ύ Π§Π΅ΠΊΠ°ΠΌΠΈ - ΠΏΡΠΎΠ΄Π°ΠΆΡ ΡΠ° ΡΡΡΠΊΠ°Π»ΡΠ½Ρ ΠΎΠΏΠ΅ΡΠ°ΡΡΡ
π₯ ΠΡΠ°ΡΡΠ²Π½ΠΈΠΊΠ°ΠΌΠΈ - ΡΠΏΡΠ°Π²Π»ΡΠ½Π½Ρ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΎΠΌ Π· ΡΠΎΠ»ΡΠΌΠΈ
π ΠΠ²ΡΡΠ°ΠΌΠΈ - Z-Π·Π²ΡΡΠΈ ΡΠ° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ° ΠΏΡΠΎΠ΄Π°ΠΆΡΠ²
π³ Π’Π΅ΡΠΌΡΠ½Π°Π»Π°ΠΌΠΈ - ΠΊΠΎΠ½ΡΡΠ³ΡΡΠ°ΡΡΡ POS ΡΠ΅ΡΠΌΡΠ½Π°Π»ΡΠ²
Π¨Π²ΠΈΠ΄ΠΊΠΈΠΉ ΡΡΠ°ΡΡ
1. ΠΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½Ρ
# ΠΠ»ΠΎΠ½ΡΠΉΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΡΠΉ
git clone https://github.com/1212bogdan/smartkasa-mcp-server.git
cd smartkasa-mcp-server
# Π‘ΡΠ²ΠΎΡΡΡΡ Π²ΡΡΡΡΠ°Π»ΡΠ½Π΅ ΡΠ΅ΡΠ΅Π΄ΠΎΠ²ΠΈΡΠ΅
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# ΠΡΡΠ°Π½ΠΎΠ²ΡΡΡ Π·Π°Π»Π΅ΠΆΠ½ΠΎΡΡΡ
pip install -r requirements.txt2. ΠΡΡΠΈΠΌΠ°ΠΉΡΠ΅ Π΄Π°Π½Ρ Π΄Π»Ρ SmartKasa
ΠΠ°ΠΌ ΠΏΠΎΡΡΡΠ±Π½Ρ:
API Key - ΠΎΡΡΠΈΠΌΠ°ΠΉΡΠ΅ Π² ΠΎΡΠΎΠ±ΠΈΡΡΠΎΠΌΡ ΠΊΠ°Π±ΡΠ½Π΅ΡΡ SmartKasa Π°Π±ΠΎ ΡΠ΅ΡΠ΅Π· ΠΏΡΠ΄ΡΡΠΈΠΌΠΊΡ
ΠΠΎΠΌΠ΅Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ - Π²Π°Ρ Π·Π°ΡΠ΅ΡΡΡΡΠΎΠ²Π°Π½ΠΈΠΉ Π½ΠΎΠΌΠ΅Ρ (Π½Π°ΠΏΡΠΈΠΊΠ»Π°Π΄,
380501234567)ΠΠ°ΡΠΎΠ»Ρ - ΠΏΠ°ΡΠΎΠ»Ρ Π²Π°ΡΠΎΠ³ΠΎ ΠΎΠ±Π»ΡΠΊΠΎΠ²ΠΎΠ³ΠΎ Π·Π°ΠΏΠΈΡΡ
3. ΠΠ°Π»Π°ΡΡΡΠΉΡΠ΅ Π²Π°Ρ LLM ΠΊΠ»ΡΡΠ½Ρ
Claude Desktop (macOS)
Π Π΅Π΄Π°Π³ΡΠΉΡΠ΅ ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"smartkasa": {
"command": "/ΡΠ»ΡΡ
/Π΄ΠΎ/venv/bin/python",
"args": ["/ΡΠ»ΡΡ
/Π΄ΠΎ/smartkasa-mcp-server/smartkasa-mcp-server.py"],
"env": {
"SMARTKASA_API_KEY": "Π²Π°Ρ_api_ΠΊΠ»ΡΡ",
"SMARTKASA_PHONE": "380501234567",
"SMARTKASA_PASSWORD": "Π²Π°Ρ_ΠΏΠ°ΡΠΎΠ»Ρ"
}
}
}
}Claude Desktop (Windows)
Π Π΅Π΄Π°Π³ΡΠΉΡΠ΅ %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"smartkasa": {
"command": "C:\\ΡΠ»ΡΡ
\\Π΄ΠΎ\\venv\\Scripts\\python.exe",
"args": ["C:\\ΡΠ»ΡΡ
\\Π΄ΠΎ\\smartkasa-mcp-server\\smartkasa-mcp-server.py"],
"env": {
"SMARTKASA_API_KEY": "Π²Π°Ρ_api_ΠΊΠ»ΡΡ",
"SMARTKASA_PHONE": "380501234567",
"SMARTKASA_PASSWORD": "Π²Π°Ρ_ΠΏΠ°ΡΠΎΠ»Ρ"
}
}
}
}ΠΡΠΈΠΊΠ»Π°Π΄ΠΈ Π²ΠΈΠΊΠΎΡΠΈΡΡΠ°Π½Π½Ρ
ΠΠ΅ΡΡΠ° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΡΡ (ΡΠΊΡΠΎ Π½Π΅ Π½Π°Π»Π°ΡΡΠΎΠ²Π°Π½Ρ env vars):
ΠΡΡΠ°Π½ΠΎΠ²ΠΈ ΠΌΠΎΡ Π΄Π°Π½Ρ SmartKasa:
- API Key: sk_live_xxxxx
- Π’Π΅Π»Π΅ΡΠΎΠ½: 380501234567
- ΠΠ°ΡΠΎΠ»Ρ: ΠΌΡΠΉ_ΠΏΠ°ΡΠΎΠ»Ρ
ΠΠΎΡΡΠΌ Π°Π²ΡΠΎΡΠΈΠ·ΡΠΉΡΡ Ρ ΠΏΠΎΠΊΠ°ΠΆΠΈ ΠΌΠΎΡ ΠΌΠ°Π³Π°Π·ΠΈΠ½ΠΈ.ΠΠΎΠΊΠ°Π·Π°ΡΠΈ Π²ΡΡ ΡΠΎΠ²Π°ΡΠΈ:
ΠΠΎΠΊΠ°ΠΆΠΈ Π²ΡΡ ΡΠΎΠ²Π°ΡΠΈ Π² ΠΌΠΎΡΠΌΡ Π°ΠΊΠ°ΡΠ½ΡΡ SmartKasaΠ‘ΡΠ²ΠΎΡΠΈΡΠΈ Π½ΠΎΠ²ΠΈΠΉ ΡΠΎΠ²Π°Ρ:
Π‘ΡΠ²ΠΎΡΠΈ Π½ΠΎΠ²ΠΈΠΉ ΡΠΎΠ²Π°Ρ "ΠΡΠΏΡΠ΅ΡΠΎ" Π· ΡΡΠ½ΠΎΡ 45 Π³ΡΠ½,
Π³ΡΡΠΏΠ° ΠΎΠΏΠΎΠ΄Π°ΡΠΊΡΠ²Π°Π½Π½Ρ 1 (ΠΠΠ 20%), ΠΏΡΠΎΠ΄Π°ΡΡΡΡΡ ΡΡΡΠΊΠ°ΠΌΠΈΠΠ²ΡΡ ΠΏΠΎ ΠΏΡΠΎΠ΄Π°ΠΆΠ°Ρ :
ΠΠΎΠΊΠ°ΠΆΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΠΏΡΠΎΠ΄Π°ΠΆΡΠ² Π·Π° ΠΎΡΡΠ°Π½Π½ΡΠΉ ΡΠΈΠΆΠ΄Π΅Π½Ρ Π΄Π»Ρ ΠΌΠ°Π³Π°Π·ΠΈΠ½Ρ ID 123ΠΠ΅ΡΠ΅Π²ΡΡΠΈΡΠΈ Π·Π°Π»ΠΈΡΠΊΠΈ:
Π―ΠΊΡ ΡΠΎΠ²Π°ΡΠΈ ΠΌΠ°ΡΡΡ Π½ΠΈΠ·ΡΠΊΠΈΠΉ Π·Π°ΠΏΠ°Ρ Π² Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΌΡ ΠΌΠ°Π³Π°Π·ΠΈΠ½Ρ?ΠΠ΅Π·ΠΏΠ΅ΠΊΠ°
ΠΠ±Π΅ΡΡΠ³Π°Π½Π½Ρ Π΄Π°Π½ΠΈΡ
π ΠΠ°Π½Ρ Π·Π±Π΅ΡΡΠ³Π°ΡΡΡΡΡ ΡΡΠ»ΡΠΊΠΈ Π² ΠΏΠ°ΠΌ'ΡΡΡ Ρ Π½ΡΠΊΠΎΠ»ΠΈ Π½Π΅ Π·Π°ΠΏΠΈΡΡΡΡΡΡΡ Π½Π° Π΄ΠΈΡΠΊ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ.
ΠΠΎΠ΄Π΅Π»Ρ Π±Π΅Π·ΠΏΠ΅ΠΊΠΈ:
ΠΠΎΠΆΠ΅Π½ LLM ΠΊΠ»ΡΡΠ½Ρ Π·Π°ΠΏΡΡΠΊΠ°Ρ ΠΎΠΊΡΠ΅ΠΌΠΈΠΉ ΠΏΡΠΎΡΠ΅Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°
ΠΠ°ΠΌ'ΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠ² ΡΠ·ΠΎΠ»ΡΠΎΠ²Π°Π½Π° - Π΄Π°Π½Ρ Π½Π΅ ΠΌΠΎΠΆΡΡΡ Π²ΠΈΡΡΠΊΠ°ΡΠΈ ΠΌΡΠΆ ΠΊΠΎΡΠΈΡΡΡΠ²Π°ΡΠ°ΠΌΠΈ
ΠΠΎΠ»ΠΈ ΠΏΡΠΎΡΠ΅Ρ Π·Π°Π²Π΅ΡΡΡΡΡΡΡΡ, Π²ΡΡ Π΄Π°Π½Ρ ΠΎΡΠΈΡΠ°ΡΡΡΡΡ
Π’ΠΎΠΊΠ΅Π½ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ Π·Π°ΠΊΡΠ½ΡΡΡΡΡΡΡ (Π·Π°Π·Π²ΠΈΡΠ°ΠΉ 12 Π³ΠΎΠ΄ΠΈΠ½ Π΄Π»Ρ access, 30 Π΄Π½ΡΠ² Π΄Π»Ρ refresh)
ΠΡΠ»ΡΡΠΈΠΊΠΎΡΠΈΡΡΡΠ²Π°ΡΡΠΊΠ° Π°ΡΡ ΡΡΠ΅ΠΊΡΡΡΠ°
Π―ΠΊ ΡΠ΅ ΠΏΡΠ°ΡΡΡ
ΠΠΎΠΆΠ΅Π½ LLM ΠΊΠ»ΡΡΠ½Ρ ΠΊΠΎΡΠΈΡΡΡΠ²Π°ΡΠ° Π·Π°ΠΏΡΡΠΊΠ°Ρ Π²Π»Π°ΡΠ½ΠΈΠΉ ΠΏΡΠΎΡΠ΅Ρ MCP ΡΠ΅ΡΠ²Π΅ΡΠ°
ΠΠ°Π½Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΡΡ ΡΠ·ΠΎΠ»ΡΠΎΠ²Π°Π½Ρ Π² ΠΏΠ°ΠΌ'ΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡ
ΠΠ΅ΠΌΠ°Ρ ΠΊΠΎΠ½ΡΠ»ΡΠΊΡΡΠ² ΡΠ΅ΡΡΠΉ ΠΌΡΠΆ ΠΊΠΎΡΠΈΡΡΡΠ²Π°ΡΠ°ΠΌΠΈ
ΠΠ°Π²Π΅ΡΡΠ΅Π½Π½Ρ ΠΏΡΠΎΡΠ΅ΡΡ = Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½Π΅ ΠΎΡΠΈΡΠ΅Π½Π½Ρ
ΠΠ±Π΅ΡΠ΅ΠΆΠ΅Π½Π½Ρ ΡΠ΅ΡΡΠΉ
β οΈ Π‘Π΅ΡΡΡ ΠΠ Π·Π±Π΅ΡΡΠ³Π°ΡΡΡΡΡ ΠΏΡΡΠ»Ρ:
ΠΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΡ Π΄ΠΎΠ΄Π°ΡΠΊΠ°
ΠΠ΅ΡΠ΅Π·Π°Π²Π°Π½ΡΠ°ΠΆΠ΅Π½Π½Ρ ΡΠΈΡΡΠ΅ΠΌΠΈ
ΠΠ²Π°ΡΡΠΉΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½Π½Ρ ΠΏΡΠΎΡΠ΅ΡΡ
ΠΠ»Ρ Π·Π±Π΅ΡΠ΅ΠΆΠ΅Π½Π½Ρ Π΄ΠΎΡΡΡΠΏΡ:
ΠΠ°Π»Π°ΡΡΡΠΉΡΠ΅ Π΄Π°Π½Ρ Ρ Π·ΠΌΡΠ½Π½ΠΈΡ ΠΎΡΠΎΡΠ΅Π½Π½Ρ
Π‘Π΅ΡΠ²Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ Π°Π²ΡΠΎΡΠΈΠ·ΡΡΡΡΡΡ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΡ
ΠΠ±ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ Π·Π°Π΄Π°ΠΉΡΠ΅ Π΄Π°Π½Ρ ΡΠ΅ΡΠ΅Π·
smartkasa_set_credentials
Π£ΡΡΠ½Π΅Π½Π½Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌ
"Authentication failed: 401"
ΠΠ΅ΡΠ΅Π²ΡΡΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡΡΡ API ΠΊΠ»ΡΡΠ°
ΠΠ΅ΡΠ΅Π²ΡΡΡΠ΅ ΡΠΎΡΠΌΠ°Ρ Π½ΠΎΠΌΠ΅ΡΠ° (Π±Π΅Π· +, ΠΏΡΠΎΡΡΠΎ 380...)
ΠΠ΅ΡΠ΅Π²ΡΡΡΠ΅ ΠΏΠ°ΡΠΎΠ»Ρ
"Connection timeout"
ΠΠ΅ΡΠ΅Π²ΡΡΡΠ΅ Π·'ΡΠ΄Π½Π°Π½Π½Ρ Π· ΡΠ½ΡΠ΅ΡΠ½Π΅ΡΠΎΠΌ
ΠΠ΅ΡΠ΅Π²ΡΡΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΡΡΡ https://core.smartkasa.ua
Π Π΅ΠΆΠΈΠΌ Π½Π°Π»Π°Π³ΠΎΠ΄ΠΆΠ΅Π½Π½Ρ
export SMARTKASA_LOG_LEVEL=DEBUGΠΡΠ΄Π΄Π°Π»Π΅Π½ΠΈΠΉ ΡΠΎΠ·Π³ΠΎΡΡΠ°Π½Π½Ρ (Π‘Π΅ΡΠ²Π΅ΡΠ½ΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ)
ΠΠ»Ρ Ρ ΠΎΡΡΠΈΠ½Π³Ρ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΡ Π²ΠΈΠΊΠΎΡΠΈΡΡΠΎΠ²ΡΠΉΡΠ΅ SSE (Server-Sent Events) transport.
Π―ΠΊ ΡΠ΅ ΠΏΡΠ°ΡΡΡ
ΠΡΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌΡ Π²ΠΈΠΊΠΎΡΠΈΡΡΠ°Π½Π½Ρ (stdio) - LLM ΠΊΠ»ΡΡΠ½Ρ ΡΠ°ΠΌ Π·Π°ΠΏΡΡΠΊΠ°Ρ ΡΠ΅ΡΠ²Π΅Ρ.
ΠΡΠΈ Π²ΡΠ΄Π΄Π°Π»Π΅Π½ΠΎΠΌΡ (SSE) - ΡΠ΅ΡΠ²Π΅Ρ ΠΏΡΠ°ΡΡΡ ΠΏΠΎΡΡΡΠΉΠ½ΠΎ, ΠΊΠ»ΡΡΠ½ΡΠΈ ΠΏΡΠ΄ΠΊΠ»ΡΡΠ°ΡΡΡΡΡ ΠΏΠΎ HTTP.
ΠΠ°ΡΡΠ°Π½ΡΠΈ ΡΠΎΠ·Π³ΠΎΡΡΠ°Π½Π½Ρ
ΠΠ»Π°ΡΡΠΎΡΠΌΠ° | ΠΡΠΈΠ΄Π°ΡΠ½ΡΡΡΡ | ΠΡΠΈΠΌΡΡΠΊΠΈ |
Docker + VPS | β ΠΠ°ΠΉΠΊΡΠ°ΡΠ΅ | ΠΠΎΠ²Π½ΠΈΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ |
Coolify | β ΠΡΠ΄ΠΌΡΠ½Π½ΠΎ | ΠΠ΅Π³ΠΊΠ΅ Docker ΡΠΎΠ·Π³ΠΎΡΡΠ°Π½Π½Ρ |
Railway | β ΠΠΎΠ±ΡΠ΅ | ΠΡΠ΄ΡΡΠΈΠΌΡΡ long-running |
Fly.io | β ΠΠΎΠ±ΡΠ΅ | Global edge |
Vercel | β ΠΡ | Serverless, Π½Π΅ΠΌΠ°Ρ SSE |
Lambda | β ΠΡ | Timeout, Π½Π΅ΠΌΠ°Ρ SSE |
Docker
# ΠΠ±ΡΡΠΊΠ°
docker build -t smartkasa-mcp .
# ΠΠ°ΠΏΡΡΠΊ
docker run -d \
--name smartkasa-mcp \
-p 8080:8080 \
-e SMARTKASA_API_KEY="Π²Π°Ρ_ΠΊΠ»ΡΡ" \
-e SMARTKASA_PHONE="380501234567" \
-e SMARTKASA_PASSWORD="Π²Π°Ρ_ΠΏΠ°ΡΠΎΠ»Ρ" \
--restart unless-stopped \
smartkasa-mcpDocker Compose
# Π‘ΡΠ²ΠΎΡΡΡΡ .env ΡΠ°ΠΉΠ» Π· credentials
docker-compose up -dSystemd (Linux ΡΠ΅ΡΠ²Π΅Ρ)
Π‘ΡΠ²ΠΎΡΡΡΡ /etc/systemd/system/smartkasa-mcp.service:
[Unit]
Description=SmartKasa MCP Server
After=network.target
[Service]
Type=simple
User=www-data
WorkingDirectory=/opt/smartkasa-mcp-server
Environment=SMARTKASA_API_KEY=Π²Π°Ρ_ΠΊΠ»ΡΡ
Environment=SMARTKASA_TRANSPORT=sse
ExecStart=/opt/smartkasa-mcp-server/venv/bin/python smartkasa-mcp-server.py --transport sse
Restart=always
[Install]
WantedBy=multi-user.targetΠΡΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½Ρ Π΄ΠΎ Π²ΡΠ΄Π΄Π°Π»Π΅Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°
Π£ ΠΊΠΎΠ½ΡΡΠ³Ρ Claude Desktop:
{
"mcpServers": {
"smartkasa": {
"transport": {
"type": "sse",
"url": "https://mcp.yourdomain.com/sse"
}
}
}
}Π‘ΠΊΡΡΠ½ΡΠΎΡΠΈ
Π ΠΎΠ±ΠΎΡΠ° Π·Ρ SmartKasa API ΡΠ΅ΡΠ΅Π· Claude Desktop Π· Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ Π·Π°ΠΏΡΡΠ΅Π½ΠΈΠΌ MCP








ΠΡΡΠ΅Π½Π·ΡΡ
MIT License - Π΄ΠΈΠ²ΡΡΡΡΡ ΡΠ°ΠΉΠ» LICENSE.
ΠΡΠΎΠ±Π»Π΅Π½ΠΎ Π· β€οΈ Π΄Π»Ρ ΡΠΊΡΠ°ΡΠ½ΡΡΠΊΠΎΡ ΡΠΏΡΠ»ΡΠ½ΠΎΡΠΈ ΡΠΎΠ·ΡΠΎΠ±Π½ΠΈΠΊΡΠ²
This server cannot be deployed
Maintenance
Related MCP Connectors
Manage your NanoCart store from any AI agent: products, orders, coupons, subscribers, reports.
Run your restaurant from an AI client: orders, menu, reports, refunds, payouts and staff.
Connect AI to store orders, products and inventory with scoped access and human approvals.
Manage your Savanto store from your AI: catalog, content, prompts, and analytics, by chat.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage business operations including invoicing, WooCommerce syncing, expense tracking, POS, inventory, and team management through natural language.3 npm2MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with SalesDrive CRM, allowing order management, product queries, and more through natural language.Apache 2.0
- AlicenseAqualityBmaintenanceExposes the Loyverse API as MCP tools to manage stores, products, inventory, customers, receipts, and more from AI assistants.54MIT
- FlicenseNot gradedqualityCmaintenanceEnables AI assistants to query a retail and food-service point-of-sale database through predefined business tools for sales summaries, top products, margins, stagnant inventory, cash reconciliation, and optional stock adjustments, returning formatted markdown answers.-