프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. 리뷰와 계정 기능은 다음 단계에서 열려요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

Bench DC Power Supply

제작자: K-Dense-AI버전 0.1.3i★ –i내 컴퓨터에서 실행
레지스트리 이름io.github.K-Dense-AI/labmcp-bench-psu

설치

개요

제작자가 쓴 설명(영어 원문)

MCP server for programmable DC bench power supplies from Rigol, Siglent and Aim-TTi.

PopNx MCP의 세 기둥

이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.

할 수 있는 일

이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.

  • 연결 방식: 내 컴퓨터에서 실행
  • 전송 방식: stdio
  • 카테고리: 기타

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

설치하기 전에

  • 기본 점검: 1개 중 1개 통과
  • 내 컴퓨터에서 내 사용자 계정의 권한(파일, 네트워크, 앱)으로 실행돼요.
  • 직접 입력할 값: LABMCP_ADDRESS, LABMCP_SIMULATE, LABMCP_READ_ONLY, LABMCP_LIMITS

필요한 것

  • PyPIPython의 uv 설치(uvx 명령어용)

어떤 앱을 쓰세요?

위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.

Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요

{
  "mcpServers": {
    "labmcp-bench-psu": {
      "command": "uvx",
      "args": [
        "labmcp-bench-psu"
      ],
      "env": {
        "LABMCP_ADDRESS": "your-value",
        "LABMCP_SIMULATE": "your-value",
        "LABMCP_READ_ONLY": "your-value",
        "LABMCP_LIMITS": "your-value"
      }
    }
  }
}

터미널에서 이 명령어를 실행하세요

claude mcp add labmcp-bench-psu --env LABMCP_ADDRESS=your-value --env LABMCP_SIMULATE=your-value --env LABMCP_READ_ONLY=your-value --env LABMCP_LIMITS=your-value -- uvx labmcp-bench-psu

실행하기 전에 빈 값을 채워 주세요.

Cursor에서 열기

또는 설정을 직접 복사하기

프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요

{
  "mcpServers": {
    "labmcp-bench-psu": {
      "command": "uvx",
      "args": [
        "labmcp-bench-psu"
      ],
      "env": {
        "LABMCP_ADDRESS": "your-value",
        "LABMCP_SIMULATE": "your-value",
        "LABMCP_READ_ONLY": "your-value",
        "LABMCP_LIMITS": "your-value"
      }
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

VS Code에서 열기

또는 설정을 직접 복사하기

프로젝트의 .vscode/mcp.json에 붙여 넣으세요

{
  "servers": {
    "labmcp-bench-psu": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "labmcp-bench-psu"
      ],
      "env": {
        "LABMCP_ADDRESS": "your-value",
        "LABMCP_SIMULATE": "your-value",
        "LABMCP_READ_ONLY": "your-value",
        "LABMCP_LIMITS": "your-value"
      }
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.

선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.

직접 입력할 값

  • LABMCP_ADDRESS env
    Instrument address, e.g. serial:///dev/ttyUSB0 or tcp://192.168.1.50:5025
  • LABMCP_SIMULATE env
    Set to 1 to use the built-in simulator (no hardware)
  • LABMCP_READ_ONLY env
    Set to 1 to disable all state-changing tools
  • LABMCP_LIMITS env
    Safety limit overrides, e.g. max_temperature_c=80

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

할 수 있는 일

내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 8일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 GitHub 계정 K-Dense-AI 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요

  • … 아직 점검 안 함

    계속 관리되고 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • … 아직 점검 안 함

    라이선스 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • – 해당 없음

    엔드포인트 응답

    내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요

  • – 해당 없음

    OAuth로 로그인

    내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요

  • … 아직 점검 안 함

    도구 설명에 숨겨진 지시 없음

    내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요

기타 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 18595개 중 0%보다 스타가 많아요
  • 이 카테고리의 다른 서버 18595개 중 52%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 18595개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

Bench DC Power Supply, 안전한가요?

해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.1.3)은 43일 전 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Python (uv)도 있어야 해요.

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, Aiterm MCP

대안

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:↓ 주간 다운로드i★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

Spec Driven Development

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

제작자: formulahendry초기↓ 66/주★ 44014개월 전 업데이트

내 컴퓨터에서 실행

Remote Desktop Commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

제작자: desktop-commander성장 중★ 2113일 전 업데이트

클라우드에서 실행✓ desktopcommander.app

Aiterm MCP

Persistent terminals and one launcher for Claude, Codex, Grok, Cursor, and Antigravity harnesses.

제작자: kitepon성장 중↓ 4.2천/주오늘 업데이트

내 컴퓨터에서 실행

제작자의 README

README 열기

제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.

Bench DC Power Supply — MCP Server

Let an AI agent set voltages and current limits, switch outputs on and off, watch constant-voltage / constant-current behaviour and configure over-voltage / over-current protection on programmable DC bench power supplies from Rigol, Siglent and Aim-TTi, using each vendor's documented remote command set. The dialect is detected from *IDN?.

Packagelabmcp-bench-psu
InstrumentsRigol DP832/DP832A, DP831, DP822, DP821, DP811, DP813, DP711, DP712, DP932A/U/E; Siglent SPD3303X/X-E, SPD1168X, SPD1305X; Aim-TTi CPX400D/DP, MX100T/TP, MX180T/TP, QL355/QL564 (P, T/TP), PL-P (PL068/155/303/601, PL303QMD/QMT)
InterfacesUSB (USB-TMC via VISA, or virtual COM on Aim-TTi), LAN (VISA/VXI-11 or raw socket), RS-232, GPIB via VISA
ProtocolSCPI (Rigol DP800 Programming Guide, DP700, DP900; Siglent SPD3303X Quick Start, SPD1000X User Manual) and Aim-TTi remote commands (CPX400D/DP manual, MX100T/TP manual, manuals index)
Status🧪 simulated: tested against wire-level simulators of each dialect driving a resistive load, not yet verified on hardware. Report a hardware test

Keysight / Agilent and Rohde & Schwarz supplies are intentionally not covered: both vendors publish official MCP servers. Use the Keysight MCP Server for Instrument Control or the MCP server included in Rohde & Schwarz RsInstrument. This server refuses to connect to them.

Try it without hardware

uvx labmcp-bench-psu --simulate --check                                        # Rigol DP832

uvx labmcp-bench-psu --simulate --option dialect=siglent --check # Siglent SPD3303X uvx labmcp-bench-psu --simulate --option dialect=tti --option sim_model=MX100TP --check

The simulated outputs drive resistive loads (CH1 10 Ω, CH2 100 Ω, CH3 open), so you can watch the CV → CC crossover and trip OVP/OCP.

Connect your instrument

  1. Instrument setup: enable the interface you use (Rigol: Utility → I/O Config; Siglent: System → Interface; Aim-TTi: LAN works out of the box, USB appears as a virtual COM port). Note the IP address or VISA resource string.
  2. Find the address: uvx labmcp ports (serial) or python -m pyvisa info / your VISA vendor's tool (USB/LAN).
  3. Test the connection:
   uvx labmcp-bench-psu --address "USB0::0x1AB1::0x0E11::DP8C123456789::INSTR" --check   # Rigol over USB-TMC

uvx labmcp-bench-psu --address "TCPIP0::192.168.1.50::INSTR" --check # any LXI/VXI-11 supply uvx labmcp-bench-psu --address tcp://192.168.1.51:5025 --check # Siglent raw socket uvx labmcp-bench-psu --address tcp://192.168.1.52:9221 --check # Aim-TTi raw socket uvx labmcp-bench-psu --address /dev/ttyACM0 --check # Aim-TTi USB virtual COM uvx labmcp-bench-psu --address "serial://COM3?write_termination=CRLF" --check # Rigol DP800 RS-232

   USB-TMC and VXI-11 addresses use PyVISA (installed with this package; add `?backend=@ivi` to use NI-VISA / Keysight IO Libraries instead of pyvisa-py).

Add to your MCP client

Claude Code

claude mcp add psu -- uvx labmcp-bench-psu --address "TCPIP0::192.168.1.50::INSTR" --limit max_voltage_v=12 --limit max_current_a=1

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

{

"mcpServers": { "psu": { "command": "uvx", "args": ["labmcp-bench-psu", "--address", "TCPIP0::192.168.1.50::INSTR", "--limit", "max_voltage_v=12", "--limit", "max_current_a=1"] } } }

Add --read-only to allow monitoring only: setpoint changes and output_on are hidden, while output_off and all_outputs_off stay available. For other clients, generate the snippet with uvx labmcp config bench-psu --address TCPIP0::192.168.1.50::INSTR --client vscode.

Tools

ToolKindDescription
all_outputs_off🛑 safetySwitch every output OFF (emergency stop for the whole supply). Each channel is switched individually and read back where the instrument supports it.
clear_protection_trip🎛 controlClear an OVP/OCP trip after fixing its cause. The output stays OFF; use output_on to re-energise. On Aim-TTi supplies this clears trips on all outputs.
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_errors👁 readRead (and clear) the instrument's error queue / error registers. Empty list = no errors.
get_outputs👁 readReport each channel: voltage and current-limit setpoints, measured voltage/current/power, output on/off, CV/CC mode, and OVP/OCP levels and trip state where the model supports them.
output_off🛑 safetySwitch a channel's output OFF. Safe to call at any time.
output_on⚠️ hazardSwitch a channel's output ON, energising the connected load at the present setpoints. The setpoints are read back first and the output is refused if they exceed the safety limits (e.g. after someone changed them on the front panel).
reconnect🛑 safetyClose and re-open the connection to the instrument (e.g. after it was power cycled or a cable was re-plugged).
set_current_limit🎛 controlSet a channel's current limit (the constant-current setpoint). Refused above max_current_a (checked even with the output off) or above the channel's range.
set_protection🎛 controlSet over-voltage (OVP) and/or over-current (OCP) protection for a channel. When exceeded, the supply switches the output off. Rigol: levels + on/off; Aim-TTi CPX/QL/PL-P: levels (always armed), MX: levels + on/off; Siglent SPD1000X: levels only; SPD3303X: not available.
set_voltage🎛 controlSet a channel's voltage setpoint. Refused above max_voltage_v (checked even with the output off) or above the channel's range. If the output is on, the load sees the new voltage at once.

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

Safety limits

LimitDefaultMeaning
max_voltage_v30 VLargest voltage setpoint (magnitude) on any channel. Checked when setting the voltage, even with the output off, and again before output_on
max_current_a3 ALargest current-limit setpoint on any channel, checked the same way

Override at launch, e.g. --limit max_voltage_v=12 --limit max_current_a=0.5. Setpoints are also checked against each model's settable range. output_on reads the setpoints back from the instrument first, so a value changed on the front panel cannot slip past the limits.

Example prompts

  • "Show me all channels of the power supply: setpoints, measured current and whether they're in CV or CC."
  • "Set CH1 to 12 V with a 200 mA current limit, set OVP at 13 V, then turn it on and tell me how much current the LED array draws."
  • "Ramp CH2 from 0 to 5 V in 0.5 V steps, reading the current at each step, and plot the I-V curve of the load."
  • "The heater is drawing more than expected: turn every output off now."
  • "Channel 1 tripped. What happened, and is it safe to clear the trip?"

Notes

  • Dialect detection: *IDN? manufacturer "RIGOL" → Rigol, "Siglent" → Siglent, "THURLBY THANDAR"/"TTi"/"Aim" → Aim-TTi. Force one with --option dialect=rigol|siglent|tti for rebadged units. Models not in the built-in table are treated as --option channels=N channels with no model maxima (the safety limits still apply).
  • Rigol: setpoints via :SOUR :VOLT/CURR, readback via :APPL? CHn and :MEAS:ALL? CHn, mode via :OUTP:MODE? CHn (CV/CC/UR), OVP/OCP via :OUTP:OVP|OCP[:STAT|:VAL|:QUES?]. Trips are cleared with :OUTP:OVP|OCP:CLEAR, which only clears the flag. [:SOUR]:VOLT:PROT:CLE is never sent because the programming guide says it also turns the output on. DP831 CH3 is a negative output: give negative voltages (not yet verified on hardware). Over RS-232 the DP800 needs CR LF line endings (?write_termination=CRLF).
  • Siglent: SPD3303X/X-E have no programmable OVP/OCP and report output state and CV/CC only through the SYST:STAT? status word (CH1/CH2). CH3 is fixed (2.5/3.3/5 V by front-panel switch) and can only be switched on/off; its state is not readable. SPD1000X has OVP/OCP levels only (always armed, trip state not readable). The error reply format (0 No Error) is not SCPI-standard, so settings are verified by reading them back. The server pauses 0.1 s after each command to Siglent supplies (--option write_delay_s= to change); Siglent's own examples wait between commands, but the required delay is not documented.
  • Aim-TTi: there is no live CV/CC query, so mode is inferred from readback vs setpoints (mode_source: "inferred"). Trip flags come from the LSR ? limit event register, which latches events and is cleared by reading it. CPX/QL/PL-P protection is always armed (levels only); MX models can also switch OVP/OCP on/off. TRIPRST clears trips on all outputs (not documented for MX100T/TP). Original QL P/T models have no output-state query, so their output_on is reported as unknown. OPALL 0 is sent first in all_outputs_off, then every output individually.
  • Tracking / series / parallel modes, timers, sequences, remote sense and saved set-ups are not exposed. Put the supply in independent mode before handing it to an agent.
  • GW Instek GPP and B&K Precision 9130/9140 supplies are not supported yet: too many reply formats are undocumented in their manuals to implement them safely.

Hardware verification

ModelFirmwareInterfaceVerified byDate
*none yet: be the first*
PopNx에게 묻기