
LabJack T-series DAQ
io.github.K-Dense-AI由 GitHub 帳號 K-Dense-AI 發布v0.1.3更新於 Oct 24, 2026
MCP server for LabJack T4, T7/T7-Pro and T8 DAQ devices (LJM).
概覽
本機 MCP 伺服器,讓 AI 助理讀取 LabJack T4、T7/T7-Pro 與 T8 資料擷取裝置的類比輸入、串流波形與熱電偶,並在允許時驅動 DAC 與數位輸出。
- 可以做什麼
- 檢視連線與裝置:回報已連線的 LabJack 身分、型號、序號、韌體、可用輸入、量程與數位線,查看原始命令紀錄,或在斷電重啟、重新插線後重新連線。單次讀取類比輸入與裝置溫度,包括內部感測器與估算的環境溫度。在 T7/T8 上讀取熱電偶,回傳類型、量測電壓與冷接點溫度。讀取數位線的電位與方向,且不改變其方向。在類比輸入上進行硬體定時波形擷取,回傳各通道統計、降取樣波形,可選擇存成 CSV。驅動輸出:將數位線設為高或低、寫入 DAC0/DAC1 直流電壓,並把輸出回復到安全狀態。
- 適用情境
- 當你桌面上有 LabJack T4、T7/T7-Pro 或 T8,並希望助理在安全限值內進行量測、記錄波形、檢查熱電偶或數位線,或調整類比與數位輸出時適用。內建模擬器可讓你在沒有硬體的情況下先試用流程。
- 執行需求
- 以 Python 套件(uvx labmcp-labjack)透過 stdio 在本機執行,僅限桌面。需另外安裝 LabJack 原生 LJM 函式庫與 USB 驅動程式,裝置需可透過 USB、乙太網路或 WiFi 連線。用 LABMCP_ADDRESS 指定儀器(序號、IP、裝置名稱或 ANY);可選 LABMCP_LIMITS、LABMCP_READ_ONLY 與 LABMCP_SIMULATE。請關閉 Kipling、LJLogM、LJStreamM 等其他 LabJack 軟體,因為 USB 裝置同一時間只能被一個程序占用。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 LabJack T-series DAQ,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
LabJack T-series DAQ — MCP Server
Let an AI agent read analog inputs, stream waveforms, read thermocouples, check digital lines and (with your permission) set DACs and digital outputs on LabJack T4, T7/T7-Pro and T8 DAQ devices through LabJack's official LJM library.
Try it without hardware
The simulator wires a 2 V / 10 Hz sine to AIN0, a thermistor divider (~2.5 V) to AIN1, DAC0 back into AIN2, an LM34 cold-junction sensor to AIN3, and a ~37 °C thermocouple to AIN0-AIN3 when the thermocouple feature is used. Other inputs are grounded.
Connect your LabJack
- Install LJM (the native library and USB driver) from labjack.com/support/software/installers/ljm. The
labjack-ljmPython package is installed automatically with this server, but it needs that native library. - Close other LabJack software (Kipling, LJLogM, LJStreamM). A device can only be claimed by one process at a time over USB.
- Test the connection:
--addressis the LJM identifier: a serial number, an IP address, a device name, orANY(the default).
Add to your MCP client
Claude Code
Claude Desktop / Cursor / Windsurf (claude_desktop_config.json, .cursor/mcp.json, …)
Add --read-only to allow measurements but block the DAC and digital-output tools (set_outputs_safe stays available). Add --option safe_dio=FIO0,FIO1 to make set_outputs_safe always release those lines, even if another program drove them. For other clients, generate the snippet with uvx labmcp config labjack --client vscode (also cursor, codex, claude-code).
Tools
get_connection_info, get_command_log and reconnect are built into every LabMCP server. The command log records every LJM register read and write.
Safety limits
Override at launch, e.g. --limit max_dac_voltage_v=2.5. Limits are checked before anything is sent. Streams are also capped at 2 million samples in total.
Example prompts
- "Read AIN0-AIN3 on the ±1 V range and tell me which channels look like they are floating."
- "Stream AIN0 and AIN1 at 5 kHz for 2 seconds, give me the RMS and peak-to-peak of each, and save the data to ~/data/run12.csv."
- "Read the type K thermocouple on AIN2 every 10 seconds for a minute and tell me whether it is still warming up."
- "Set DAC0 to 1.25 V, then check the loopback on AIN2 and report the error in millivolts."
- "Which digital lines are outputs right now, and what level are they at?"
- "We're done — put all the outputs back in a safe state."
Notes
- Model differences are enforced. Valid input ranges (
AIN#_RANGE) and resolution indices come from LabJack's register map: T7 ±10/±1/±0.1/±0.01 V and index 0-8 (T7-Pro 0-12, but 9-12 cannot stream); T8 ±11 … ±0.018 V and index 0-16 (one index shared by all inputs); T4 fixed ranges (AIN0-3 ±10 V, AIN4-11 0-2.5 V) and index 0-5. DAC range: T4/T7 0-5 V, T8 0-10 V. - Settings persist. Range, resolution and differential settings made by
read_analog_inputsstay on the device until changed or power-cycled. Omitted settings are left as they are; every reading reports what it was measured against (GND, the T7 negative input, or the T8's isolated terminal). - Reading digital lines never changes their direction.
read_digital_inputsuses theDIO_STATE/DIO_DIRECTIONbitmasks. (Reading a single-line register such asFIO3would switch that line to input.) - T4 flexible I/O. AIN4-AIN11 share terminals with FIO4-EIO3. The server refuses to read those AINs while the line is a digital output, because the read would switch it to analog and release whatever it drives.
set_outputs_safedefault isinput, the T-series power-up state (input with pull-up). If an attached relay board treats a pulled-up input as "on", usedio_mode="low"instead.- Thermocouples use the AIN extended feature (
AIN#_EF_INDEX20-30). Withcjc="internal"the CJC register is set to its documented defaultTEMPERATURE_DEVICE_K(address 60052), which the T8 firmware maps to each channel's own terminal sensor (TEMPERATURE#_CAPTURE);cjc="lm34"uses LabJack's LM34 conversion (55.56 K/V, 255.37 K). An open input returnsvalid=false(the device reports -9999). - Streams follow LabJack's
stream_basic.pyexample (internal clock, no trigger, auto settling). While a stream runs, command-response analog reads are blocked by the device. Skipped scans (buffer overflow) are reported and left empty.set_outputs_safedoes not wait for a running stream: it stops it at the next read (the partial result is returned withaborted: true). A stream runs at 1 scan/s or faster (so that stop is prompt) and always takes at least two scans; that real duration is what themax_stream_duration_slimit checks. The returned waveform is downsampled by keeping each block's minimum and maximum, so short spikes are not lost;save_pathmust be a new.csvfile (an existing file is never overwritten, and the path is checked before streaming). - Importing the LJM wrapper prints to stdout if the native library is missing. The server redirects that import so the MCP stdio channel is never corrupted, and reports a clear install hint instead.
Hardware verification
來源:servers/engineering/labjack/README.md,提交 46545ea
工具
0版本歷史
2- v0.1.3最新Sep 27, 2026
- v0.1.1Sep 26, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分