Bench DC Power Supply — Claude Code MCP server: install and use
Connects coding agents to laboratory power hardware made by Rigol, Siglent, or Aim-TTi. The server handles voltage adjustments, current limits, and output protection.
claude mcp add --env LABMCP_ADDRESS=<LABMCP_ADDRESS> --env LABMCP_SIMULATE=<LABMCP_SIMULATE> --env LABMCP_READ_ONLY=<LABMCP_READ_ONLY> --env LABMCP_LIMITS=<LABMCP_LIMITS> --transport stdio bench-power-supply -- uvx labmcp-bench-psuWhat Bench DC Power Supply does
This MCP integration gives agents remote visibility and control over lab power hardware. An assistant can inspect channel metrics, toggle outputs, and adjust current thresholds. Dialect handling happens on the fly based on the instrument identification query. Note that devices made by Rohde & Schwarz or Keysight are explicitly rejected, because those manufacturers provide standalone MCP solutions.
Connections run across USB-TMC or network sockets using PyVISA. Testing without hardware is supported via the --simulate switch, which models virtual loads across three outputs. The package supports parameter safety caps like --limit and offers a --read-only mode that prevents any energizing action. Setting an invalid connection string or closed socket halts execution immediately.
What it helps with
- adjust voltage levels and current limits on active channels
- shut down all power outputs immediately during emergency stops
- verify test procedures in simulated mode without attached hardware
- read power delivery measurements and error logs across channels
Example prompts for the agent
- Check all channel readings using
get_outputs - Set the channel 1 current limit to 500mA
- Trigger
all_outputs_offto shut down the supply
How to install Bench DC Power Supply
Platform CLI
claude mcp add --env LABMCP_ADDRESS=<LABMCP_ADDRESS> --env LABMCP_SIMULATE=<LABMCP_SIMULATE> --env LABMCP_READ_ONLY=<LABMCP_READ_ONLY> --env LABMCP_LIMITS=<LABMCP_LIMITS> --transport stdio bench-power-supply -- uvx labmcp-bench-psuReplace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from labmcp-bench-psu <command>
Platform CLI
codex mcp add bench-power-supply --env LABMCP_ADDRESS=<LABMCP_ADDRESS> --env LABMCP_SIMULATE=<LABMCP_SIMULATE> --env LABMCP_READ_ONLY=<LABMCP_READ_ONLY> --env LABMCP_LIMITS=<LABMCP_LIMITS> -- uvx labmcp-bench-psuReplace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from labmcp-bench-psu <command>
Config file
{
"mcpServers": {
"bench-power-supply": {
"command": "uvx",
"args": [
"labmcp-bench-psu"
],
"env": {
"LABMCP_ADDRESS": "<LABMCP_ADDRESS>",
"LABMCP_SIMULATE": "<LABMCP_SIMULATE>",
"LABMCP_READ_ONLY": "<LABMCP_READ_ONLY>",
"LABMCP_LIMITS": "<LABMCP_LIMITS>"
}
}
}
}Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from labmcp-bench-psu <command>
Config file
{
"servers": {
"bench-power-supply": {
"type": "stdio",
"command": "uvx",
"args": [
"labmcp-bench-psu"
],
"env": {
"LABMCP_ADDRESS": "<LABMCP_ADDRESS>",
"LABMCP_SIMULATE": "<LABMCP_SIMULATE>",
"LABMCP_READ_ONLY": "<LABMCP_READ_ONLY>",
"LABMCP_LIMITS": "<LABMCP_LIMITS>"
}
}
}
}Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from labmcp-bench-psu <command>
Platform CLI
gemini mcp add -e LABMCP_ADDRESS=<LABMCP_ADDRESS> -e LABMCP_SIMULATE=<LABMCP_SIMULATE> -e LABMCP_READ_ONLY=<LABMCP_READ_ONLY> -e LABMCP_LIMITS=<LABMCP_LIMITS> bench-power-supply uvx labmcp-bench-psuReplace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from labmcp-bench-psu <command>
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about Bench DC Power Supply
How to install Bench DC Power Supply in Claude Code?
Add the server directly by running claude mcp add labmcp-bench-psu -- uvx labmcp-bench-psu. Alternatively, pass configuration flags via environment variables with `claude mcp add --env LABMCP_ADDRESS=<LABMCP_ADDRESS> --env LABMCP_SIMULATE=<LABMCP_SIMULATE> --env LABMCP_READ_ONLY=<LABMCP_READ_ONLY> --env LABMCP_LIMITS=<LABMCP_LIMITS> --transport stdio bench-power-supply -- uvx labmcp-bench-psu`.
What does Bench DC Power Supply do?
It acts as an MCP bridge to lab power hardware, letting models adjust setpoints, trigger output states, and monitor protection trips. The dialect switches dynamically to match the connected device.
Why does the server reject Keysight and Rohde & Schwarz devices?
Those manufacturers maintain dedicated MCP tools, so this server deliberately ignores them to avoid overlapping functionality.