
Research
Two Malicious Rust Crates Impersonate Popular Logger to Steal Wallet Keys
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
framework-mcp
Advanced tools
Dual-architecture server (MCP + HTTP API) for determining vendor tool capability roles against CIS Controls Framework with intelligent domain validation. Supports Microsoft Copilot custom connectors and DigitalOcean App Services deployment.
A Model Context Protocol (MCP) server that determines vendor tool capability roles (Full Implementation, Partial Implementation, Facilitates, Governance, Validates) against the CIS Controls Framework. This tool helps security professionals accurately categorize vendor capabilities for specific CIS Control safeguards with domain validation and evidence-based assessment.
This MCP server enables security teams to:
Capability Role | Description | Domain Requirements |
---|---|---|
FULL | Complete implementation of safeguard requirements | Must use domain-appropriate tool types (e.g., inventory tools for asset safeguards) |
PARTIAL | Limited scope implementation with clear boundaries | Must use domain-appropriate tool types with explicit scope limitations |
FACILITATES | Enhancement capabilities that enable others to implement safeguards better/faster/stronger | No tool type restrictions - any tool can facilitate |
GOVERNANCE | Policy/process management and oversight capabilities | No tool type restrictions - governance applies across domains |
VALIDATES | Verification capabilities providing evidence and reporting | No tool type restrictions - validation applies across domains |
The server uses the CIS Controls visual framework with color-coded categorization:
npm install -g framework-mcp
npm update -g framework-mcp
Or reinstall to get the latest version:
npm uninstall -g framework-mcp
npm install -g framework-mcp
git clone https://github.com/therealcybermattlee/FrameworkMCP.git
cd FrameworkMCP
npm install
npm run build
# Deploy using the included configuration
doctl apps create .do/app.yaml
railway login
railway up
Connect your GitHub repository and use:
npm install && npm run build
npm run start:http
Deploy to any cloud platform and use the included swagger.json
for Copilot integration.
Add to your MCP configuration file (~/.config/claude-code/mcp.json
):
{
"mcpServers": {
"framework-analyzer": {
"command": "node",
"args": ["/path/to/FrameworkMCP/dist/index.js"],
"env": {}
}
}
}
Deploy the Framework MCP HTTP API to any cloud platform (DigitalOcean, Railway, Render, etc.)
swagger.json
file from this repository/health
endpoint to verify connectivityIn your Copilot, create actions for capability assessment:
Primary Action - Validate Vendor Capability:
Action: Validate Vendor Mapping
Description: Validate vendor capability claims against CIS Controls with domain validation
Connector: Framework MCP Custom Connector
Operation: validateVendorMapping
Parameters:
- vendor_name: {User provided vendor name}
- safeguard_id: {CIS safeguard ID like "1.1"}
- claimed_capability: {full|partial|facilitates|governance|validates}
- supporting_text: {Vendor response text}
Secondary Action - Analyze Response:
Action: Analyze Vendor Response
Description: Determine appropriate capability role for vendor response
Connector: Framework MCP Custom Connector
Operation: analyzeVendorResponse
Parameters:
- vendor_name: {User provided vendor name}
- safeguard_id: {CIS safeguard ID}
- response_text: {Vendor response to analyze}
Once configured, users can interact with your Copilot:
"Validate this vendor capability: CrowdStrike Falcon claims FULL coverage for safeguard 1.1 with this response: 'Our platform provides comprehensive enterprise asset inventory with real-time discovery, automated classification, and continuous monitoring of all hardware and software assets.'"
"Analyze this vendor response for safeguard 5.1: Microsoft Entra ID - 'We provide centralized identity management with automated user provisioning, role-based access controls, and integration with all major business applications.'"
"What are the requirements for CIS safeguard 6.3?"
# For MCP usage
claude-code "List available CIS Control safeguards"
# For HTTP API usage
curl https://your-api-url.com/health
# For Copilot testing
curl -X POST https://your-api-url.com/api/validate-vendor-mapping \
-H "Content-Type: application/json" \
-d '{"vendor_name":"Test Vendor","safeguard_id":"1.1","claimed_capability":"facilitates","supporting_text":"We provide supplemental asset tracking capabilities that enhance existing inventory systems."}'
claude-code "Determine the capability role for this vendor response to safeguard 5.1:
Vendor: SecureIAM Corp
Response: 'Our tool is a full identity provider with comprehensive account management. We maintain detailed user inventories including names, usernames, departments, and access rights. Automated quarterly reviews ensure all accounts are authorized and compliant.'"
claude-code "Validate this implementation capability claim:
Vendor: ComplianceBot
Safeguard: 5.1
Claimed Capability: FULL
Response: 'We provide automated account lifecycle management with real-time inventory tracking and compliance reporting.'"
Create vendors.csv
:
vendor,safeguard,response
VendorA,5.1,"Complete IAM solution with policy management and quarterly reviews"
VendorB,5.1,"Basic user directory with manual account tracking"
VendorC,6.3,"MFA enforcement for all external applications with SSO integration"
claude-code "Determine capability roles for the vendor responses in vendors.csv and provide recommendations"
claude-code "Show me the detailed breakdown of safeguard 5.1 including all sub-elements"
NEW: Validate whether a vendor's stated capability mapping is actually supported by their explanatory text.
claude-code "Validate this vendor capability claim:
Vendor: SecureAssets Corp
Safeguard: 1.1
Claimed Capability: FULL
Supporting Text: 'Our comprehensive asset management platform performs automated discovery of all enterprise devices, maintains detailed hardware and software inventories, tracks ownership and location data, provides real-time asset status monitoring, and includes documented inventory procedures with bi-annual review capabilities.'"
{
"vendor": "SecureIAM Corp",
"safeguardId": "5.1",
"safeguardTitle": "Establish and Maintain an Inventory of Accounts",
"capabilityRole": "full",
"additionalRoles": ["governance", "validates"],
"confidence": 87,
"domainValidation": {
"detectedToolType": "identity_management",
"domainMatch": true,
"capabilityAdjusted": false
},
"evidenceAnalysis": {
"coreRequirements": 85,
"subElements": 75,
"governance": 90,
"languageConsistency": 88
},
"evidence": [
"comprehensive account management",
"detailed user inventories",
"automated quarterly reviews"
]
}
{
"vendor": "SecureAssets Corp",
"safeguard_id": "1.1",
"safeguard_title": "Establish and Maintain a Detailed Enterprise Asset Inventory",
"claimed_capability": "full",
"validation_status": "SUPPORTED",
"confidence_score": 85,
"evidence_analysis": {
"core_requirements_coverage": 100,
"sub_elements_coverage": 47,
"governance_alignment": 80,
"language_consistency": 90
},
"domain_validation": {
"required_tool_type": "inventory",
"detected_tool_type": "inventory",
"domain_match": true,
"capability_adjusted": false
},
"gaps_identified": [],
"strengths_identified": [
"High coverage of core requirements and sub-elements",
"Strong implementation language consistency",
"Appropriate tool type for safeguard domain"
],
"recommendations": [],
"detailed_feedback": "Validation of FULL capability claim: SUPPORTED (85% alignment)\n\nSTRENGTHS:\n⢠High coverage of core requirements and sub-elements\n⢠Strong implementation language consistency\n⢠Appropriate tool type for safeguard domain\n\nASSESSMENT: The vendor's supporting evidence strongly aligns with their claimed capability."
}
{
"vendor": "ThreatIntel Pro",
"safeguard_id": "1.1",
"safeguard_title": "Establish and Maintain a Detailed Enterprise Asset Inventory",
"claimed_capability": "facilitates",
"validation_status": "QUESTIONABLE",
"confidence_score": 45,
"evidence_analysis": {
"core_requirements_coverage": 65,
"sub_elements_coverage": 20,
"governance_alignment": 30,
"language_consistency": 75
},
"domain_validation": {
"required_tool_type": "inventory",
"detected_tool_type": "threat_intelligence",
"domain_match": false,
"capability_adjusted": true,
"original_claim": "full"
},
"gaps_identified": [
"Tool type mismatch: threat_intelligence tools cannot provide FULL coverage for Asset Inventory safeguards"
],
"strengths_identified": [
"Good language consistency in supporting text"
],
"recommendations": [
"Consider repositioning as FACILITATES capability to align with tool type"
],
"detailed_feedback": "DOMAIN VALIDATION: Tool type 'threat_intelligence' cannot provide FULL coverage for safeguard 1.1 (Asset Inventory). Capability automatically adjusted from FULL to FACILITATES.\n\nThe vendor's claim has been downgraded due to domain mismatch, though evidence quality is reasonable for facilitation capabilities."
}
Tool | Description |
---|---|
analyze_vendor_response | Determine vendor tool capability role for specific safeguard |
validate_vendor_mapping | PRIMARY Validate vendor's claimed capability role against supporting evidence with domain validation |
validate_coverage_claim | Validate FULL/PARTIAL implementation capability claims |
get_safeguard_details | Get detailed safeguard breakdown |
list_available_safeguards | List all available CIS safeguards |
[
{
"name": "VendorName",
"safeguard_id": "5.1",
"response": "Vendor response text..."
}
]
vendor,safeguard,response
VendorName,5.1,"Response text..."
Vendor: VendorName - Safeguard: 5.1
Response text here...
Vendor: AnotherVendor - Safeguard: 6.3
Another response...
The validate_vendor_mapping tool provides evidence-based validation of vendor capability claims. This addresses a critical need: vendors often self-assess their capabilities, but practitioners need to verify whether the supporting evidence actually justifies the claimed mapping.
Capability | Requirements | Validation Thresholds |
---|---|---|
FULL | Complete implementation within scope | ā„70% core requirements + ā„40% sub-elements |
PARTIAL | Limited scope with clear boundaries | ā„30% core requirements OR some core + ā„20% sub-elements |
FACILITATES | Enables/enhances implementation | Facilitation language present, no direct implementation claims |
GOVERNANCE | Policy/process management | ā„60% governance elements + policy language |
VALIDATES | Evidence collection & reporting | Audit/monitoring/reporting capabilities present |
CRITICAL: The validation tool enforces domain-specific requirements for capability claims:
Safeguard | Domain | Required Tool Types | Rule |
---|---|---|---|
1.1 | Asset Inventory | inventory, asset_management, cmdb, discovery | Only inventory tools can claim FULL/PARTIAL |
1.2 | Unauthorized Assets | inventory, asset_management, cmdb, discovery | Only inventory tools can claim FULL/PARTIAL |
5.1 | Account Inventory | identity_management, governance | Only identity/governance tools can claim FULL/PARTIAL |
6.3 | External MFA | identity_management | Only identity management tools can claim FULL/PARTIAL |
7.1 | Vulnerability Process | vulnerability_management, governance | Only vulnerability/governance tools can claim FULL/PARTIAL |
Auto-Downgrade Logic: When a tool type doesn't match the safeguard domain:
# Validate a FULL coverage claim (matching domain)
claude-code "Use validate_vendor_mapping for vendor 'AssetMax Pro', safeguard '1.1', claimed capability 'full', with supporting text: 'Our platform provides comprehensive automated discovery, detailed inventory management, and complete asset lifecycle tracking for all enterprise devices including servers, workstations, and network equipment.'"
# Validate a FACILITATES claim
claude-code "Use validate_vendor_mapping for vendor 'ThreatIntel Feed', safeguard '1.1', claimed capability 'facilitates', with supporting text: 'Our threat intelligence service provides supplemental risk data that enriches existing asset management systems, enabling organizations to prioritize asset security based on threat exposure.'"
# Domain mismatch example (auto-downgraded)
claude-code "Use validate_vendor_mapping for vendor 'VulnScanner Pro', safeguard '1.1', claimed capability 'full', with supporting text: 'Our vulnerability scanner performs comprehensive network discovery and maintains detailed device databases with complete visibility into enterprise infrastructure.'"
# Result: Downgraded from FULL to FACILITATES (vulnerability_management ā inventory tool)
# Questionable claim (insufficient evidence)
claude-code "Use validate_vendor_mapping for vendor 'BasicTracker', safeguard '1.1', claimed capability 'full', with supporting text: 'We help track computers and provide some visibility into your IT environment.'"
Complete CIS Controls v8.1 Framework Implementation
git clone https://github.com/therealcybermattlee/FrameworkMCP.git
cd FrameworkMCP
npm install
npm run build
Edit src/index.ts
and add to the CIS_SAFEGUARDS
object:
"X.Y": {
id: "X.Y",
title: "Safeguard Title",
description: "Description...",
implementationGroup: "IG1",
governanceElements: [...], // Orange - MUST be met
coreRequirements: [...], // Green - The "what"
subTaxonomicalElements: [...], // Yellow - Sub-elements
implementationSuggestions: [...], // Gray - Suggestions
// ...
}
npm test
git checkout -b feature/amazing-feature
)git commit -m 'Add amazing feature'
)git push origin feature/amazing-feature
)Permission denied:
chmod +x dist/index.js
Module not found:
npm install
npm run build
MCP server not connecting:
This project is licensed under the Creative Commons Attribution 4.0 International License by Cyber RISE, Inc - see the LICENSE file for details.
You are free to:
Under the following terms:
Built with ā¤ļø for the cybersecurity community by Matt Lee
FAQs
Pure Data Provider architecture serving authentic CIS Controls Framework data via MCP and HTTP API. Empowers LLMs with authoritative safeguards data for analysis. Supports Microsoft Copilot custom connectors and DigitalOcean App Services deployment.
The npm package framework-mcp receives a total of 345 weekly downloads. As such, framework-mcp popularity was classified as not popular.
We found that framework-mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago.Ā It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
Research
A malicious package uses a QR code as steganography in an innovative technique.
Research
/Security News
Socket identified 80 fake candidates targeting engineering roles, including suspected North Korean operators, exposing the new reality of hiring as a security function.