pm5190-mcp
MCP server for controlling the Philips PM5190 LF synthesizer over GPIB.
Connects via any Prologix-compatible USB-to-GPIB adapter (e.g. AR488, Prologix GPIB-USB).
Requirements
- Prologix-compatible USB-to-GPIB adapter
- PM5190 GPIB address configured via DIP switches on the bottom of the unit
Usage
From PyPI (recommended)
uvx pm5190-mcp
PM5190_PORT=/dev/ttyUSB0 PM5190_ADDR=4 uvx pm5190-mcp
From source
PM5190_PORT=/dev/ttyUSB0 PM5190_ADDR=4 uv run pm5190-mcp
Claude Code configuration
Add to .mcp.json:
{
"mcpServers": {
"pm5190": {
"type": "stdio",
"command": "uvx",
"args": ["pm5190-mcp"],
"env": {
"PM5190_PORT": "/dev/ttyUSB0",
"PM5190_ADDR": "4"
}
}
}
}
The GPIB address is set via DIP switches on the bottom of the unit:
Image from the Philips PM5190 user manual.
Available tools
| Tool | Description |
|---|---|
pm5190_connect |
Connect to the USB-to-GPIB adapter |
pm5190_disconnect |
Disconnect |
pm5190_status |
Connection status and firmware version |
pm5190_configure |
Set frequency, amplitude, DC offset and waveform in one command |
pm5190_set_frequency |
Set frequency only |
pm5190_set_amplitude |
Set amplitude and DC offset |
pm5190_set_waveform |
Set waveform type |
Environment variables
| Variable | Default | Description |
|---|---|---|
PM5190_PORT |
— | Serial port (auto-connects on startup if set) |
PM5190_BAUD |
115200 |
Baud rate |
PM5190_ADDR |
4 |
GPIB address |
Release files for pm5190-mcp 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pm5190_mcp-0.1.5.tar.gz | 9.9 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pm5190_mcp-0.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.9 MB
Release files / pm5190_mcp-0.1.5.tar.gz
| Download URL | pm5190_mcp-0.1.5.tar.gz |
|---|---|
| Size | 9.9 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d261f9006c4fdac7ce76d750e5483da3e21b3f76cd8c33c724fb1a85e8c7d150
|
|
BLAKE2b-256 checksum How to use checksums |
b56e3657d23e1c4e775f937e1528db816c89cee746cc2d3363583c32d3f2abf5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 26, 2026.
Transparency logRelease files / pm5190_mcp-0.1.5-py3-none-any.whl
| Download URL | pm5190_mcp-0.1.5-py3-none-any.whl |
|---|---|
| Size | 17.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
28ddb3efddfeacd07c88bfa1b9543ad53af19449c5c9a23e7e8511f249c3b8ff
|
|
BLAKE2b-256 checksum How to use checksums |
6333af355759c5886cda5d9c35d190638eceef41922c739888eb90b73f6045b8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 26, 2026.
Transparency log