whistle-mcp
The Whistle MCP Server enables AI assistants to manage Whistle proxy servers through natural language interactions via the Model Context Protocol. Key capabilities include:
Rule Management: Create, update, rename, delete, enable/disable rules
Group Management: Create, rename, delete groups, and manage rule associations
Value Management: Create, update, rename, delete values and value groups
Proxy Control: Toggle proxy settings including HTTP/HTTPS interception, HTTP/2 protocol, and multi-rule mode
Request Handling: View intercepted network requests, filter by URL, and replay requests with custom parameters
Status Monitoring: Get server status and current timestamp
Provides global installation via npm package manager, allowing users to easily set up the Whistle MCP Server tool through the npm ecosystem.
Supports integration with Raycast through MCP plugin installation, enabling users to control Whistle proxy servers via Raycast interface for network debugging and proxy configuration.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@whistle-mcpshow me all the rules I have configured"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Whistle MCP Server
English | 中文
Project Introduction
Whistle MCP Server is a Whistle proxy management tool based on the Model Context Protocol (MCP), allowing AI assistants to directly operate and control local Whistle proxy servers. Through this tool, AI can help users manage rules, groups, values, monitor network requests, replay and modify requests, etc., without requiring manual operation of the Whistle interface. It greatly simplifies the process of network debugging, API testing, and proxy rule management, enabling users to complete complex network proxy configuration tasks through natural language interaction with AI.
Related MCP server: MCP Server
Features
Rule Management: Create, update, rename, delete, and enable/disable Whistle rules
Group Management: Create, rename, delete groups, and associate operations between rules and groups
Value Management: Create, update, rename, and delete values, with support for value group management
Proxy Control: Enable/disable proxy, HTTP/HTTPS interception, HTTP/2 protocol, etc.
Request Interception: View intercepted network request information, with URL filtering support
Request Replay: Support for replaying captured requests with custom request parameters
Multi-Rule Mode: Support for enabling/disabling multi-rule mode
Installation
Installing via Smithery
To install Whistle MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @7gugu/whistle-mcp --client claudeManual Installation
You can install Whistle MCP Server globally via npm:
npm install -g whistle-mcp-toolMCP Configuration
After installation, you can configure Whistle MCP in your MCP JSON configuration file:
{
"mcpServers": {
"whistle-mcp": {
"command": "whistle-mcp",
"args": [
"--host=<whistle server IP address>",
"--port=<whistle server port number>"
]
}
}
}Configuration Details
host: Whistle server IP address, defaults to localhost if not configured
port: Whistle server port number, defaults to 8899 if not configured
Configuring MCP JSON in AI Clients
Claude Client: https://modelcontextprotocol.io/quickstart/user
Raycast: Requires MCP plugin installation
Cursor: https://docs.cursor.com/context/model-context-protocol#configuring-mcp-servers
MCP Tools Description
Whistle MCP Server provides the following tools, which can be called via the MCP protocol:
Rule Management
Tool Name | Description | Function |
getRules | Get all rules | List all created rules and their content |
createRule | Create new rule | Create a new rule with the specified name |
updateRule | Update rule content | Modify the content of a specified rule |
renameRule | Rename rule | Rename a rule to a new name |
deleteRule | Delete rule | Delete a rule with the specified name |
enableRule | Enable rule | Enable a rule with the specified name |
disableRule | Disable rule | Disable a rule with the specified name |
setAllRulesState | Set all rules state | Enable or disable all rules at once |
Group Management
Tool Name | Description | Function |
createGroup | Create group | Create a new rule group with the specified name |
renameGroup | Rename group | Rename a rule group to a new name |
deleteGroup | Delete group | Delete a rule group with the specified name |
addRuleToGroup | Add rule to group | Add a specified rule to a specific group |
removeRuleFromGroup | Remove rule from group | Remove a rule from its group to the top level |
Value Management
Tool Name | Description | Function |
getAllValues | Get all values | List all created values and value groups (note: data may be large, consider using getValueList first) |
getValueList | Get value list | Get value list with index and name only (without data field, to avoid large payloads) |
getValue | Get single value | Get full information of a single value by name (including data field) |
createValue | Create new value | Create a new value with the specified name |
updateValue | Update value content | Modify the content of a specified value |
renameValue | Rename value | Rename a value to a new name |
deleteValue | Delete value | Delete a value with the specified name |
createValuesGroup | Create value group | Create a new value group with the specified name |
renameValueGroup | Rename value group | Rename a value group to a new name |
deleteValueGroup | Delete value group | Delete a value group with the specified name |
addValueToGroup | Add value to group | Add a specified value to a specific group |
removeValueFromGroup | Remove value from group | Remove a value from its group to the top level |
Proxy Control
Tool Name | Description | Function |
getWhistleStatus | Get server status | Get the current status information of the Whistle server |
toggleProxy | Enable/disable proxy | Toggle the enabled state of the Whistle proxy |
toggleHttpInterception | Enable/disable HTTP interception | Toggle the enabled state of HTTP request interception |
toggleHttpsInterception | Enable/disable HTTPS interception | Toggle the enabled state of HTTPS request interception |
toggleHttp2 | Enable/disable HTTP2 | Toggle the enabled state of HTTP/2 protocol support |
toggleMultiRuleMode | Enable/disable multi-rule mode | Toggle whether to allow multiple rules to be enabled simultaneously |
Request Management
Tool Name | Description | Function |
getInterceptInfo | Get interception information | Get network request information intercepted by Whistle, with URL filtering and regex support |
replayRequest | Replay request | Resend a specified network request with customizable parameters |
Utility
Tool Name | Description | Function |
getCurrentTimestamp | Get current timestamp | Get the current local timestamp |
Contact Information
Email: gz7gugu@qq.com
Blog: https://7gugu.com
Appeared in Searches
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/7gugu/whistle-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server