# scpi_query

A execute tool on the Pypi:labmcp Alicat MCP server.

Agent View of the PolicyLayer registry record for `scpi_query`. HTML page: https://policylayer.com/tools/lab-instrument-mcps/scpi-query

## Facts

- Tool: `scpi_query`
- Server: Pypi:labmcp Alicat (`pypi:labmcp-alicat`) — https://policylayer.com/tools/lab-instrument-mcps.md
- Install: `npx -y pypi:labmcp-alicat`
- Homepage: https://github.com/K-Dense-AI/lab-instrument-mcps
- Risk category: Execute (High risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "scpi_query",
    "arguments": {}
  }
}
```

## Why scpi_query is rated High

SCPI queries execute commands on lab instruments; misuse could cause unsafe instrument states.

From the tool's own definition: "uninformative description"

## Use case

AI agents invoke scpi_query to trigger actions in Pypi:labmcp Alicat. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Pypi:labmcp Alicat:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "scpi_query": {
      "limits": [
        {
          "counter": "scpi_query_rate",
          "window": "minute",
          "max": 10,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Pypi:labmcp Alicat (241)

- `clear_calibration` — Destructive — https://policylayer.com/tools/lab-instrument-mcps/clear-calibration.md
- `clear_protection_trip` — Destructive — https://policylayer.com/tools/lab-instrument-mcps/clear-protection-trip.md
- `clear_results` — Destructive — https://policylayer.com/tools/lab-instrument-mcps/clear-results.md
- `stop_run` — Destructive — https://policylayer.com/tools/lab-instrument-mcps/stop-run.md
- `abort_measurement` — Execute — https://policylayer.com/tools/lab-instrument-mcps/abort-measurement.md
- `acquire_spectrum` — Execute — https://policylayer.com/tools/lab-instrument-mcps/acquire-spectrum.md
- `acquire_time_lapse` — Execute — https://policylayer.com/tools/lab-instrument-mcps/acquire-time-lapse.md
- `acquire_z_stack` — Execute — https://policylayer.com/tools/lab-instrument-mcps/acquire-z-stack.md
- `all_heaters_off` — Execute — https://policylayer.com/tools/lab-instrument-mcps/all-heaters-off.md
- `all_outputs_off` — Execute — https://policylayer.com/tools/lab-instrument-mcps/all-outputs-off.md
- `aspirate_ul` — Execute — https://policylayer.com/tools/lab-instrument-mcps/aspirate-ul.md
- `auto_phase` — Execute — https://policylayer.com/tools/lab-instrument-mcps/auto-phase.md
- `auto_range` — Execute — https://policylayer.com/tools/lab-instrument-mcps/auto-range.md
- `autofocus` — Execute — https://policylayer.com/tools/lab-instrument-mcps/autofocus.md
- `autoscale` — Execute — https://policylayer.com/tools/lab-instrument-mcps/autoscale.md
- `calibrate` — Execute — https://policylayer.com/tools/lab-instrument-mcps/calibrate.md
- `call_command` — Execute — https://policylayer.com/tools/lab-instrument-mcps/call-command.md
- `cancel_command` — Execute — https://policylayer.com/tools/lab-instrument-mcps/cancel-command.md
- `close_shutter` — Execute — https://policylayer.com/tools/lab-instrument-mcps/close-shutter.md
- `configure_board` — Execute — https://policylayer.com/tools/lab-instrument-mcps/configure-board.md
- `deactivate_modules` — Execute — https://policylayer.com/tools/lab-instrument-mcps/deactivate-modules.md
- `device_clear` — Execute — https://policylayer.com/tools/lab-instrument-mcps/device-clear.md
- `disable_watchdog` — Execute — https://policylayer.com/tools/lab-instrument-mcps/disable-watchdog.md
- `dispense_ul` — Execute — https://policylayer.com/tools/lab-instrument-mcps/dispense-ul.md
- `enable_watchdog` — Execute — https://policylayer.com/tools/lab-instrument-mcps/enable-watchdog.md
- `force_trigger` — Execute — https://policylayer.com/tools/lab-instrument-mcps/force-trigger.md
- `frequency_sweep` — Execute — https://policylayer.com/tools/lab-instrument-mcps/frequency-sweep.md
- `hold_valve` — Execute — https://policylayer.com/tools/lab-instrument-mcps/hold-valve.md
- `home_robot` — Execute — https://policylayer.com/tools/lab-instrument-mcps/home-robot.md
- `infuse` — Execute — https://policylayer.com/tools/lab-instrument-mcps/infuse.md
- …and 211 more: https://policylayer.com/tools/lab-instrument-mcps.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=lab-instrument-mcps · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/lab-instrument-mcps
