check_compliance
Verify cloud infrastructure meets security compliance standards like CIS, SOC2, PCI-DSS, and HIPAA across AWS, Azure, and GCP providers.
Instructions
Check compliance with security standards (CIS, SOC2, etc.)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| provider | Yes | Cloud provider | |
| standard | No | Compliance standard | general |
Implementation Reference
- src/tools/security.ts:126-154 (handler)The core handler logic for the 'check_compliance' tool. It extracts the standard parameter, constructs a ComplianceCheck object with sample findings, and returns a formatted response using Formatters.formatComplianceCheck.case 'check_compliance': { const standard = (params.standard as string) || 'general'; const complianceCheck: ComplianceCheck = { provider, standard, compliant: false, findings: [ { rule: 'Encryption at rest enabled', status: 'fail', description: 'Some resources do not have encryption enabled', }, { rule: 'Public access restricted', status: 'warning', description: 'Some resources may have public access', }, { rule: 'MFA enabled', status: 'pass', description: 'Multi-factor authentication is configured', }, ], score: 65, }; return Formatters.formatComplianceCheck(complianceCheck); }
- src/tools/security.ts:25-45 (schema)The tool schema definition for 'check_compliance', including name, description, and inputSchema specifying required 'provider' and optional 'standard'.{ name: 'check_compliance', description: 'Check compliance with security standards (CIS, SOC2, etc.)', inputSchema: { type: 'object', properties: { provider: { type: 'string', enum: ['aws', 'azure', 'gcp'], description: 'Cloud provider', }, standard: { type: 'string', enum: ['cis', 'soc2', 'pci-dss', 'hipaa', 'general'], description: 'Compliance standard', default: 'general', }, }, required: ['provider'], }, },
- src/server.ts:19-27 (registration)Registration of all MCP tools by combining arrays from various modules, including securityTools which contains the 'check_compliance' tool schema.const allTools = [ ...awsTools, ...azureTools, ...gcpTools, ...resourceManagementTools, ...costAnalysisTools, ...monitoringTools, ...securityTools, ];
- src/server.ts:76-77 (registration)Tool call dispatching logic that routes requests for security tools (matching names in securityTools) to the handleSecurityTool function.} else if (securityTools.some((t) => t.name === name)) { result = await handleSecurityTool(name, args || {});