StarLine MCP
MCP server for controlling StarLine car alarms via AI agents like Claude, providing read-only tools and command tools with human confirmation.
README
StarLine MCP
MCP-сервер для управления автосигнализацией StarLine через ИИ-агента (Claude и др.).
Агент вызывает понятные инструменты (list_devices, get_status, set_engine…), а сервер
прячет всю «грязь»: 4-шаговую авторизацию StarLineID, кэш токенов и маппинг команд в облачный API.
AI-агент (Claude) ──tools──► StarLine MCP ──REST──► облако StarLine ──GSM──► блок в машине
Архитектура
| Слой | Файл | Ответственность |
|---|---|---|
| Конфиг | config.py |
учётные данные из .env |
| Авторизация | auth.py |
getCode → getToken → user/login → auth.slid, кэш slnet (24ч) |
| Клиент API | client.py |
список/статус устройств, отправка команд, авто-переавторизация |
| MCP-сервер | server.py |
инструменты для агента |
Безопасность
Инструменты разделены на два класса:
- read-only (
list_devices,get_status,get_location) — выполняются свободно. - команды управления (
set_security,set_engine,set_heater,set_channel) — отказывают безconfirm=true. Агент не должен подставлятьconfirmсам — подтверждение исходит от человека. Рекомендуется дополнительно требовать approval на эти инструменты в настройках хоста (Claude Desktop / Claude Code permissions).
⚠️ Запуск двигателя и снятие с охраны — физические действия с реальной машиной. Относитесь к ним как к необратимым.
Установка
Изолированный venv обязателен: на машине бывает несколько Python, а голый python
в конфиге MCP-хоста резолвится непредсказуемо (главная причина «не запускается»).
cd "C:/GIT/StarLine MCP"
py -3.12 -m venv .venv
.venv/Scripts/python.exe -m pip install -e . # ставит пакет + зависимости в venv
cp .env.example .env # затем заполнить
После -e . пакет импортируется из venv — PYTHONPATH задавать не нужно.
Самодиагностика (проверяет импорты и конфиг, печатает в stderr):
.venv/Scripts/python.exe -m starline_mcp.server --healthcheck
.env:
STARLINE_APP_ID=... # из https://my.starline.ru/developer
STARLINE_APP_SECRET=...
STARLINE_LOGIN=... # аккаунт my.starline.ru
STARLINE_PASSWORD=...
Проверка доступа
.venv/Scripts/python.exe -m starline_mcp.check_auth
Залогинится и выведет список ваших устройств со статусом. Это лучший первый шаг — убедиться, что API-доступ реально работает, до подключения к агенту.
Запуск MCP-сервера
.venv/Scripts/python.exe -m starline_mcp.server
Подключение к Claude Code: в корне уже лежит .mcp.json с абсолютным путём к venv
(не голый python — это принципиально):
{
"mcpServers": {
"starline": {
"command": "C:/GIT/StarLine MCP/.venv/Scripts/python.exe",
"args": ["-m", "starline_mcp.server"],
"cwd": "C:/GIT/StarLine MCP",
"env": { "PYTHONIOENCODING": "utf-8" }
}
}
}
Если хост (Hermes/Claude Code) «не видит модуль» — почти всегда это голый
pythonв команде вместо абсолютного пути к.venv/Scripts/python.exe. Не подмешивайPYTHONPATHи не плоди wrapper-скрипты — послеpip install -e .это не нужно.
Подключение к Claude Code
В корне лежит .mcp.json — Claude Code подхватит сервер автоматически при запуске в этой папке.
Список инструментов появится после подтверждения подключения MCP-сервера.
Рекомендация: в настройках прав потребуй approval на инструменты
set_*(команды управления), чтобы каждое физическое действие с машиной подтверждалось вручную.
Статус
- [x] Авторизация (4 шага) + кэш токенов
- [x] Чтение: список устройств, статус, GPS, баланс SIM
- [x] Команды с подтверждением: охрана, двигатель, подогреватель, доп. канал, поиск авто
- [x] Проверено на живом аккаунте
- [x] Авто-выбор команды под модель блока (
ignvsign_start/ign_stop) - [x] Проверка поддержки команды конкретным блоком (по
controls) - [x] Кэш списка устройств (TTL 15с)
- [x] Конфиг
.mcp.jsonдля Claude Code - [ ] Боевая проверка отправки команд (требует согласия владельца — физическое действие)
- [ ] Обработка 2FA в интерактиве (если включится на аккаунте)
Источники
Эндпоинты и алгоритмы сверены по:
- https://github.com/Anonym-tsk/starline (pip-пакет
starline) homeassistant/components/starline- https://developer.starline.ru/
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.