# toggleHttp2

启用或禁用HTTP/2

Agent View of the PolicyLayer registry record for `toggleHttp2`. HTML page: https://policylayer.com/tools/7gugu-whistle-mcp/togglehttp2

## Facts

- Tool: `toggleHttp2`
- Server: Whistle (`7gugu/whistle-mcp`) — https://policylayer.com/tools/7gugu-whistle-mcp.md
- Homepage: https://github.com/7gugu/whistle-mcp
- Risk category: Write (Medium 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": "toggleHttp2",
    "arguments": {}
  }
}
```

## Why toggleHttp2 is rated Medium

This tool modifies proxy server configuration by toggling HTTP/2 support on/off. This is a reversible Write operation—the setting can be toggled back—affecting how the proxy handles network protocols. The impact is medium severity because misconfiguration could disrupt network traffic or bypass security controls, but the change is not destructive and can be readily undone.

From the tool's own definition: "Tool name 'toggleHttp2' with description '启用或禁用HTTP/2' (Enable or disable HTTP/2) indicates a configuration modification that toggles a protocol setting on the Whistle proxy server."

## Use case

AI agents use toggleHttp2 to create or update resources in Whistle, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Whistle environment.

## Recommended policy (PolicyLayer)

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

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "toggleHttp2": {
      "limits": [
        {
          "counter": "togglehttp2_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Whistle (33)

- `deleteGroup` — Destructive — https://policylayer.com/tools/7gugu-whistle-mcp/deletegroup.md
- `deleteRule` — Destructive — https://policylayer.com/tools/7gugu-whistle-mcp/deleterule.md
- `deleteValue` — Destructive — https://policylayer.com/tools/7gugu-whistle-mcp/deletevalue.md
- `deleteValueGroup` — Destructive — https://policylayer.com/tools/7gugu-whistle-mcp/deletevaluegroup.md
- `replayRequest` — Execute — https://policylayer.com/tools/7gugu-whistle-mcp/replayrequest.md
- `toggleHttpInterception` — Execute — https://policylayer.com/tools/7gugu-whistle-mcp/togglehttpinterception.md
- `toggleHttpsInterception` — Execute — https://policylayer.com/tools/7gugu-whistle-mcp/togglehttpsinterception.md
- `toggleProxy` — Execute — https://policylayer.com/tools/7gugu-whistle-mcp/toggleproxy.md
- `getAllValues` — Read — https://policylayer.com/tools/7gugu-whistle-mcp/getallvalues.md
- `getCurrentTimestamp` — Read — https://policylayer.com/tools/7gugu-whistle-mcp/getcurrenttimestamp.md
- `getInterceptInfo` — Read — https://policylayer.com/tools/7gugu-whistle-mcp/getinterceptinfo.md
- `getRules` — Read — https://policylayer.com/tools/7gugu-whistle-mcp/getrules.md
- `getValue` — Read — https://policylayer.com/tools/7gugu-whistle-mcp/getvalue.md
- `getValueList` — Read — https://policylayer.com/tools/7gugu-whistle-mcp/getvaluelist.md
- `getWhistleStatus` — Read — https://policylayer.com/tools/7gugu-whistle-mcp/getwhistlestatus.md
- `addRuleToGroup` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/addruletogroup.md
- `addValueToGroup` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/addvaluetogroup.md
- `createGroup` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/creategroup.md
- `createRule` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/createrule.md
- `createValue` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/createvalue.md
- `createValuesGroup` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/createvaluesgroup.md
- `disableRule` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/disablerule.md
- `enableRule` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/enablerule.md
- `removeRuleFromGroup` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/removerulefromgroup.md
- `removeValueFromGroup` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/removevaluefromgroup.md
- `renameGroup` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/renamegroup.md
- `renameRule` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/renamerule.md
- `renameValue` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/renamevalue.md
- `renameValueGroup` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/renamevaluegroup.md
- `setAllRulesState` — Write — https://policylayer.com/tools/7gugu-whistle-mcp/setallrulesstate.md
- …and 3 more: https://policylayer.com/tools/7gugu-whistle-mcp.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=7gugu-whistle-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/7gugu-whistle-mcp
