Instrument MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| connectA | 连接 VISA 仪器。必须先连接才能使用其他命令。 使用示例:
Args: address: VISA 地址,如 "TCPIP::IP::INSTR" 或 "GPIB0::5::INSTR" instrument_type: 仪器类型,设为 "auto" 自动识别,或指定 "mxa"/"cmw"/"keysight_ps" alias: 会话别名,后续命令通过此别名引用仪器,如 "mxa"/"cmw"/"ps" |
| disconnectA | 断开指定别名的仪器连接。 Args: alias: 要断开的仪器别名,如 "mxa"/"cmw"/"ps" |
| list_sessionsA | 列出当前所有已连接的仪器别名。 |
| get_historyA | 查看最近的命令执行历史,用于调试。 Args: limit: 返回最近多少条记录 |
| get_available_toolsA | 列出当前可用的所有仪器命令。 使用场景:
Args: instrument_type: 指定仪器类型过滤,如 "mxa"/"cmw",留空显示全部 |
| discover_my_instrumentB | 识别已连接仪器的型号,并推荐可用命令。 使用场景: 连接后确认仪器型号,查看推荐命令 |
| debug_last_errorB | 调试最后一个失败的命令,读取仪器错误队列。 使用场景: 命令执行失败后排查原因 |
| explore_scpiA | 探索性发送 SCPI 命令,用于学习和发现仪器支持的命令。 使用场景:
工作流程:
Args: alias: 已连接仪器的别名,如 "mxa"/"cmw" command: SCPI 命令字符串,如 "FREQ:CENT?" 或 "*OPT?" query: 是否为查询命令(命令以 ? 结尾时自动识别) |
| save_learned_commandA | 将探索成功的 SCPI 命令保存为可复用的 MCP 工具。 保存规则:
使用场景:
参数格式示例:
Args: name: 命令名称,如 "mxa_set_peak_threshold" description: 命令功能描述 scpi_template: SCPI 模板,如 "FREQ:CENT {freq_hz}" 或 "*IDN?" instrument_type: 仪器类型,如 "mxa"/"cmw"/"keysight_ps" params_json: 参数定义 JSON 数组字符串 is_query: 是否为查询命令(返回数据的命令) |
| list_learned_commandsA | 列出当前项目中已保存的自定义命令文件。 |
| init_project_commandsA | 初始化项目命令目录,复制内置 YAML 到当前项目的 .instrument_mcp/。 使用场景:
执行后:
|
| idnC | [CMW] 读取仪器标识信息 |
| cmw_presetC | [CMW] 恢复 CMW500 到预设状态 |
| cmw_opcC | [CMW] 等待操作完成 |
| cmw_clsC | [CMW] 清除仪器状态 |
| cmw_tstC | [CMW] 自检 |
| cmw_optC | [CMW] 读取仪器选项列表 |
| cmw_get_errorC | [CMW] 读取 CMW 错误队列 |
| cmw_cell_onC | [CMW] 打开 LTE 小区信号 |
| cmw_cell_offC | [CMW] 关闭 LTE 小区信号 |
| cmw_cell_stateC | [CMW] 查询小区状态 |
| cmw_cell_state_allB | [CMW] 查询小区完整状态(含调整状态) |
| cmw_set_bandC | [CMW] 设置 LTE 频段(如 OB1, OB3, OB7, OB38, OB40, OB41) |
| cmw_set_dl_channelC | [CMW] 设置下行信道号 |
| cmw_set_ul_channelC | [CMW] 设置上行信道号 |
| cmw_set_bandwidthC | [CMW] 设置 LTE 信道带宽(RB数格式:B100=20MHz, B50=10MHz, B25=5MHz, B15=3MHz, B6=1.4MHz) |
| cmw_set_input_attenuationD | [CMW] 设置输入衰减 |
| cmw_set_tpc_modeC | [CMW] 设置上行功率控制模式 |
| cmw_query_dl_frequencyC | [CMW] 查询下行频率 |
| cmw_query_ul_frequencyC | [CMW] 查询上行频率 |
| cmw_connect_ueB | [CMW] 连接 UE(建立 RRC 连接) |
| cmw_disconnect_ueC | [CMW] 断开 UE 连接 |
| cmw_query_connection_stateC | [CMW] 查询 UE 连接状态 |
| cmw_init_measurementD | [CMW] 触发测量 |
| cmw_abort_measurementC | [CMW] 中止测量 |
| cmw_set_meas_portC | [CMW] 设置测量信号路径/端口 |
| cmw_set_sign_portC | [CMW] 设置信令信号路径/端口 |
| cmw_memory_catalogC | [CMW] 查询仪器内部文件目录 |
| cmw_recall_stateB | [CMW] 从文件加载仪器状态 |
| scpi_writeC | [GENERIC] 发送任意 SCPI 写命令 |
| scpi_queryC | [GENERIC] 发送任意 SCPI 查询命令并读取响应 |
| opcC | [GENERIC] 等待操作完成(*OPC?) |
| clsC | [GENERIC] 清除仪器状态(*CLS) |
| esrC | [GENERIC] 读取事件状态寄存器(*ESR?) |
| ps_presetC | [KEYSIGHT_PS] 恢复电源预设状态 |
| ps_opcC | [KEYSIGHT_PS] 等待操作完成 |
| ps_clsC | [KEYSIGHT_PS] 清除仪器状态 |
| ps_get_errorC | [KEYSIGHT_PS] 读取错误队列 |
| ps_set_voltageC | [KEYSIGHT_PS] 设置输出电压(V) |
| ps_get_voltageC | [KEYSIGHT_PS] 查询设定电压值 |
| ps_meas_voltageB | [KEYSIGHT_PS] 测量实际输出电压 |
| ps_set_currentC | [KEYSIGHT_PS] 设置电流限制(A) |
| ps_get_currentB | [KEYSIGHT_PS] 查询设定电流限制 |
| ps_meas_currentC | [KEYSIGHT_PS] 测量实际输出电流 |
| ps_meas_powerC | [KEYSIGHT_PS] 测量实际输出功率 |
| ps_output_onC | [KEYSIGHT_PS] 开启输出 |
| ps_output_offC | [KEYSIGHT_PS] 关闭输出 |
| ps_get_output_stateC | [KEYSIGHT_PS] 查询输出状态 |
| ps_set_ovpC | [KEYSIGHT_PS] 设置过压保护(OVP) |
| ps_get_ovpC | [KEYSIGHT_PS] 查询过压保护值 |
| ps_set_ocpC | [KEYSIGHT_PS] 设置过流保护(OCP) |
| ps_get_ocpB | [KEYSIGHT_PS] 查询过流保护值 |
| ps_clear_protC | [KEYSIGHT_PS] 清除保护状态 |
| ps_set_senseC | [KEYSIGHT_PS] 设置远端/本地感测 |
| ps_get_senseC | [KEYSIGHT_PS] 查询感测模式 |
| ps_set_rangeC | [KEYSIGHT_PS] 设置电压量程 |
| ps_get_rangeC | [KEYSIGHT_PS] 查询电压量程 |
| mxa_presetB | [MXA] 恢复仪器到预设状态(*RST),会清除所有当前设置和测量数据 |
| mxa_opcC | [MXA] 等待操作完成 |
| mxa_clsC | [MXA] 清除仪器状态(*CLS) |
| mxa_get_errorC | [MXA] 读取仪器错误队列 |
| mxa_set_frequencyC | [MXA] 设置中心频率和频率扫宽 |
| mxa_set_freq_start_stopC | [MXA] 设置起始和终止频率 |
| mxa_query_frequencyC | [MXA] 查询频率参数 |
| mxa_set_rbwC | [MXA] 设置分辨率带宽(RBW) |
| mxa_set_vbwC | [MXA] 设置视频带宽(VBW) |
| mxa_set_ref_levelD | [MXA] 设置参考电平 |
| mxa_set_attenuationC | [MXA] 设置输入衰减器 |
| mxa_optimize_rangeB | [MXA] 优化功率范围(自动调整衰减和参考电平) |
| mxa_sweep_singleC | [MXA] 执行单次扫描并等待完成 |
| mxa_sweep_continuousC | [MXA] 设置为连续扫描模式 |
| mxa_sweep_immC | [MXA] 立即触发单次扫描 |
| mxa_set_sweep_pointsC | [MXA] 设置扫描点数 |
| mxa_query_sweep_timeD | [MXA] 查询扫描时间 |
| mxa_peak_searchC | [MXA] 执行峰值搜索并返回峰值幅度 |
| mxa_peak_nextD | [MXA] 搜索下一个峰值 |
| mxa_peak_leftC | [MXA] 搜索左侧峰值 |
| mxa_peak_rightC | [MXA] 搜索右侧峰值 |
| mxa_read_marker_yB | [MXA] 读取当前标记点的幅度值 |
| mxa_read_marker_xB | [MXA] 读取当前标记点的频率值 |
| mxa_marker_offC | [MXA] 关闭所有标记点 |
| mxa_marker_table_onC | [MXA] 打开标记表显示 |
| mxa_read_traceB | [MXA] 读取当前迹线的数据点(ASCII 格式) |
| mxa_set_trace_modeC | [MXA] 设置迹线模式 |
| mxa_set_detectorD | [MXA] 设置检波器类型 |
| mxa_set_averagingC | [MXA] 设置平均次数 |
| mxa_set_average_typeC | [MXA] 设置平均类型 |
| mxa_select_saC | [MXA] 选择频谱分析模式(Spectrum Analyzer) |
| mxa_config_harmonicsC | [MXA] 配置谐波测量模式 |
| mxa_set_harm_bwC | [MXA] 设置谐波测量带宽 |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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/zeng-andrew/instrument-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server