trucksim-mcp

trucksim-mcp

Streams live Euro Truck Simulator 2 / American Truck Simulator telemetry and driving analytics to any MCP-compatible AI assistant, with read-only tools for truck state, navigation, fuel, job status, speeding checks, eco scoring, trip summaries, rest advice, and recent events, plus a headless Claude coach agent.

Category
访问服务器

README

trucksim-mcp

An MCP server that streams Euro Truck Simulator 2 and American Truck Simulator telemetry — plus live driving analytics — to any AI harness (Claude Desktop, Claude Code, Cursor, Cline, …). Includes a headless Claude analytics agent that acts as an in-cab dispatcher/driving coach.

CI License: MIT Python 3.10+

Ask your assistant "Am I speeding?", "Will I make the delivery deadline?", "How's my fuel range?", or "Score my driving so far" — and it answers from live game telemetry. This is a read-only, telemetry-and-analytics server: it never controls the truck.

Note: "American Truck Simulator 2" isn't a separate game — SCS still ships the original ATS. Both ATS and ETS2 share the same engine and telemetry SDK, so trucksim-mcp supports both with no configuration.

How it works

ETS2 / ATS ──(SCS Telemetry SDK)──▶ telemetry source ──▶ trucksim-mcp ──▶ any MCP client
                                     (mmap | http | mock)   (tools+analytics)   (Claude, Cursor…)

Because the SCS SDK writes to Windows shared memory, trucksim-mcp reads telemetry through a pluggable source:

Source Use it when Needs the game?
mock Demos, CI, development — a built-in scripted trip No
http The game runs on a Windows PC exposing a JSON telemetry feed (Funbit / trucksim-gps); read it from anywhere Yes (remote)
mmap trucksim-mcp runs on the same Windows PC as the game Yes (local)
replay Replay a real drive you captured with trucksim-mcp record No

The mock source means the entire pipeline runs end-to-end on any OS with no game installed; the http mapping is verified against a real captured payload (tests/fixtures/funbit_sample.json); and trucksim-mcp selftest confirms your wiring (and flags implausible readings).

Quickstart

# no install, straight from GitHub (PyPI release pending)
TRUCKSIM_SOURCE=mock uvx --from git+https://github.com/rachittshah/trucksim-mcp trucksim-mcp

See docs/clients.md for Claude Desktop / Cursor / Cline config, and docs/sources.md for wiring up real ETS2/ATS telemetry.

Connect your local ETS2 / ATS

The mock source needs no game; to read your real game, pick a source (docs/sources.md has the full guide):

Cross-platform (recommended) — the game runs on Windows, trucksim-mcp can run anywhere on your LAN:

  1. Install an SCS telemetry plugin (RenCloud/scs-sdk-plugin) into the game's bin/win_x64/plugins/.

  2. Run a telemetry HTTP server (Funbit/ets2-telemetry-server, port 25555).

  3. Configure and verify the wiring before touching an MCP client:

    export TRUCKSIM_SOURCE=http
    export TRUCKSIM_HTTP_URL=http://<game-pc-ip>:25555/api/ets2/telemetry
    uvx --from git+https://github.com/rachittshah/trucksim-mcp trucksim-mcp selftest
    
    source: http
    connected: True
    game:   ets2
    speed:  84 km/h (limit 90)
    job:    Reefer  Frankfurt -> Munich
    ✅ Telemetry is live. Point your MCP client at this same config.
    

Native Windowstrucksim-mcp on the same PC as the game: set TRUCKSIM_SOURCE=mmap (experimental) and run trucksim-mcp selftest.

Then use the same env in your MCP client config or in agent/mcp.json.

Tools

10 read-only tools — full reference in docs/tools.md:

  • Stateget_truck_state, get_navigation, get_fuel_status, get_raw_telemetry
  • Jobget_active_job
  • Analyticscheck_speeding, get_eco_score, get_trip_summary, get_rest_advisor, list_recent_events

Example prompts

Once connected (even with TRUCKSIM_SOURCE=mock), ask your assistant:

  • "What's my truck doing right now?"get_truck_state
  • "Am I speeding?"check_speeding
  • "Do I have enough fuel to reach the destination?"get_fuel_status
  • "Will I make the delivery deadline?"get_active_job
  • "Score my driving and tell me what to fix."get_eco_score + get_trip_summary
  • "Should I take a break?"get_rest_advisor

Menu bar apps (talk to Claude in-game)

Two macOS menu bar apps give you a live telemetry glance plus a floating Claude chat overlay that appears over ETS2/ATS — ask about your drive without leaving the game. Full guide: docs/menubar.md.

# Python (all-Python, pip install)
pip install "trucksim-mcp[menubar]" && TRUCKSIM_SOURCE=mock trucksim-mcp menubar

# Native SwiftUI (smoothest full-screen overlay) — see macos/TruckSimMenuBar/

Both float a non-activating NSPanel (fullScreenAuxiliary) over the game, so the chat sits on top without stealing focus.

The coaching agent in action

Running the headless agent against the built-in mock trip — a real claude -p (Sonnet 5) reading telemetry through this server:

$ TRUCKSIM_AGENT_ONCE=1 ./agent/coach.sh

Heads up: your Hamburg steel-tubes job is projected LATE — ETA 7h7m vs a 4h59m
deadline, a 2h7m shortfall, so this delivery needs a route/time fix, not just
steady driving. Speed and fuel are fine: you're well under the 90 km/h limit,
damage is only 3%, and fuel (688L, ~2149 km range) easily covers the 285 km
trip. Recommendation: check for a faster route or accept the late penalty now.

The headless analytics agent

agent/ contains a background Claude Code headless (claude -p, Sonnet 5) runner that connects to this MCP server and produces periodic in-cab coaching updates from live telemetry — a dispatcher without the voice. See agent/README.md.

Documentation

Guide What's in it
docs/tools.md Generated reference for all 10 MCP tools.
docs/clients.md Add the server to Claude Desktop / Claude Code / Cursor / Cline / Windsurf.
docs/sources.md Wire up real telemetry (mock / http / mmap) + tuning.
docs/menubar.md The two macOS menu bar apps and the in-game chat overlay.
agent/README.md The headless claude -p coaching agent.
macos/TruckSimMenuBar/README.md Building the native SwiftUI app.
evals/README.md The automated, graded evaluation harness.
CONTRIBUTING.md · CHANGELOG.md · RELEASING.md Contributing, release notes, and the PyPI release process.

License

MIT © Rachitt Shah. Not affiliated with or endorsed by SCS Software. Euro Truck Simulator 2 and American Truck Simulator are trademarks of SCS Software.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选