Imperva Cloud WAF MCP Server
OfficialClick 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., "@Imperva Cloud WAF MCP ServerList all ACL policies for my production sites"
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.
Imperva Cloud WAF MCP Server (Beta)
A Model Context Protocol (MCP) server that enables AI assistants like Claude to interact with Imperva Cloud WAF. This integration allows you to query, analyze, and manage your Cloud WAF configuration through natural language conversations.
Note: This is a beta version with read-only capabilities. Write operations are not yet supported.
What is MCP?
The Model Context Protocol (MCP) is an open standard that enables AI assistants to securely connect to external data sources and tools. Think of it as a universal adapter that lets Claude and other AI assistants interact with your services.
Related MCP server: Cloudflare MCP Server
Why Use This?
Managing Cloud WAF configurations often requires:
Navigating through multiple dashboards and interfaces
Running complex API queries with specific filters
Understanding relationships between sites, domains, policies, and rules
Analyzing security configurations across multiple accounts
With this MCP server, you can ask your AI assistant questions like:
"Show me all the security rules for my production site"
"Which sites are using the WAF policy named 'strict-security'?"
"List all domains that have rate limiting rules configured"
"What's the current configuration of site ID 12345?"
Your AI assistant will use the MCP tools to fetch the information and present it in a clear, conversational format.
Available Tools
The server provides four powerful tools for Cloud WAF management:
Beta Scope
Read-Only Scope
This beta is designed for inspection and analysis, operating in read-only mode.
While you can comprehensively query and explore your configurations, creating, modifying, or deleting assets (policies, rules, sites, or domains) is not currently supported through this MCP server.
For write operations, please use the Imperva Cloud WAF Console.
These capabilities may be added in future releases. For now, use the Imperva Cloud WAF Console to perform write operations.
Beta Feedback - We Need Your Input!
This is a beta release, and your feedback will shape future development.
What we're looking to learn:
Which queries do you run most frequently?
What configuration tasks would you want your AI assistant to help with?
What features would save you the most time?
What's confusing or unclear?
Please share your feedback by opening an issue on GitHub or contacting your Imperva representative.
Installation
Choose your preferred AI assistant to get started:
Option 1: Claude Desktop
Prerequisites
Claude Desktop - Download here
Docker Desktop - Required to run the MCP server
Imperva Cloud WAF API Credentials
API ID and API Key with appropriate permissions
Contact Imperva Support to obtain credentials
Configuration
Locate your Claude Desktop configuration file:
# macOS/Linux ~/Library/Application Support/Claude/claude_desktop_config.json # Windows %APPDATA%\Claude\claude_desktop_config.jsonIf the file doesn't exist, create it:
# macOS/Linux mkdir -p ~/Library/Application\ Support/Claude touch ~/Library/Application\ Support/Claude/claude_desktop_config.json # Windows (PowerShell) New-Item -Path "$env:APPDATA\Claude\claude_desktop_config.json" -ItemType File -ForceAdd the MCP server configuration, replacing
YOUR_API_IDandYOUR_API_KEYwith your actual Imperva credentials:{ "mcpServers": { "imperva-cloudwaf": { "command": "docker", "args": [ "run", "--rm", "--pull", "always", "-i", "-e", "API_ID=YOUR_API_ID", "-e", "API_KEY=YOUR_API_KEY", "ghcr.io/thalesgroup/imperva-cloud-waf-mcp-server:latest" ] } } }If you already have other MCP servers configured, add the
imperva-cloudwafblock inside the existingmcpServersobject.
Restart Claude Desktop.
Verification
After restarting Claude Desktop, the application should start without errors. Within a few seconds, the Imperva Cloud WAF tools will appear in the MCP tools section.
Option 2: VS Code with GitHub Copilot
Prerequisites
Visual Studio Code - Download here
GitHub Copilot - Install the GitHub Copilot extension and ensure you have an active subscription
Docker Desktop - Required to run the MCP server
Imperva Cloud WAF API Credentials
API ID and API Key with appropriate permissions
Contact Imperva Support to obtain credentials
Configuration
Open VS Code and launch the Command Palette:
macOS:
Command + Shift + PWindows/Linux:
Ctrl + Shift + P
Type
MCPand select MCP: Add ServerWhen prompted, select Command (Stdio) as the server type
Enter the following command, replacing
YOUR_API_IDandYOUR_API_KEYwith your actual Imperva credentials:docker run --rm --pull always -i -e API_ID=YOUR_API_ID -e API_KEY=YOUR_API_KEY ghcr.io/thalesgroup/imperva-cloud-waf-mcp-server:latestGive the server a name when prompted (e.g.,
Imperva)VS Code will open the
mcp.jsonconfiguration file showing all your MCP servers. Find the Imperva entry and wait for its status to change to RunningThis may take a few minutes while Docker downloads the image
Verification
Once the server status shows Running in the mcp.json file, open GitHub Copilot and test the connection by asking:
How many sites are there under my account in Imperva?Copilot should use the Imperva MCP server to fetch and display your Cloud WAF sites.
Usage Examples
Once configured, you can interact with your Cloud WAF account through natural language:
Example 1: Querying Sites
You: Show me all active sites in my account
Your AI assistant will use the get_sites_tool to fetch and display
your sites with their current status, CNAMEs, and configuration details.Example 2: Checking Domain Configuration
You: What's the DNS configuration for my domain example.com?
Your AI assistant will use the get_domains_tool to find the domain and show you
the A records, CNAME, and current status.Example 3: Analyzing Security Policies
You: List all WAF policies that are assigned to site ID 12345
Your AI assistant will use the get_policies_tool to retrieve policies
filtered by site ID and policy type, showing you their settings and configurations.Example 4: Reviewing Security Rules
You: Show me all rate limiting rules for my production sites
Your AI assistant will use the get_rules_tool with the "Rates" category filter
to display rate limiting rules and their configurations.Example 5: Complex Analysis
You: Compare the security policies between my staging and production sites
Your AI assistant will fetch policies for both sites using the appropriate filters and
provide a comparison of their configurations.Authentication
The MCP server supports API Key authentication. Your credentials are passed securely through environment variables and are never stored or logged by the MCP server.
Troubleshooting
Server Not Appearing
For Claude Desktop:
Verify Docker Desktop is running
Check that your
claude_desktop_config.jsonis valid JSONEnsure API credentials are correctly set
Restart Claude Desktop completely
Check Claude Desktop logs for error messages
For VS Code with GitHub Copilot:
Verify Docker Desktop is running
Check that the
mcp.jsonfile was created correctlyEnsure API credentials are correctly set in the command
Wait for the server status to show "Running" (may take a few minutes)
Restart VS Code if the server doesn't appear
Authentication Errors
Verify your API ID and API Key are correct
Ensure your API credentials have the necessary permissions
Check that your credentials haven't expired
Connection Issues
Verify you have internet connectivity
Check if Docker can pull and run images
Ensure no firewall is blocking Docker or your AI assistant application
Tool Errors from the MCP Server
If you start receiving errors from the MCP tools, you may be running an outdated version of the MCP server.
Since the Docker configuration uses --pull always, simply restarting your AI assistant application will automatically pull the latest Docker image.
For Claude Desktop: Fully quit the application (ensure the process is completely killed) before restarting to ensure the old container is removed and a fresh one starts with the latest version.
For VS Code: Close and reopen VS Code, or use the Command Palette to reload the MCP server configuration.
Development
Running Locally
For development or testing, you can run the server directly with Python:
Clone the repository
Install dependencies:
curl -LsSf https://astral.sh/uv/install.sh | sh uv syncCreate a
.envfile:API_ID=your_api_id API_KEY=your_api_keyRun the server:
uv run python -m cwaf_external_mcp.server
Running Tests
pytest tests/Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the Apache License - see the LICENSE file for details.
Warning All the requirements listed have their own License.
Support
For issues related to:
This MCP server: Open an issue on GitHub
Imperva Cloud WAF API: Contact Imperva Support
Claude Desktop: Visit Claude Help Center
Learn More
Built with FastMCP and powered by the Imperva Cloud WAF API.
Maintenance
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/ThalesGroup/imperva-cloud-WAF-MCP-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server