diff --git a/Dockerfile b/Dockerfile index 09fb2a4..1a6ecbb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,8 +3,5 @@ WORKDIR /app COPY . . RUN pip install --no-cache-dir -r requirements.txt \ && pip install fastapi uvicorn -EXPOSE 8080 -# Default: run HTTP server -ENTRYPOINT ["uvicorn", "stackhawk_mcp.http_server:app", "--host", "0.0.0.0", "--port", "8080"] -# To run stdio: override entrypoint with -# docker run --entrypoint python ... -m stackhawk_mcp.server \ No newline at end of file + +ENTRYPOINT ["python", "-m", "stackhawk_mcp.server"] \ No newline at end of file diff --git a/README.md b/README.md index 2e9f341..05d15e6 100644 --- a/README.md +++ b/README.md @@ -347,3 +347,5 @@ Workflows are designed to skip jobs if the latest commit is an automated version 2. Select the "Prepare Release" workflow. 3. Click "Run workflow" and choose the desired bump type (minor or major). 4. The workflow will handle the rest! + +[//]: # (mcp-name: stackhawk.com/stackhawk-mcp) \ No newline at end of file diff --git a/server.json b/server.json new file mode 100644 index 0000000..2d4a41b --- /dev/null +++ b/server.json @@ -0,0 +1,31 @@ +{ + "$schema": "https://static.modelcontextprotocol.io/schemas/2025-07-09/server.schema.json", + "name": "stackhawk.com/stackhawk-mcp", + "description": "An MCP server that provides interaction with StackHawk's security scanning platform.", + "status": "active", + "repository": { + "url": "https://github.com/stackhawk/stackhawk-mcp", + "source": "github" + }, + "version": "1.0.0", + "packages": [ + { + "registry_type": "pypi", + "registry_base_url": "https://pypi.org", + "identifier": "stackhawk-mcp", + "version": "1.0.0", + "transport": { + "type": "stdio" + }, + "environment_variables": [ + { + "description": "StackHawk API key", + "is_required": true, + "format": "string", + "is_secret": true, + "name": "STACKHAWK_API_KEY" + } + ] + } + ] +} diff --git a/stackhawk_mcp/server.py b/stackhawk_mcp/server.py index 5810a8f..a08d0cf 100644 --- a/stackhawk_mcp/server.py +++ b/stackhawk_mcp/server.py @@ -1852,7 +1852,7 @@ def _get_stackhawk_scan_instructions(self, config_path: str = "stackhawk.yml") - ``` ## Viewing Results -1. When the scan finishes, you can triage and remediate findings directly from this LLM chat interface—just ask for open issues or help fixing vulnerabilities. +1. When the scan finishes, you can triage and remediate findings directly from this LLM chat interface. Just ask for open issues or help fixing vulnerabilities. 2. You can also check the StackHawk dashboard at https://app.stackhawk.com for a full view of your application and findings. ## Troubleshooting