mcpField
S
Sartorius Balance

Sartorius Balance

ローカル
github.com科学・教育235 週間前に更新

Sartorius Balance について

Sartorius Balanceは、SBIプロトコルで対応するSartorius製実験用天秤を操作するMCPサーバーです。重量の記録や内部調整機能を備えていますが、実機での検証はまだ行われていません。

主な機能

  1. 01現在の重量の読み取りと安定待ち
  2. 02重量の連続記録と統計要約
  3. 03風袋引きとゼロ設定
  4. 04環境条件フィルターの変更
  5. 05キーパッドのロックと解除
  6. 06内蔵の内部調整の実行

活用シーン

  1. 01容器を風袋引きして安定後の試料重量を読む
  2. 02時間経過による蒸発やドリフトを追跡
  3. 03振動する作業台に合わせてフィルターを調整
  4. 04測定前に内部調整を実行

MCP 対応

SBI天秤の読み取り、重量記録、風袋引きとゼロ設定、フィルター・キーパッド操作、内部調整をMCPツールとして公開します。読み取り専用モードでは計量は可能ですが、風袋引き、ゼロ設定、調整はできません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"k-dense-ai-labmcp-sartorius": {
"command": "uvx",
"args": [
"labmcp-sartorius"
],
"env": {
"LABMCP_ADDRESS": "<LABMCP_ADDRESS>",
"LABMCP_SIMULATE": "<LABMCP_SIMULATE>",
"LABMCP_READ_ONLY": "<LABMCP_READ_ONLY>",
"LABMCP_LIMITS": "<LABMCP_LIMITS>"
}
}
}
}
起動コマンドuvx labmcp-sartorius
設定が必要な環境変数
LABMCP_ADDRESSInstrument address, e.g. serial:///dev/ttyUSB0 or tcp://192.168.1.50:5025
LABMCP_SIMULATESet to 1 to use the built-in simulator (no hardware)
LABMCP_READ_ONLYSet to 1 to disable all state-changing tools
LABMCP_LIMITSSafety limit overrides, e.g. max_temperature_c=80

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypilabmcp-sartorius0.1.2

ツール

10

掲載時のツール一覧 · 2 週間前に更新

このツールにパラメーターはありません。

詳細

Sartorius Balance — MCP サーバー

AI エージェントが、文書化された SBI(Sartorius Balance Interface)ASCII プロトコルを通じて、Sartorius のラボ用天びんでサンプルの計量、容器の風袋引き、ドリフトや蒸発の記録、内部調整を実行できます。

パッケージlabmcp-sartorius
機器Cubis MSE、Cubis II MCA、Secura、Quintix、Practum、Entris II。--option legacy=true を指定すると、旧型の CP/CPA シリーズの天びんも使用できます。その他の SBI 対応天びんも動作する可能性があります
インターフェースRS-232、USB(仮想 COM ポート、「PC-SBI」)、イーサネット(Cubis II の「イーサネット経由のシリアル伝送」、または任意のシリアル・イーサネットアダプター)
プロトコルSBI:Entris II インターフェース説明書(テクニカルノート 10/2020)、Secura/Quintix/Practum ユーザーマニュアル §10.3(WSE6004)、Cubis MSE 取扱説明書(WMS6004)、Cubis MCA 取扱説明書(WMC6028)、SBI インターフェース説明書(98647-000-53)
ステータス🧪 シミュレーション済み:ワイヤーレベルの SBI シミュレーターでテスト済みですが、実機ではまだ検証されていません。実機でのテストを報告する

ハードウェアなしで試す

uvx labmcp-sartorius --simulate --check

天びんを接続する

  1. 天びんの設定: 使用するインターフェース(RS232、USB-B /「PC-SBI」、またはイーサネット)を SBI プロトコルに設定し、SBI データ出力を 安定性を問わない手動出力 に設定して、自動出力をオフ にしてください(Cubis II と Entris II の工場出荷時設定)。自動印字がオンの場合、ESC P は1回分の読み取り値を送信せず、自動出力のオン/オフを切り替えます。どちらの行形式でも使用できます(16文字、または ID コード付きの22文字)。
  2. シリアル設定: 工場出荷時の設定は 9600 baud、データビット8、偶数パリティ、ストップビット1、ハードウェアハンドシェイクです(Cubis II/MSE、Secura/Quintix/Practum、Entris II)。サーバーはこの設定を使用しますが、RTS/CTS は強制しません(RTS はアサートしたままにして天びんからの送信を可能にします。USB 仮想 COM ポートでは CTS がアサートされないことがよくあります)。RTS/CTS を強制するには ?rtscts=true を追加してください。天びんの設定が異なる場合は、たとえば ?bytesize=7&parity=E を追加してください。
  3. ポートを確認する: uvx labmcp ports
  4. 接続をテストする:
    uvx labmcp-sartorius --address /dev/ttyUSB0 --check                 # Linux
    uvx labmcp-sartorius --address /dev/tty.usbmodem14201 --check       # macOS
    uvx labmcp-sartorius --address COM4 --check                         # Windows
    uvx labmcp-sartorius --address tcp://192.168.1.61:49155 --check     # Cubis II via Ethernet (port as configured)
    
    天びんが対応している場合、--check はモデル、シリアル番号、ソフトウェアバージョン(ESC x1_、x2_、x3_)を表示します。

MCP クライアントに追加する

Claude Code

claude mcp add balance -- uvx labmcp-sartorius --address /dev/ttyUSB0

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

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

計量を許可しつつ、風袋引き、ゼロ化、調整を禁止するには --read-only を追加してください。その他のクライアントの場合:uvx labmcp config sartorius-balance --address /dev/ttyUSB0 --client vscode。

ツール

ツール種類説明
get_command_log👁 読み取り機器に送信したコマンドと機器から受信した応答のうち、最新のものを返します(新しいものが最後)。デバッグや、実行した内容の記録に役立ちます。
get_connection_info👁 読み取り接続中の機器(識別情報、アドレス、シミュレーションか実機か)、サーバーが読み取り専用かどうか、有効な安全制限を報告します。最初に呼び出してください。
lock_keypad🎛 制御天びんのキーをロックまたはロック解除します。たとえば、長時間のログ記録中に誤って風袋引きされないようにできます。
log_weight_series👁 読み取りドリフト、蒸発、吸湿、安定化を監視するため、フィルター処理されていない瞬時の測定値を連続して記録します。すべての測定値と要約統計量を返します。
read_weight👁 読み取り天びんから現在の正味重量を読み取ります(ESC P)。stable=True の場合、天びんが安定値を示すまでサーバーがポーリングします。安定しない場合(気流、振動、蒸発など)はエラーが返されます。再試行するか、stable=false を使って現在の値を取得してください。
reconnect🛑 安全機器との接続を閉じて再度開きます(電源を入れ直した後やケーブルを差し直した後など)。
run_internal_adjustment🎛 制御天びん内蔵の分銅で天びんを調整(校正)します(ESC Z。isoCAL モデルのみ)。皿を空にし、天びんを動かさないでください。SBI は完了メッセージを送信しないため、サーバーは調整状態を監視し、天びんが再び計量するまで待機します。結果は observed_adjustment と天びんの表示または GLP 印字で確認してください。
set_ambient_conditions🎛 制御周囲の環境条件に合わせて天びんのフィルターを調整します(ESC K/L/M/N)。気流や振動のある作業台では、「unstable」または「very_unstable」を使用してください(測定は遅くなりますが、安定します)。
tare🎛 制御天びんの風袋引きを行います(ESC U、旧型の天びんでは ESC T)。現在の荷重(空の容器など)が風袋になります。その後、安定した測定値を待ち、約 0 であることを確認して、その測定値を返します。
zero🎛 制御天びんをゼロにします(ESC V)。皿がほぼ空で、天びんのゼロ設定範囲内にある場合にのみ動作し、風袋を解除します。その後、約 0 であることを測定して確認します。

安全制限

制限既定値意味
max_series_duration_s600 sエージェントが開始できる、重量ログ記録の最長時間

起動時に上書きできます:--limit max_series_duration_s=3600。制限の値にかかわらず、1 回の連続記録は最長 1 時間です(ツールの時間制限)。このサーバーのツールは何かを動かしたり加熱したりしないため、危険を伴うツールはありません。

プロンプトの例

  • 「天びんの風袋引きをしてから、試料を加えた後、測定値が安定した時点の重量を教えてください。」
  • 「5 分間、10 秒ごとに重量を記録し、蒸発速度を mg/min で教えてください。」
  • 「約 250 mg を量り取ります。±2 mg 以内になるまで、数秒ごとに測定して、あとどれだけ加えればよいか教えてください。」
  • 「今日は作業台が振動しています。天びんのフィルターを不安定な条件に切り替えて、キーパッドをロックしてください。」
  • 「校正曲線の作成を始める前に内部調整を実行し、実行されたかどうか教えてください。」

注記

  • 安定性は単位記号で判断します。 SBI に明示的な安定性フラグはありません。計量システムが安定している場合にのみ、天びんは単位記号(位置 12~14)を送信します(「計量システムが安定していない場合、単位記号は出力されません」、インターフェースの説明書 98647-000-53。新しいマニュアルでは、これらの位置は「単位記号またはスペース」と記載されています)。そのため、read_weight(stable=true) は単位を含む読み取り値が得られるまで ESC P をポーリングします。不安定な読み取り値には、最後に確認された単位が報告されます。
  • 行形式。 パーサーは、文書化されている固定幅の形式に従います。16 文字(符号、位置 2~10 の値、位置 12~14 の単位、CR LF)と、22 文字(N、G#、T、Stat などの 6 文字の ID コードに、同じ 16 文字を続けたもの)です。また、Cubis II の「1 行の全長」形式、小数点としてのカンマ、G#/T/N の計量ブロックにも対応しており、N 行が報告されます。High、Low、Err ###、APP.ERR、DIS.ERR、PRT.ERR は明確なエラーとして報告されます。
  • 応答確認はありません。 SBI の制御コマンド(ESC U 風袋引き、ESC V ゼロ設定、ESC Z 調整、ESC K~N フィルター、ESC O/R キー)は応答を返さないため、対応していない天びんではコマンドが無視されても何も通知されません。そのため、tare と zero は安定した読み取り値を待ち、それが約 0 であることを確認し、そうでなければエラーを報告します。
  • ゼロ設定と風袋引きの違い。 ESC V は天びんのゼロ設定範囲内(計量皿がほぼ空の状態)でのみゼロ設定を行います。ESC U はどのような荷重でも風袋引きを行います。古い天びん(CP/CPA、LE など)には ESC T(風袋キー)しかありません。サーバーの起動時に --option legacy=true を指定してください。
  • 内部調整(未検証)。 ESC Z は、内蔵分銅を備えた天びんで isoCAL を開始します。SBI は完了メッセージも結果メッセージも送信しません。サーバーは Cal. ステータス(または、応答できないほど処理中の天びん)を監視し、再び安定した重量が得られるまで待機します。ステータスを一度も検知できなかった場合は observed_adjustment=false を報告します。結果はディスプレイまたは GLP 印字で確認してください。調整中に出力される正確なステータスは、マニュアルで確認できませんでした。
  • 識別情報の応答(形式未検証)。 ESC x1_/x2_/x3_ はモデル、シリアル番号、ソフトウェアのバージョンを出力します。正確な形式は文書化されていないため、テキストは受信したとおりに渡されます。
  • ESC 文字が含まれるため、コマンドログでは SBI の通信が 16 進数(1b 50 0d 0a = ESC P CR LF)で表示されます。
  • 未実装:ドラフトシールドおよびイオナイザーのコマンド(Cubis MSE のみ)、外部調整(ESC W、基準分銅が必要)、ESC S による再起動、ファンクションキーのコマンド。

ハードウェアでの検証

モデルファームウェアインターフェース検証者日付
まだありません:最初の検証者になる

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。