Skip to main content
Glama
lucasgerads

LeCroy Oscilloscope MCP

by lucasgerads

lecroy-mcp

Servidor MCP para controlar osciloscopios LeCroy mediante SCPI a través de LAN (VXI-11) o USB.

Demo

Requisitos

  • uv instalado

  • Un osciloscopio LeCroy conectado a través de LAN o USB

Configuración de MCP

Añádelo a la configuración de tu cliente MCP (por ejemplo, .mcp.json de Claude Code):

{
  "mcpServers": {
    "lecroy-scope": {
      "type": "stdio",
      "command": "uvx",
      "args": ["lecroy-mcp"]
    }
  }
}

uvx descargará y ejecutará automáticamente el servidor; no se requiere instalación manual.

Configuración del osciloscopio (LAN / VXI-11)

Este servidor se comunica a través del protocolo estándar VXI-11. Antes de conectar, habilítalo en el osciloscopio:

  1. En el osciloscopio, ve a Utilities → Utilities Setup ... → Remote

  2. En la sección Control from, habilita LXI (VXI11)

  3. Anota la IP Address que se muestra; la necesitarás para la cadena de conexión

La IP del osciloscopio puede asignarse mediante DHCP o configurarse de forma estática en Utilities → Utility → Remote → Net Connections.

Nota: La opción TCPIP (VICP) que se muestra en el mismo panel utiliza el protocolo propietario de LeCroy y actualmente no es compatible con este servidor. Solo se requiere LXI (VXI11).

Configuración del osciloscopio

Opciones de conexión

Opción 1 — Conexión manual

Copia la configuración del cliente MCP de arriba tal cual y conéctate desde la sesión de Claude:

  1. scope_scan — detecta automáticamente los osciloscopios LeCroy en la red local

  2. scope_list_resources — lista todos los recursos VISA (LAN + USB)

  3. scope_connect("TCPIP0::192.168.1.111::inst0::INSTR") — conecta directamente

Opcionalmente, establece LECROY_SUBNET para indicar el rango de escaneo:

{
  "mcpServers": {
    "lecroy-scope": {
      "type": "stdio",
      "command": "uvx",
      "args": ["lecroy-mcp"],
      "env": {
        "LECROY_SUBNET": "192.168.1.0/24"
      }
    }
  }
}

Opción 2 — Preconfigurar la dirección IP (recomendado para LAN)

Establece LECROY_HOST en el bloque de entorno y el servidor se conectará automáticamente al iniciar:

{
  "mcpServers": {
    "lecroy-scope": {
      ...
      "env": {
        "LECROY_HOST": "192.168.1.111"
      }
    }
  }
}

Opción 3 — Preconfigurar una cadena de recursos completa (LAN o USB)

Usa LECROY_RESOURCE para un control total, incluyendo conexiones USB:

{
  "mcpServers": {
    "lecroy-scope": {
      ...
      "env": {
        "LECROY_RESOURCE": "USB0::0x05FF::0x1023::12345::INSTR"
      }
    }
  }
}

Uso

Una vez conectado, tienes herramientas para:

  • Configuración de canales (escala, offset, acoplamiento, límite de ancho de banda)

  • Configuración de disparo (modo, fuente, nivel, flanco)

  • Base de tiempo y profundidad de memoria

  • Mediciones automatizadas (PKPK, FREQ, RMS, RISE, DUTY, etc.)

  • Captura de formas de onda (JSON o CSV)

  • Capturas de pantalla

  • Funciones matemáticas (FFT, INTG, DIFF, etc.)

  • Generador integrado WaveSource (WaveSurfer 3000Z y similares)

Modelos compatibles

El servidor detecta el modelo conectado y ajusta los comandos en consecuencia. Se incluyen perfiles para:

  • WaveSurfer 3000Z / 4000HD

  • HDO4000A / HDO6000B / HDO8000A

  • WaveRunner 6000 / 8000

  • WavePro HD

  • MDA800A, SDA

Los modelos desconocidos recurren a valores predeterminados conservadores.

Instalación manual

Si prefieres no usar uvx:

pip install lecroy-mcp

Luego usa lecroy-mcp como comando en tu configuración de MCP en lugar de uvx lecroy-mcp.

Actualización

Con uvx, usa la etiqueta @latest para forzar la versión más reciente:

uvx lecroy-mcp@latest

O actualiza los args en tu .mcp.json para obtener siempre la última versión:

"args": ["lecroy-mcp@latest"]

Con pip:

pip install --upgrade lecroy-mcp

Notas

  • Requiere el backend pyvisa-py; NI-VISA actualmente no es compatible (interrumpe la captura de pantalla)

  • Todo el acceso VISA se serializa mediante un bloqueo de subprocesos; las llamadas a herramientas MCP paralelas son seguras

Solución de problemas

Los mensajes de diagnóstico no aparecen en los registros de MCP

Si no ves la salida del registro del servidor (por ejemplo, el estado de conexión automática o errores) en el visor de registros de tu cliente MCP, añade PYTHONUNBUFFERED al bloque de entorno:

"env": {
  "PYTHONUNBUFFERED": "1"
}

Esto deshabilita el almacenamiento en búfer de salida de Python para que los mensajes de registro se vacíen inmediatamente. No es necesario para el funcionamiento normal.

Probado con

Componente

Detalles

Osciloscopio

Teledyne LeCroy WaveSurfer 3024Z

Sistema operativo

Windows 10, Windows 11, Linux Mint

Cliente MCP

Claude Code

Este servidor también debería funcionar con otros clientes compatibles con MCP, como OpenAI Codex y Google Gemini Code Assist, y en otros sistemas operativos como macOS. Se agradecen informes y contribuciones para configuraciones adicionales.

Teledyne LeCroy y LeCroy son marcas registradas de Teledyne LeCroy, Inc. Este proyecto es una herramienta de código abierto independiente y no está afiliado, respaldado ni patrocinado por Teledyne LeCroy, Inc. Todos los nombres de productos y empresas son marcas comerciales o marcas registradas de sus respectivos titulares.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
19Releases (12mo)

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/lucasgerads/lecroy-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server