Token导航 LogoToken导航TokenDH.com
Analog Discovery MCP Server logo
AI代理stdio官方级别未说明来源级核验

Analog Discovery MCP Server

MCP Server

Analog Discovery 2 MCP服务器是一个用于控制Digilent Analog Discovery 2设备的服务器,提供通过MCP协议与设备的示波器、波形发生器等功能交互的工具。

工具数

7

提示词数

0

GitHub Stars

0

资源数

0
设备控制PythonClaudeClaude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

amahpour

提供方

amahpour

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r requirements.txt

详细介绍

模拟发现2 MCP服务器

用于控制Digilent Analog Discovery 2设备的MCP(模型上下文协议)服务器。该服务器提供工具,通过MCP协议与Analog Discovery 2的示波器、波形发生器和其他功能进行交互。

特性

  • 设备管理:列出、连接和断开Analog Discovery 2设备
  • 示波器:从通道0和1捕获模拟波形
  • 波形发生器:在输出通道上生成各种波形(正弦、方形、三角形、斜坡、直流)
  • 设备信息:获取版本和设备详细信息

先决条件

1.安装WaveForms SDK

在使用此MCP服务器之前,您必须安装Digilent的WaveForms SDK:

  1. 从下载WaveForms Digilent网站
  2. 将WaveForms.app安装到 /Applications/
  3. 对macOS至关重要:复制 dwf.framework 到系统框架目录:
   sudo cp -R /Applications/WaveForms.app/Contents/Frameworks/dwf.framework /Library/Frameworks/

此步骤是SDK正确枚举设备所必需的。没有它,您可能会遇到ERC 3090错误。

  1. 确保Analog Discovery 2通过USB连接

2.Python要求

  • Python 3.11或更高版本
  • pip包管理器

安装

  1. 克隆或下载此存储库:
cd analog-discovery-msp-server
  1. 安装Python依赖项:
pip install -r requirements.txt
  1. 验证安装:
python server.py

服务器将启动并等待MCP客户端通过stdio连接。

MCP服务器配置

要将此服务器与MCP客户端(如Claude Desktop)一起使用,请将其添加到MCP配置文件中。

适用于克劳德桌面

增添 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "analog-discovery-2": {
      "command": "python",
      "args": ["/absolute/path/to/analog-discovery-msp-server/server.py"]
    }
  }
}

对于其他MCP客户端

服务器使用FastMCP,并使用MCP协议通过stdio进行通信。配置您的客户端以运行:

python /path/to/server.py

可用工具

list_devices

列出连接到系统的所有可用Analog Discovery 2设备。

参数:无

示例:

{
  "tool": "list_devices"
}

connect_device

连接到Analog Discovery 2设备。

参数:

  • device_name (字符串,可选):设备名称过滤器(无表示第一个可用,“模拟发现2”表示特定)

示例:

{
  "tool": "connect_device",
  "arguments": {
    "device_name": "Analog Discovery 2"
  }
}

disconnect_device

断开与当前设备的连接。

参数:无

get_device_info

获取有关当前连接设备的信息。

参数:无

capture_waveform

从通道捕获模拟波形(示波器功能)。

参数:

  • channel (整数,必填):通道号(1或2)
  • sampling_frequency (数字,可选):采样频率(Hz)(默认值:20MHz)
  • buffer_size (整数,可选):样本中的缓冲区大小(0=最大值,默认值:0)
  • offset (数字,可选):通道偏移,单位为伏特(默认值:0.0)
  • amplitude_range (数字,可选):通道范围,单位为伏特(默认值:5.0)

示例:

{
  "tool": "capture_waveform",
  "arguments": {
    "channel": 1,
    "sampling_frequency": 1000000,
    "buffer_size": 4096,
    "offset": 0.0,
    "amplitude_range": 5.0
  }
}

generate_waveform

在通道上生成波形(波形发生器功能)。

参数:

  • channel (整数,必填):通道号(1或2)
  • function (字符串,必填):波形类型:“正弦”、“方形”、“三角形”、“ramp_up”、“ramp_down”、“dc”、“噪声”、“脉冲”或“梯形”
  • frequency (数字,必填):频率(Hz)
  • amplitude (数字,必填):振幅(单位:伏特)
  • offset (数字,可选):直流偏移,单位为伏特(默认值:0.0)

示例:

{
  "tool": "generate_waveform",
  "arguments": {
    "channel": 1,
    "function": "sine",
    "frequency": 1000,
    "amplitude": 2.5,
    "offset": 0.0
  }
}

stop_waveform

停止通道上的波形生成。

参数:

  • channel (整数,必填):通道号(1或2)

示例:

{
  "tool": "stop_waveform",
  "arguments": {
    "channel": 1
  }
}

使用示例

基本工作流程

  1. 列出可用设备:
   list_devices
  1. 连接到设备:
   connect_device

或具有明确的设备名称:

   connect_device {"device_name": "Analog Discovery 2"}
  1. 捕获波形:
   capture_waveform {"channel": 1, "sampling_frequency": 20000000}
  1. 生成正弦波:
   generate_waveform {"channel": 1, "function": "sine", "frequency": 1000, "amplitude": 2.5}
  1. 停止波形生成:
   stop_waveform {"channel": 1}
  1. 断开:
   disconnect_device

故障排除

“未找到模拟发现设备”或ERC 3090错误(macOS)

这是macOS上最常见的问题。 错误“Adept NOK dmgrEnumDevicesEx ERC:3090”表示SDK无法枚举设备。

解决方案:确保 dwf.framework 已复制到 /Library/Frameworks/:

sudo cp -R /Applications/WaveForms.app/Contents/Frameworks/dwf.framework /Library/Frameworks/

附加检查:

  • 确保Analog Discovery 2通过USB连接
  • 验证 dwf.framework 存在: ls -la /Library/Frameworks/dwf.framework
  • 检查macOS上的USB权限(系统设置>隐私和安全>USB访问)
  • 确保终端/Python具有USB访问权限
  • 复制框架后,尝试拔下并重新插入设备

“找不到WF_SDK”或导入错误

  • 确保已安装WaveForms SDK(从Digilent网站下载)
  • 确保 WF_SDK 文件夹位于项目目录中(包含在此存储库中)
  • PYTHONPATH 环境变量应包括项目目录(在中自动设置 .cursor/mcp.json)

“未找到fastmcp包”

  • 安装依赖项: pip install -r requirements.txt

导入错误

  • 验证Python版本是否为3.11或更高版本: python --version
  • 重新安装依赖关系: pip install -r requirements.txt --force-reinstall

设备连接问题

  • 确保一次只有一个进程访问设备
  • 关闭正在运行的WaveForms应用程序(它对设备具有独占访问权限)
  • 尝试断开和重新连接设备
  • 如果USB权限似乎卡住,请重新启动Mac

测试装置

运行测试脚本以验证一切正常:

python3 test_device.py

这将测试设备连接、示波器捕获和波形生成。

技术细节

  • 框架:FastMCP(Pythonic MCP服务器框架)
  • 协议:stdio上的MCP(模型上下文协议)
  • Python库:用途 WF_SDK 包装材料 Digilent官方WaveForms SDK入门示例
  • 设备:Digilent模拟探索2
  • 支持的功能:模拟输入(示波器)、模拟输出(波形发生器)
  • 备注:根据WF_SDK惯例,通道为1索引(1-2)

许可证

本项目按原样提供,用于Analog Discovery 2设备。

测试

包含一个测试脚本来验证您的安装:

python3 test_device.py

这将测试:

  • 设备连接
  • 示波器波形捕获
  • 波形发生器

资源

目录标签

目录标签

设备控制PythonClaude本地部署示波器波形发生器MCP协议硬件交互

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

7

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP