connected-car-mcp
connected-car-mcp
MCP-сервер (Model Context Protocol) для синтетического парка подключенных автомобилей: телеметрия, обнаружение аномалий на основе правил и рекомендации по техническому обслуживанию, представленные в виде пяти узких инструментов вместо одного интерфейса запросов открытого типа.
Создан как небольшая самодостаточная иллюстрация конкретной привычки проектирования: решать, что должно находиться за границей инструмента, и регистрировать каждый вызов через нее. Работает полностью на синтетических данных, генерируемых локально — без внешнего API, без учетной записи, без проприетарного источника.
Почему он устроен именно так
Весь набор данных можно было бы предоставить через один инструмент run_query(sql: str). Это неправильная форма для надежного вызова агентом: она перекладывает изучение схемы на модель во время вызова, и нет способа ограничить или проверить «что можно спросить» для каждой возможности. Вместо этого:
Tool | Contract |
| Перечислить парк |
| Сырые показания для одного автомобиля, ограниченные по времени |
| Последний снимок + средние значения по парку |
| Флаги на основе правил: перегрев, низкий заряд батареи, коды неисправностей, агрессивное вождение |
| Приоритизированные действия для одного автомобиля |
Модель комбинирует эти инструменты — сводка → выбор автомобиля с флагом → получение его телеметрии → получение рекомендации — вместо написания произвольных запросов к сырым строкам. Это также делает аудит тривиальным: есть только пять четко определенных вызовов для регистрации, поэтому audit_log.jsonl (см. connected_car_mcp/audit.py) — это одна строка на вызов: временная метка, инструмент, аргументы, длительность, успех/неудача — без специальной логики для каждого инструмента. Продакшн-развертывание могло бы отправлять ту же запись в виде структурированных логов через хук middleware в MCPServer (который видит каждый JSON-RPC вызов, инструмент или ресурс), а не в локальный файл; декоратор здесь позволяет демо работать без дополнительной инфраструктуры.
Пороги аномалий намеренно просты и объяснимы (engine_temp_c >= 110, а не обученная модель) — флаги монитора парка должны быть проверяемы человеком, а не просто точными.
Related MCP server: mcp-live-telemetry
Данные
data/generate_telemetry.py генерирует детерминированный (с фиксированным зерном) полностью синтетический набор данных: 12 автомобилей, показания каждые 10 минут в течение 3 дней. Несколько автомобилей содержат внесенные неисправности, чтобы детектор аномалий имел реальный сигнал для поиска:
CCV-004 — температура двигателя поднимается в критический диапазон (отказ системы охлаждения)
CCV-009 — напряжение батареи со временем снижается (неисправность батареи/генератора)
CCV-002, CCV-011 — периодические коды неисправностей DTC
CCV-006 — периодические скачки скорости при агрессивном вождении
data/telemetry.csv включен в репозиторий, чтобы его можно было сразу запустить; перегенерируйте его с помощью:
python data/generate_telemetry.pyЗапуск
python -m venv .venv
.venv/Scripts/activate # .venv/bin/activate on macOS/Linux
pip install -r requirements.txt
python -m connected_car_mcp.server # starts the MCP server over stdioЧтобы попробовать его из Claude Desktop или другого MCP-клиента, укажите на модуль с cwd, установленным в корень репозитория, например, в claude_desktop_config.json:
{
"mcpServers": {
"connected-car-fleet": {
"command": "python",
"args": ["-m", "connected_car_mcp.server"],
"cwd": "/path/to/connected-car-mcp"
}
}
}Затем задайте что-то вроде «Какие автомобили в парке требуют внимания прямо сейчас и почему?» — модель вызовет fleet_health_summary, затем detect_anomalies для автомобилей с флагами и может вызвать get_maintenance_recommendations, чтобы превратить это в следующие действия.
Тесты
pip install pytest
pytest tests/Покрывает слой данных напрямую (размер парка, обработка неизвестных автомобилей и то, что внесенные неисправности действительно получают флаги), а не через протокол MCP.
Структура проекта
connected_car_mcp/
server.py MCP tool + resource definitions
data_store.py Query layer over the telemetry CSV (pandas)
audit.py Per-call audit log decorator
data/
generate_telemetry.py Synthetic dataset generator
telemetry.csv Generated dataset (committed)
tests/
test_data_store.pyЛицензия
MIT — см. LICENSE.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server that unifies real-time telemetry from industrial systems into a single queryable interface, enabling production visibility, anomaly detection, and operational insights.510MIT
- AlicenseAqualityBmaintenanceExposes live industrial IoT telemetry to any MCP client, streaming simulated sensor data from a fleet of machines and detecting anomalies, with the ability to inject faults on demand.4MIT
- AlicenseNot gradedqualityCmaintenanceMCP server exposing distributed industrial asset data (battery storage, EV chargers, solar arrays) with tools for asset status, geospatial search, alerts, anomaly explanation, and load simulation.1,014MIT
- AlicenseNot gradedqualityCmaintenanceEnables incident detection and analysis by identifying anomalies in metric time series and surfacing root-cause candidates and recommended actions. Supports both mock (synthetic) and VictoriaMetrics backends with identical MCP tool contracts for seamless development-to-production switching.MIT
Related MCP Connectors
A paid remote MCP for AI SDK eval dashboard, built to return verdicts, receipts, usage logs, and aud
Hosted MCP endpoint with realistic fake data for prototyping agents. 12 tools, no setup.
Free MCP tools: the only MCP linter, health checks, cost estimation, and trust evaluation.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/somusathya/connected-car-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server