Skip to content
plugmcp
DirectorySkillsCategoriesBlog
EN/δΈ­ζ–‡
Sign inSign up
Home/Servers/Digilent WaveForms MCP Server

Digilent WaveForms MCP Server

I
by io.github.KenosInc

MCP server for Digilent WaveForms instruments (oscilloscope, AWG, logic analyzer).

Power your agent

Add this server

The publisher's own command. Not a PlugMCP endpoint.

Local command
docker run -i --rm ghcr.io/kenosinc/dwf-mcp-server:0.2.1
Provider
Claude Code
claude mcp add io.github.kenosinc-dwf-mcp-server -- docker run -i --rm ghcr.io/kenosinc/dwf-mcp-server:0.2.1

Run in a terminal.

Claude Desktop
{
  "mcpServers": {
    "io.github.kenosinc-dwf-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/kenosinc/dwf-mcp-server:0.2.1"
      ]
    }
  }
}

claude_desktop_config.json

Step-by-step: add this in Claude

Remote URL or a command on your machine? How the two installs differ

Run on PlugMCP

Host a copy with our keys and logs.

A new server you create. It is not this listing's official endpoint. Use the publisher install when you want their URL and their credentials.

Launch

Related MCP

View more
  • FirecrawlπŸ”₯ Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
  • N
    NotionToken-auth Notion MCP: pages, databases, blocks, comments, files. Runs headless in CI and agents.
  • Context7Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors

Related skills

View all
  • reaReverse engineer anything with agents, from app behavior down to native binaries.
  • rea-changelog-updatePrepare or rewrite REA release changelogs and GitHub release notes from pinned Git history, with verified contributor thanks and Release Please synchronization.
  • rea-tool-designDesign or change REA investigation tools, CLI/MCP contracts, provider capabilities, and Evidence semantics.

MCP server for Digilent WaveForms instruments (oscilloscope, AWG, logic analyzer).

dwf-mcp-server

MCP Server for Digilent WaveForms instruments β€” oscilloscope, arbitrary waveform generator (AWG), and logic analyzer. Built on dwfpy, a Python binding for the Digilent WaveForms SDK (libdwf).

Supported Devices

  • Analog Discovery 2 (AD2)
  • Analog Discovery 3 (AD3)
  • Digital Discovery (DD)
  • Any device supported by the Digilent WaveForms SDK

Prerequisites

  • Docker installed on the host machine.
  • No host-side WaveForms SDK installation is required. The proprietary libdwf.so is added via a derived Dockerfile layer (see Installation).
  • USB device permissions β€” Digilent USB devices default to root:root 0664. If the container cannot find any devices, add a udev rule on the host:
    # /etc/udev/rules.d/99-digilent.rules
    SUBSYSTEM=="usb", ATTRS{idVendor}=="1443", MODE="0666"
    
    Then reload: sudo udevadm control --reload-rules && sudo udevadm trigger

Installation

The public Docker image does not bundle any Digilent proprietary software (Adept 2 Runtime, WaveForms SDK / libdwf.so). You must create a derived image that adds them.

1. Create a derived Dockerfile

Create a file named Dockerfile.dwf:

FROM ghcr.io/kenosinc/dwf-mcp-server:latest

ARG ADEPT_VERSION=2.27.9
ARG WAVEFORMS_VERSION=3.24.4
RUN ARCH="$(dpkg --print-architecture)" \
    && apt-get update \
    && apt-get install -y --no-install-recommends curl \
    && curl -fsSL "https://files.digilent.com/Software/Adept2%20Runtime/${ADEPT_VERSION}/digilent.adept.runtime_${ADEPT_VERSION}-${ARCH}.deb" \
       -o /tmp/adept-runtime.deb \
    && curl -fsSL "https://files.digilent.com/Software/Waveforms/${WAVEFORMS_VERSION}/digilent.waveforms_${WAVEFORMS_VERSION}_${ARCH}.deb" \
       -o /tmp/waveforms.deb \
    && (apt-get install -y --no-install-recommends /tmp/adept-runtime.deb /tmp/waveforms.deb || true) \
    && for cmd in xdg-desktop-menu xdg-icon-resource xdg-mime; do \
         printf '#!/bin/sh\nexit 0\n' > "/usr/bin/$cmd" && chmod +x "/usr/bin/$cmd"; \
       done \
    && dpkg --configure -a \
    && apt-get purge -y curl \
    && apt-get autoremove -y \
    && rm -f /tmp/adept-runtime.deb /tmp/waveforms.deb \
    && rm -rf /var/lib/apt/lists/*

2. Build the image

docker build -f Dockerfile.dwf -t dwf-mcp-server .

3. Configure your MCP client

Claude Code
claude mcp add dwf -- docker run -i --rm --privileged dwf-mcp-server
Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "dwf": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "--privileged",
        "dwf-mcp-server"
      ]
    }
  }
}

Pass --privileged so the container can access USB devices.

Project-level config (Claude Code)

If you have cloned this repository, copy the bundled example to a project-local .mcp.json (which is gitignored) so Claude Code picks it up automatically when opened against this directory:

cp .mcp.example.json .mcp.json

Edit the resulting .mcp.json to match your local image tag or to add other servers; the original .mcp.example.json stays clean and shareable.

Available MCP Tools

ToolDescription
list_devicesList all connected Digilent WaveForms devices
device_infoGet detailed information about a specific device
analog_captureCapture analog waveform samples (oscilloscope); supports action="single" / "start" / "read" / "stop" for continuous capture across tool calls
generate_waveformGenerate an analog signal (AWG): sine, square, triangle, ...; supports action="pulse" / "start" / "stop" for persistent output
measureMeasure DC voltage, RMS, frequency, period, or peak-to-peak
power_supplyControl the programmable power supply (V+ / V-)
digital_captureCapture digital logic signals (logic analyzer); supports action="single" / "start" / "read" / "stop" for continuous capture across tool calls
gpio_readRead the logic level of a digital I/O pin
gpio_writeSet the logic level of a digital I/O pin
spi_transferSend and receive data over SPI using the digital protocol interface
device_stateReport per-sub-instrument running/idle status (AWG, scope, LA, power supply)
close_deviceClose the persistent device session and stop all outputs
device_session_statusCheck whether the persistent device session is currently open

Development

See CLAUDE.md for development setup, coding conventions, and release procedures.

License

MIT

How do I install Digilent WaveForms MCP Server?
Copy the stdio config for Cursor, Claude Desktop, Claude Code, or VS Code on this page. It uses the publisher's install, not a PlugMCP proxy.
Does Digilent WaveForms MCP Server need an API key?
No required environment variable is listed on this record.
What transport does Digilent WaveForms MCP Server use?
Digilent WaveForms MCP Server runs locally over stdio.
When was Digilent WaveForms MCP Server last checked?
Last checked 2026-10-16. MCP server for Digilent WaveForms instruments (oscilloscope, AWG, logic analyzer).

No tool list yet. Remote servers get one after the first health check.

plugmcp

Plug any tool into any agent. MCP servers for people who do not write servers. Gateway for volume, n8n for apps.

  • github.com/TODO
  • x.com/TODO
  • linkedin.com/company/TODO

PlugMCP, 2026

Product
  • Browse
  • Install
  • Host your own
  • Voice mode
  • Browser
Directory
  • All MCP servers
  • Agent skills
  • Categories
  • New
  • Voice
  • Submit a server
Developers
  • Docs
  • Blog
  • What is MCP
  • What is WebMCP
  • Status
Company
  • About
  • Contact
  • Terms
  • Privacy
  • DPA