Mettler Toledo Balance

io.github.K-Dense-AI由 GitHub 帳號 K-Dense-AI 發布v0.1.3更新於 Oct 27, 2026

MCP server for Mettler Toledo laboratory balances (MT-SICS): weigh, tare, zero, log drift, adjust.

已驗證STDIO僅桌面開發者工具資料與分析

概覽

AI 產生的概覽

本機 MCP 伺服器,透過 MT-SICS 驅動梅特勒-托利多實驗室天平,讓助理秤重、去皮、歸零、記錄漂移並執行校正。

可以做什麼
  • 讀取目前淨重、去皮值、內部溫度與防風門位置,並記錄連續秤重序列及統計摘要,用於監測漂移或蒸發。
  • 執行去皮、清除去皮、預設去皮值、歸零,並在天平螢幕上顯示訊息或切回重量顯示。
  • 開闔電動防風門,並使用內建參考砝碼執行內部校正。
  • 查看連線資訊與原始指令日誌,斷電後重新連線,並將天平重設為開機狀態。
適用情境
適用於實驗室中透過序列埠、USB 或乙太網路連接梅特勒-托利多天平的情境,希望助理讀取重量、去皮容器、監測漂移或蒸發,或在實驗流程中執行校正。
執行需求
以 Python 套件形式在本機執行(uvx labmcp-mettler-toledo),透過 stdio 通訊,僅限桌面環境。需要天平設定為 MT-SICS 模式,並透過 LABMCP_ADDRESS 提供序列埠或 TCP 位址。可用 LABMCP_SIMULATE 啟用內建模擬器,無需硬體。未宣告身分驗證。
安裝前請注意
去皮、歸零、校正與開闔防風門等工具會改變設備狀態,可用 LABMCP_READ_ONLY 停用。防風門移動可能夾到手指或撞到物品,校正需空載且不受擾動的秤盤。LABMCP_LIMITS 可覆寫最大記錄時長等安全限制。此伺服器僅在模擬器上測試,尚未在真實硬體上驗證。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Mettler Toledo Balance,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Mettler Toledo Balance — MCP Server

Let an AI agent weigh samples, tare containers, log drift and evaporation, run internal adjustments and drive the draft shield on Mettler Toledo balances through the open MT-SICS interface command set.

Packagelabmcp-mettler-toledo
InstrumentsExcellence XPR/XSR, XP/XS, XA/XE, MS/ML, NewClassic ME/MS, and other MT-SICS balances and weighing terminals
InterfacesRS-232, USB (virtual COM port), Ethernet (XPR/XSR, or any serial-to-Ethernet adapter)
ProtocolMT-SICS levels 0–2 (reference manual)
Status🧪 simulated: tested against a wire-level MT-SICS simulator, not yet verified on hardware. Report a hardware test

Try it without hardware

bash
uvx labmcp-mettler-toledo --simulate --check

Connect your balance

  1. Balance setup: in the balance menu, set the interface (RS232/USB/Ethernet) to MT-SICS (sometimes called "Host" or "Dialog"). Factory settings are 9600 baud, 8 data bits, no parity, 1 stop bit, Xon/Xoff.
  2. Find the port: uvx labmcp ports
  3. Test the connection:
    bash
    uvx labmcp-mettler-toledo --address /dev/ttyUSB0 --check          # Linuxuvx labmcp-mettler-toledo --address /dev/tty.usbserial-XXXX --check  # macOSuvx labmcp-mettler-toledo --address COM4 --check                  # Windowsuvx labmcp-mettler-toledo --address tcp://192.168.1.60:8001 --check  # Ethernet
    Non-default settings go in the address: serial://COM4?baudrate=19200&xonxoff=false.

Add to your MCP client

Claude Code

bash
claude mcp add balance -- uvx labmcp-mettler-toledo --address /dev/ttyUSB0

Claude Desktop / Cursor / Windsurf (claude_desktop_config.json, .cursor/mcp.json, …)

json
{  "mcpServers": {    "balance": {      "command": "uvx",      "args": ["labmcp-mettler-toledo", "--address", "/dev/ttyUSB0"]    }  }}

Add --read-only to allow weighing but block taring, zeroing and door movement. For other clients, generate the snippet with uvx labmcp config mettler-toledo --address /dev/ttyUSB0 --client vscode (also cursor, codex, claude-code).

Tools

ToolKindDescription
clear_tare🎛 controlClear the tare memory (tare = 0).
get_command_log👁 readReturn the most recent raw commands sent to / replies received from the instrument (newest last). Useful for debugging and for recording what was done.
get_connection_info👁 readReport which instrument is connected (identity, address, simulated or real), whether the server is read-only, and the active safety limits. Call this first.
get_draft_shield👁 readReport the position of the motorised draft-shield doors (Excellence/XPR balances only).
get_tare👁 readReturn the weight currently stored in the tare memory.
log_weight_series👁 readRecord a series of immediate (unfiltered) readings to monitor drift, evaporation, moisture uptake or stabilisation. Returns every reading plus summary statistics.
read_temperature👁 readRead the balance's internal temperature probe(s) in °C (MT-SICS M28, if supported).
read_weight👁 readRead the current net weight from the balance.
reconnect🛑 safetyClose and re-open the connection to the instrument (e.g. after it was power cycled or a cable was re-plugged).
reset_balance🛑 safetyAbort whatever the balance is doing (an adjustment, a repeating weight stream, a pending command) and reset it to its power-on state without zeroing (MT-SICS @). Clears the tare. Motorised draft-shield doors have their own obstruction detection and reverse if blocked.
run_internal_adjustment🎛 controlAdjust (calibrate) the balance with its built-in reference weight (MT-SICS C3). The pan must be empty and the balance undisturbed. Takes roughly 1-3 minutes.
set_draft_shield⚠️ hazardOpen or close the motorised draft-shield doors. Make sure nothing (and no one's fingers) is in the way of the doors.
set_tare_preset🎛 controlPreset a known tare weight (e.g. a container weighed earlier).
show_message🎛 controlShow a short message on the balance display (e.g. 'Add sample 3'). Use show_weight_display to return to the normal weight display.
show_weight_display🎛 controlSwitch the balance display back to showing the weight.
tare🎛 controlTare the balance: store the current load (e.g. an empty container) as the tare weight. Returns the stored tare weight.
zero🎛 controlZero the balance with the current load. Also clears the tare memory.

get_connection_info, get_command_log and reconnect are built into every LabMCP server.

Safety limits

LimitDefaultMeaning
max_series_duration_s600 sLongest weight-logging series an agent may start

Override at launch: --limit max_series_duration_s=3600. Whatever the limit says, a single series is capped at one hour (the tool's time limit).

Example prompts

  • "Tare the balance, then tell me when the reading is stable after I add the sample."
  • "Log the weight every 10 s for 5 minutes and tell me the evaporation rate in mg/min."
  • "Weigh out ~250 mg: tell me how much more to add, reading every few seconds, until I'm within ±2 mg."
  • "Run an internal adjustment and confirm it succeeded before we start the calibration curve."

Notes

  • read_weight(stable=True) sends S, which waits for stability. If the balance cannot settle (draughts, vibration), it returns S I. The server reports this as an error, so retry or use stable=false.
  • Weights are in the balance's unit 1 (normally grams). Units shown on the display (unit 2) don't affect the interface.
  • Draft-shield (WS) and temperature (M28) commands exist only on balances with that hardware; other balances answer ES/L, which the server reports clearly.
  • run_internal_adjustment waits for the final C3 A without blocking the connection: reset_balance aborts a running adjustment, and other commands are refused until it ends (their replies would be mixed up with the result).
  • Before each command the server discards anything the balance sent unasked (e.g. a print-key transmission) and checks that the reply belongs to the command, so one late reply cannot shift every later reply by one.
  • show_message accepts printable ASCII only, and set_tare_preset only a unit symbol: a line break would otherwise reach the balance as a second MT-SICS command.

Hardware verification

ModelFirmwareInterfaceVerified byDate
none yet: be the first

來源:servers/chemistry/mettler-toledo-balance/README.md,提交 46545ea

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

2
  1. v0.1.3最新Sep 27, 2026
  2. v0.1.1Sep 26, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分