Skip to main content
There are two ways to use Prowler MCP Server:

Option 1: Managed by Prowler

No installation required - Just configurationUse https://mcp.prowler.com/mcp

Option 2: Run Locally

Local installation - Full controlInstall via Docker, PyPI, or source code
For “Option 1: Managed by Prowler”, go directly to the Configuration Guide to set up your Claude Desktop, Cursor, or other MCP client. This guide is focused on local installation, “Option 2: Run Locally”.

Installation Methods

Choose one of the following installation methods:

Command Line Options

The Prowler MCP Server supports the following command-line arguments:
prowler-mcp [--transport {stdio,http}] [--host HOST] [--port PORT]
ArgumentValuesDefaultDescription
--transportstdio, httpstdioTransport method for MCP communication
--hostAny valid hostname/IP127.0.0.1Host to bind to (HTTP mode only)
--portPort number8000Port to bind to (HTTP mode only)

Examples

# Default STDIO mode for local MCP client integration
prowler-mcp

# Explicit STDIO mode
prowler-mcp --transport stdio

# HTTP mode on default host and port (127.0.0.1:8000)
prowler-mcp --transport http

# HTTP mode accessible from any network interface
prowler-mcp --transport http --host 0.0.0.0

# HTTP mode with custom port
prowler-mcp --transport http --host 0.0.0.0 --port 8080

Environment Variables

Configure the server using environment variables:
VariableDescriptionRequiredDefault
PROWLER_APP_API_KEYProwler API keyOnly for STDIO mode-
PROWLER_API_BASE_URLCustom Prowler API endpointNohttps://api.prowler.com
PROWLER_MCP_TRANSPORT_MODEDefault transport mode (overwritten by --transport argument)Nostdio
export PROWLER_APP_API_KEY="pk_your_api_key_here"
export PROWLER_API_BASE_URL="https://api.prowler.com"
export PROWLER_MCP_TRANSPORT_MODE="http"
Never commit your API key to version control. Use environment variables or secure secret management solutions.

Using Environment Files

For convenience, create a .env file in the mcp_server directory:
.env
PROWLER_APP_API_KEY=pk_your_api_key_here
PROWLER_API_BASE_URL=https://api.prowler.com
PROWLER_MCP_TRANSPORT_MODE=stdio
When using Docker, pass the environment file:
docker run --rm --env-file .env -it prowler-mcp

Running from Any Location

Run the MCP server from anywhere using uvx:
uvx /path/to/prowler/mcp_server/
This is particularly useful when configuring MCP clients that need to launch the server from a specific path.

Production Deployment

For production deployments that require customization, it is recommended to use the ASGI application that can be found in prowler_mcp_server.server. This can be run with uvicorn:
uvicorn prowler_mcp_server.server:app --host 0.0.0.0 --port 8000
For more details on production deployment options, see the FastMCP production deployment guide and uvicorn settings.

Entrypoint Script

The source tree includes entrypoint.sh to simplify switching between the standard CLI runner and the ASGI app. The first argument selects the mode and any additional flags are passed straight through:
# Default CLI experience (prowler-mcp console script)
./entrypoint.sh main --transport http --host 0.0.0.0

# ASGI app via uvicorn
./entrypoint.sh uvicorn --host 0.0.0.0 --port 9000
Omitting the mode defaults to main, matching the prowler-mcp console script. When uvicorn mode is selected, the script exports PROWLER_MCP_TRANSPORT_MODE=http automatically. This is the default entrypoint for the Docker container.

Next Steps

Now that you have the Prowler MCP Server installed, proceed to configure your MCP client:

Getting Help

If you encounter issues during installation: