approve_patch
Approve security patches for specific vulnerability issues identified by the ZeroPath MCP Server to address security findings.
Instructions
Approve a patch for a specific vulnerability issue.
Args:
issue_id (str): The ID of the issue whose patch should be approved
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes |
Implementation Reference
- The @mcp.tool()-decorated handler function implementing the approve_patch tool. Validates issue_id, calls ZeroPath API endpoint 'issues/approve-patch', handles response with appropriate success/error messages.@mcp.tool() def approve_patch(issue_id): """ Approve a patch for a specific vulnerability issue. Args: issue_id (str): The ID of the issue whose patch should be approved """ if not issue_id: return "Error: Issue ID is required" response, error = make_api_request("issues/approve-patch", {"issueId": issue_id}) if error: return error if response.status_code == 200: return "Patch approved successfully" elif response.status_code == 401: return "Error: Unauthorized - check API credentials" elif response.status_code == 400: return f"Error: Bad request - {response.text}" else: return f"Error: API returned status {response.status_code}: {response.text}"
- Core helper function called by approve_patch to perform the authenticated POST request to the ZeroPath API.def make_api_request(endpoint, payload=None, include_org=True): """Make authenticated API request to ZeroPath.""" if not token_id or not token_secret: return None, "Error: Zeropath API credentials not found in environment variables" headers = { "X-ZeroPath-API-Token-Id": token_id, "X-ZeroPath-API-Token-Secret": token_secret, "Content-Type": "application/json" } if payload is None: payload = {} if include_org and org_id: payload["organizationId"] = org_id try: response = requests.post( f"{API_BASE_URL}/{endpoint}", headers=headers, json=payload ) return response, None except Exception as e: return None, f"Error: {str(e)}"
- src/zeropath_mcp_server/server.py:76-76 (registration)MCP server instance creation where tools like approve_patch are registered via @mcp.tool() decorators.mcp = FastMCP("Zeropath")