Python
Modbus MCP 서버
Modbus 데이터를 표준화하고 상황에 맞게 조정하여 AI 에이전트와 산업용 IoT 시스템의 원활한 통합을 지원하는 MCP 서버입니다.
특징
- Modbus 도구 :
- 읽기/쓰기 홀딩 레지스터(
read_register
,write_register
). - 코일 읽기/쓰기(
read_coils
,write_coil
). - 입력 레지스터를 읽습니다(
read_input_registers
). - 여러 개의 홀딩 레지스터를 읽습니다(
read_multiple_holding_registers
).
- 읽기/쓰기 홀딩 레지스터(
- 프롬프트 : 사용자 정의 가능한 프롬프트(
analyze_register
)를 사용하여 Modbus 레지스터 값을 분석합니다. - 유연한 연결 : 환경 변수를 통해 구성된 TCP, UDP 또는 직렬을 통한 Modbus를 지원합니다.
요구 사항
- 파이썬 : 3.10
- 종속성 및 가상 환경 관리를 위한 uv .
설치
uv
설치 :지엑스피1- 저장소 복제 :
- 종속성 설치 :
구성
서버는 환경 변수를 통해 지정된 매개변수를 사용하여 Modbus 장치에 연결합니다. 이러한 변수는 .env
파일이나 셸 환경에서 설정하세요.
환경 변수
변하기 쉬운 | 설명 | 기본 | 필수의 |
---|---|---|---|
MODBUS_TYPE | 연결 유형: tcp , udp 또는 serial | tcp | 예 |
MODBUS_HOST | TCP/UDP의 호스트 주소 | 127.0.0.1 | TCP/UDP의 경우 |
MODBUS_PORT | TCP/UDP용 포트 | 502 | TCP/UDP의 경우 |
MODBUS_SERIAL_PORT | 직렬 포트(예: /dev/ttyUSB0 , COM1 ) | /dev/ttyUSB0 | 직렬용 |
MODBUS_BAUDRATE | 직렬 통신 속도 | 9600 | 직렬용 |
MODBUS_PARITY | 직렬 패리티: N (없음), E (짝수), O (홀수) | N | 직렬용 |
MODBUS_STOPBITS | 직렬 정지 비트 | 1 | 직렬용 |
MODBUS_BYTESIZE | 직렬 바이트 크기 | 8 | 직렬용 |
MODBUS_TIMEOUT | 직렬 시간 초과(초) | 1 | 직렬용 |
예제 .env
파일
TCP의 경우:
직렬의 경우:
용법
Claude Desktop 설치
구성 파일:
도구 사용
참고 : 자연어 지원은 클라이언트가 프롬프트를 구문 분석하고 도구에 매핑하는 능력에 따라 달라집니다. MCP Inspector는 구조화된 JSON을 요구하지만, 아래 예시에서는 대화형 입력이 어떻게 변환되는지 보여줍니다.
- 보류 등록부 읽기 :
- 즉각적인 :
- MCP 검사기 JSON :
- 예상 출력 :
Value: <register_value>
- 즉각적인 :
- 보류 등록부에 쓰기 :
- 즉각적인 :
- MCP 검사기 JSON :
- 예상 출력 :
Successfully wrote 100 to register 10
- 즉각적인 :
- 코일 읽기 :
- 즉각적인 :
- MCP 검사기 JSON :
- 예상 출력 :
Coils 0 to 4: [False, False, False, False, False]
- 즉각적인 :
- 코일에 쓰기 :
- 즉각적인 :
- MCP 검사기 JSON :
- 예상 출력 :
Successfully wrote True to coil 5
- 즉각적인 :
- 입력 레지스터 읽기 :
- 즉각적인 :
- MCP 검사기 JSON :
- 예상 출력 :
Input Registers 2 to 4: [<value1>, <value2>, <value3>]
- 즉각적인 :
- 여러 개의 보류 레지스터 읽기 :
- 즉각적인 :
- MCP 검사기 JSON :
- 예상 출력 :
Holding Registers 0 to 2: [<value1>, <value2>, <value3>]
- 즉각적인 :
특허
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 라이선스를 참조하세요.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
모드버스-MCP
Related MCP Servers
- PythonMIT License
- Python
- TypeScript