benchtop-mcp
Allows controlling Arduino-based measurement devices over a serial connection, including sending commands, taking repeated measurements, analyzing statistics, and exporting CSV logs.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@benchtop-mcpmock に繋いで200回測って、電圧のばらつきを見て、外れ値があったら教えて。結果は CSV にして"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
benchtop-mcp
シリアル接続された計測装置・回路を、AI エージェント(Claude など)から直接操作・記録・解析するための MCP サーバーです。
実機がなくても動きます。 内蔵の仮想装置(port="mock")があるので、ハードを繋ぐ前に全機能を試せます。
License: v0.x は MIT。 v1.0+ は AGPL-3.0 + commercial dual への切替 可能性 予告 (LICENSE file 参照)。 v0.x 分は 永久 MIT (irrevocable)。
これは何を解決するのか
計測の現場では、だいたい同じことが繰り返されています。
装置にコマンドを送って値を読む
しばらく回してログを取る
Excel に貼って平均と σ を出し、おかしい点を探す
CSV にして誰かに渡す
一つ一つは簡単ですが、面倒で、毎回手でやっています。このサーバーを入れると、その全部を AI に日本語で頼めるようになります。
「mock に繋いで200回測って、電圧のばらつきを見て、外れ値があったら教えて。結果は CSV にして」
地味です。しかし前の会話で確認した「売れるものの条件」——誰もが必要とし、自作すると面倒で、壊れると静かに高くつく——に、正確に当てはまります。
Related MCP server: embedded-serial-mcp
公開しているツール(AI から呼べる機能)
ツール | 役割 |
| 利用可能な装置の一覧。実機が無くても |
| 装置に1行送って応答を読む( |
| N 回連続で測定し、セッションとして保存 |
| 保存済みセッションの一覧 |
| 平均・σ・最小/最大・ドリフト・3σ外れ値を算出 |
| CSV に書き出し |
対応する測定値の形式は3種類を自動判別します。
T=25.3,H=48.1 → {"T": 25.3, "H": 48.1}
25.3,48.1 → {"ch1": 25.3, "ch2": 48.1}
25.3 → {"value": 25.3}導入手順
1. 依存関係を入れる
pip install "mcp>=2.0.0" pyserialpyserial は実機に繋ぐときだけ必要です。無くてもモックは動きます。
2. 動作確認(Claude に繋ぐ前に、まずこれ)
python benchtop_mcp.py --selftest以下のように出れば成功です。
== benchtop-mcp セルフテスト ==
[1] ポート一覧: 33件 / pyserial=True
[2] IDN応答: MOCK,BENCHTOP-SIM,0001,1.0.0
[3] パース: 4形式すべてOK
[4] 計測: 60行 / channels=['T', 'H', 'V']
[5] 解析: T平均=25.028583 σ=0.274831 外れ値=1件
[6] CSV書き出し: ... (61行=ヘッダ1+データ60)
全テスト成功。実機が無くてもこのサーバーは動作します。3. Claude Desktop に登録する
設定ファイル(%APPDATA%\Claude\claude_desktop_config.json)に追記します。
{
"mcpServers": {
"benchtop": {
"command": "python",
"args": ["C:\\path\\to\\benchtop_mcp.py"]
}
}
}Claude Desktop を再起動すると、ツール一覧に benchtop が現れます。あとは普通に日本語で頼めます。
実機に繋ぐ
装置が1行1レコードで値を送ってくるなら、それだけで動きます。Arduino 側の最小例:
void setup() { Serial.begin(9600); }
void loop() {
float t = analogRead(A0) * 0.0048828125 * 100.0;
float v = analogRead(A1) * 0.0048828125;
Serial.print("T="); Serial.print(t, 3);
Serial.print(",V="); Serial.println(v, 4);
delay(100);
}あとは port に COM3(Windows)や /dev/ttyUSB0(Linux/Mac)を指定するだけです。
コードの読みどころ
学習目的で読む場合、この3点が設計の要点です。
1. コアと MCP 層を分離している
Bench クラスは MCP を一切知りません。MCP 層(@server.tool() の部分)は薄い皮です。こうしておくと、コアだけ単体テストできますし、将来 CLI や Web API を生やすときにも書き直しが要りません。
2. モック装置を最初から入れている
Device という共通インターフェースを挟み、実機(SerialDevice)とモック(MockDevice)を差し替え可能にしています。ハードが手元に無い日でも開発が止まりません。デモも CI も通せます。ハードウェア絡みのソフトでは、これがあるか無いかで開発速度が何倍も変わります。
3. docstring が AI への説明書になる
@server.tool() を付けた関数の docstring と型注釈は、そのまま AI に渡されます。ここが雑だと AI は道具を正しく使えません。普通のコードではコメントは人間向けですが、MCP では機械向けの仕様書です。 ここを丁寧に書くことが、そのまま品質になります。
ライセンス
v0.x = MIT (LICENSE file 参照)。 藤本さん 2026-08-12 judgment per 選択。
v1.0+ 以降は AGPL-3.0 + commercial dual への 切替可能性 予告 (LICENSE file 内 「License trajectory notice」 参照)。 但し v0.x code は 永久 MIT (irrevocable) = fork 継続 path は 永久に開く。
背景: Product Transition Judgment Framework v0.1 の 5 checklist を benchtop-mcp v0.x 段階では 0-1 件該当 = 無料継続 default。
参考: 有料化候補 3 点 fit (chat-Claude 2026-08-12 arc 分析)
benchtop-mcp は 「売れる条件 3 点」 全該当 = 有料化 candidate:
誰もが必要: 計測ログ + 統計 + CSV 出力 は 差別化要素でない (全部の 計測現場が やる作業)
自作面倒: シリアル通信 + セッション管理 + AI 説明 docstring は 毎回書きたくない
静かに壊れて高い: 監視ログが 数日 気付かず 溜まる、 品質記録が 消えると 監査で困る
将来 v1.0+ で 有料 tier 検討する場合の 線引き案:
推奨する組み合わせ (将来 v1.0+ の 参考、 現時点 v0.x = MIT)
ソフト部分: AGPL-3.0 + 商用ライセンスのデュアル
個人・研究・社内利用は無料で自由に使える(あなたの「個人にも使ってほしい」という希望を満たす)
ただし、これを組み込んだ製品を売るなら、ソース公開か商用ライセンス購入かを選ぶことになる
MIT にすると、この選択を後から追加できません。AGPL なら、後から緩めるのは自由(著作権者はいつでも緩められる)
貢献者対応: CLA を最初に用意する
外部から Pull Request を受け取ると、その部分の著作権は相手のものになり、あなた単独でライセンスを変更できなくなります。将来の商用化を残すなら、最初から CLA(貢献者ライセンス同意書)を置いてください。後から遡って集めるのは、ほぼ不可能です。
無料/有料の線引き案
無料(AGPL) | 有料 | |
装置操作・計測・解析・CSV | ○ | ○ |
同時接続する装置の数 | 1台 | 無制限 |
長時間の連続ロギング・自動再接続 | − | ○ |
閾値アラート・異常通知 | − | ○ |
校正記録・監査ログ(トレーサビリティ) | − | ○ |
サポート・SLA | − | ○ |
企業が金を払うのは機能ではなく、「止まったときに誰かに電話できる権利」と「監査に出せる記録」 です。個人が欲しがるのは上段だけなので、この線引きなら両者は競合しません。
回路・装置を含める場合の警告 (依然 有効)
公開する前に特許出願の要否を判断してください。 ソフトと違い、ハードウェアは公開した瞬間に新規性が失われ、特許が取れなくなります。日本には新規性喪失の例外(特許法30条、公開から1年以内の出願)がありますが、国によって扱いが異なり、海外出願で詰むことがあります。
これは一方通行のドアです。ユーザーが0人でも損失は確定します。
本 project の scope: benchtop-mcp = 純 software (Python + pyserial via generic protocol) = 特許性事実上ゼロ (シリアル通信 + 統計 + CSV export は 数十年 well-known)。 ハードウェア回路 (Arduino sketch 例は README 参照用のみで 本 repo に含まず) は 依然 上記警告対象。
次にやるとよいこと
--selftestを通す(最優先。ここが通れば土台は正しい)Claude Desktop に登録して、実際に日本語で呼んでみる
手持ちの装置1台を繋いで、
send_commandで*IDN?に応答が返るか確認自分が毎回手でやっている面倒な作業を1つ、ツールとして足す — ここからが本当のオリジナルです
ライセンスを決めて GitHub に公開
Elasticsearch は奥さんのレシピアプリから始まりました。最初から立派である必要はありません。
This server cannot be installed
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
- Alicense-qualityAmaintenanceMCP server for quantum device physics laboratory instrumentation control, enabling LLMs to interact with physics instruments and measurement systems through QCodes and JupyterLab.27MIT
- Alicense-qualityCmaintenanceA professional MCP server for serial port communication, enabling AI assistants to list, connect, send/receive data, and manage serial connections with embedded systems, IoT devices, and hardware debugging hardware.1MIT

sbl-probeofficial
Alicense-qualityDmaintenanceSerial communication and protocol analysis MCP server that gives AI coding assistants direct access to serial ports for reading, writing, decoding, and capturing embedded device output.MIT- AlicenseBqualityBmaintenanceAn MCP server for controlling lab instruments (oscilloscopes, signal generators, etc.) via standardized interfaces like USBTMC, RS-232, and LAN.100MIT
Related MCP Connectors
MCP server for AI access to Swagger by SmartBear.
MCP server exposing the Backtest360 engine API as tools for AI agents.
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
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/fc0web/benchtop-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server