CISO Assistant Bootstrap
Guide users through CISO Assistant initial setup using MCP server tools.
Prerequisites
Before starting:
Verify MCP server connectivity - Check that ciso-assistant MCP server is available in your tools. Test with:
get_folders() # Should return a list of folders
If MCP tools are not available:
- Ask user to verify MCP server is configured in their Claude Code settings
- Check
.mcp.json or MCP configuration includes ciso-assistant server
- Ensure
API_URL and TOKEN environment variables are set
- As a last resort, fall back to direct API calls (see Fallback section)
Backend must be running - CISO Assistant backend at the configured API_URL
Bootstrap Flow
Always use MCP tools as the primary method. They provide:
- Automatic name-to-ID resolution (no need to track UUIDs)
- Better error handling with guidance
- Consistent response formatting
1. Gather Information
Ask the user about:
Organization Structure
- Domain name(s) and hierarchy (e.g., "IT Security", "Compliance", "Operations")
- Perimeter(s) for each domain (assessment scopes)
Focus Area
- Compliance-focused (framework audits)
- Risk-focused (risk assessments)
- Both
Industry (for framework recommendations)
- See references/frameworks-by-industry.md for mapping
Risk Assessment Type (if risk-focused or both)
- Qualitative (matrix-based): most common approach, uses probability/impact scales (3x3, 4x4, 5x5)
- Quantitative: advanced monetary modeling with distributions, Monte Carlo simulations
Assets
- Primary assets (PR): core business assets (data, applications, processes)
- Supporting assets (SP): infrastructure supporting primary assets
Third Parties (if applicable)
- Critical vendors/suppliers (entities)
- Solutions they provide
- Criticality level (0-4)
2. Create Resources via MCP (Order Matters)
Execute MCP tools in this order:
1. create_folder(name, description)
└─ 2. create_perimeter(name, description, folder)
└─ 3. create_asset(name, description, asset_type, folder)
└─ 4. import_stored_library(library_urn)
└─ 5a. create_risk_assessment(name, risk_matrix, perimeter)
└─ 5b. create_compliance_assessment(name, framework, perimeter)
└─ 6. create_entity(name, folder, ...)
└─ 7. create_solution(name, provider_entity, criticality, assets)
Note: MCP tools accept names directly (e.g., folder="My Domain") - no need to look up IDs first.
3. Key MCP Tools
Organization:
create_folder(name, description, parent_folder) - Create domain
create_perimeter(name, description, folder) - Create assessment scope
Assets:
create_asset(name, description, asset_type, folder) - asset_type: "PR" or "SP"
Frameworks:
get_stored_libraries(object_type="framework") - List available frameworks
import_stored_library(library_urn) - Load framework (e.g., "urn:intuitem:risk:library:iso27001-2022")
Risk Assessment (Qualitative):
get_risk_matrices() - List available matrices
create_risk_assessment(name, risk_matrix, perimeter) - Create assessment
Risk Assessment (Quantitative):
create_quantitative_risk_study(name, distribution_model, loss_threshold, ...) - Create study
Compliance:
create_compliance_assessment(name, framework, perimeter) - Create audit
TPRM:
create_entity(name, folder, description, country, currency, default_dependency, default_maturity, default_trust) - Create vendor
create_solution(name, provider_entity, criticality, assets) - Create service
create_representative(email, entity, first_name, last_name, role) - Create contact
4. Example Bootstrap Session
User: "I want to set up CISO Assistant for my healthcare startup"
1. Verify MCP connectivity:
get_folders() # Confirm MCP server responds
2. Ask clarifying questions:
- "What domains do you need? (e.g., IT, Compliance, Operations)"
- "Are you focused on compliance, risk management, or both?"
- "Do you prefer qualitative (matrix-based) or quantitative risk assessment?"
- "What are your critical assets? (applications, databases, etc.)"
- "Do you have critical third-party vendors to track?"
3. Based on healthcare industry, recommend:
- HIPAA-related frameworks
- ISO 27001:2022
- NIST CSF 2.0
4. Create resources via MCP tools:
create_folder("HealthTech Corp", "Main organization domain")
create_perimeter("Production Environment", "Production systems scope", folder="HealthTech Corp")
create_asset("Patient Portal", "Main patient-facing application", "PR", folder="HealthTech Corp")
create_asset("AWS Infrastructure", "Cloud hosting", "SP", folder="HealthTech Corp")
import_stored_library("urn:intuitem:risk:library:iso27001-2022")
create_compliance_assessment("ISO 27001 Audit 2025", framework="ISO 27001:2022", perimeter="Production Environment")
create_entity("AWS", folder="HealthTech Corp", description="Cloud provider")
create_solution("Cloud Hosting", provider_entity="AWS", criticality=3, assets=["AWS Infrastructure"])
Risk Matrix Selection
For qualitative assessments, help user choose:
| Matrix |
Use Case |
| 3x3 |
Simple, quick assessments |
| 4x4 |
Balanced granularity |
| 5x5 |
Detailed, enterprise-grade |
Use get_risk_matrices() to list available options.
Validation
After setup, verify with MCP tools:
get_folders() - Confirm domains created
get_perimeters(folder) - Confirm scopes
get_assets(folder) - Confirm assets
get_loaded_libraries() - Confirm frameworks loaded
get_entities(folder) - Confirm third parties
Fallback: Direct API Calls
Only use if MCP tools are unavailable. Requires manual UUID tracking.
Read token from .mcp.json or ask user for it, then:
# Create folder
curl -X POST "http://localhost:8000/api/folders/" \
-H "Authorization: Token <TOKEN>" \
-H "Content-Type: application/json" \
-d '{"name": "My Domain", "description": "..."}'
# Create perimeter (requires folder UUID from previous response)
curl -X POST "http://localhost:8000/api/perimeters/" \
-H "Authorization: Token <TOKEN>" \
-H "Content-Type: application/json" \
-d '{"name": "common", "folder": "<folder_uuid>"}'
# Similar pattern for other endpoints:
# POST /api/assets/
# POST /api/stored-libraries/<urn>/import/
# POST /api/risk-assessments/
# POST /api/compliance-assessments/
# POST /api/entities/
# POST /api/solutions/
1---2name: ciso-assistant-bootstrap3description: Bootstrap CISO Assistant for new users by guiding them through initial setup. Use when: (1) User wants to set up CISO Assistant from scratch (2) User mentions "bootstrap", "initial setup", "getting started", or "onboarding" with CISO Assistant (3) User needs help creating their organizational structure, loading frameworks, or configuring risk assessments Covers: domains/folders, perimeters, industry-based framework selection, assets, risk assessment type (qualitative vs quantitative), third-party entities and solutions, and compliance vs risk focus.4---5
6# CISO Assistant Bootstrap
7
8Guide users through CISO Assistant initial setup using MCP server tools.
9
10## Prerequisites
11
12Before starting:
13
141. **Verify MCP server connectivity** - Check that `ciso-assistant` MCP server is available in your tools. Test with:
15 ```
16 get_folders() # Should return a list of folders
17 ```
18
192. **If MCP tools are not available:**
20 - Ask user to verify MCP server is configured in their Claude Code settings
21 - Check `.mcp.json` or MCP configuration includes `ciso-assistant` server
22 - Ensure `API_URL` and `TOKEN` environment variables are set
23 - As a last resort, fall back to direct API calls (see Fallback section)
24
253. **Backend must be running** - CISO Assistant backend at the configured `API_URL`
26
27## Bootstrap Flow
28
29**Always use MCP tools as the primary method.** They provide:
30- Automatic name-to-ID resolution (no need to track UUIDs)
31- Better error handling with guidance
32- Consistent response formatting
33
34### 1. Gather Information
35
36Ask the user about:
37
38**Organization Structure**
39- Domain name(s) and hierarchy (e.g., "IT Security", "Compliance", "Operations")
40- Perimeter(s) for each domain (assessment scopes)
41
42**Focus Area**
43- Compliance-focused (framework audits)
44- Risk-focused (risk assessments)
45- Both
46
47**Industry** (for framework recommendations)
48- See [references/frameworks-by-industry.md](references/frameworks-by-industry.md) for mapping
49
50**Risk Assessment Type** (if risk-focused or both)
51- Qualitative (matrix-based): most common approach, uses probability/impact scales (3x3, 4x4, 5x5)
52- Quantitative: advanced monetary modeling with distributions, Monte Carlo simulations
53
54**Assets**
55- Primary assets (PR): core business assets (data, applications, processes)
56- Supporting assets (SP): infrastructure supporting primary assets
57
58**Third Parties** (if applicable)
59- Critical vendors/suppliers (entities)
60- Solutions they provide
61- Criticality level (0-4)
62
63### 2. Create Resources via MCP (Order Matters)
64
65Execute MCP tools in this order:
66
67```
681. create_folder(name, description)
69 └─ 2. create_perimeter(name, description, folder)
70 └─ 3. create_asset(name, description, asset_type, folder)
71 └─ 4. import_stored_library(library_urn)
72 └─ 5a. create_risk_assessment(name, risk_matrix, perimeter)
73 └─ 5b. create_compliance_assessment(name, framework, perimeter)
74 └─ 6. create_entity(name, folder, ...)
75 └─ 7. create_solution(name, provider_entity, criticality, assets)
76```
77
78**Note:** MCP tools accept names directly (e.g., `folder="My Domain"`) - no need to look up IDs first.
79
80### 3. Key MCP Tools
81
82**Organization:**
83- `create_folder(name, description, parent_folder)` - Create domain
84- `create_perimeter(name, description, folder)` - Create assessment scope
85
86**Assets:**
87- `create_asset(name, description, asset_type, folder)` - asset_type: "PR" or "SP"
88
89**Frameworks:**
90- `get_stored_libraries(object_type="framework")` - List available frameworks
91- `import_stored_library(library_urn)` - Load framework (e.g., "urn:intuitem:risk:library:iso27001-2022")
92
93**Risk Assessment (Qualitative):**
94- `get_risk_matrices()` - List available matrices
95- `create_risk_assessment(name, risk_matrix, perimeter)` - Create assessment
96
97**Risk Assessment (Quantitative):**
98- `create_quantitative_risk_study(name, distribution_model, loss_threshold, ...)` - Create study
99
100**Compliance:**
101- `create_compliance_assessment(name, framework, perimeter)` - Create audit
102
103**TPRM:**
104- `create_entity(name, folder, description, country, currency, default_dependency, default_maturity, default_trust)` - Create vendor
105- `create_solution(name, provider_entity, criticality, assets)` - Create service
106- `create_representative(email, entity, first_name, last_name, role)` - Create contact
107
108### 4. Example Bootstrap Session
109
110```
111User: "I want to set up CISO Assistant for my healthcare startup"
112
1131. Verify MCP connectivity:
114 get_folders() # Confirm MCP server responds
115
1162. Ask clarifying questions:
117 - "What domains do you need? (e.g., IT, Compliance, Operations)"
118 - "Are you focused on compliance, risk management, or both?"
119 - "Do you prefer qualitative (matrix-based) or quantitative risk assessment?"
120 - "What are your critical assets? (applications, databases, etc.)"
121 - "Do you have critical third-party vendors to track?"
122
1233. Based on healthcare industry, recommend:
124 - HIPAA-related frameworks
125 - ISO 27001:2022
126 - NIST CSF 2.0
127
1284. Create resources via MCP tools:
129 create_folder("HealthTech Corp", "Main organization domain")
130 create_perimeter("Production Environment", "Production systems scope", folder="HealthTech Corp")
131 create_asset("Patient Portal", "Main patient-facing application", "PR", folder="HealthTech Corp")
132 create_asset("AWS Infrastructure", "Cloud hosting", "SP", folder="HealthTech Corp")
133 import_stored_library("urn:intuitem:risk:library:iso27001-2022")
134 create_compliance_assessment("ISO 27001 Audit 2025", framework="ISO 27001:2022", perimeter="Production Environment")
135 create_entity("AWS", folder="HealthTech Corp", description="Cloud provider")
136 create_solution("Cloud Hosting", provider_entity="AWS", criticality=3, assets=["AWS Infrastructure"])
137```
138
139## Risk Matrix Selection
140
141For qualitative assessments, help user choose:
142
143| Matrix | Use Case |
144|--------|----------|
145| 3x3 | Simple, quick assessments |
146| 4x4 | Balanced granularity |
147| 5x5 | Detailed, enterprise-grade |
148
149Use `get_risk_matrices()` to list available options.
150
151## Validation
152
153After setup, verify with MCP tools:
154- `get_folders()` - Confirm domains created
155- `get_perimeters(folder)` - Confirm scopes
156- `get_assets(folder)` - Confirm assets
157- `get_loaded_libraries()` - Confirm frameworks loaded
158- `get_entities(folder)` - Confirm third parties
159
160## Fallback: Direct API Calls
161
162**Only use if MCP tools are unavailable.** Requires manual UUID tracking.
163
164Read token from `.mcp.json` or ask user for it, then:
165
166```bash
167# Create folder
168curl -X POST "http://localhost:8000/api/folders/" \
169 -H "Authorization: Token <TOKEN>" \
170 -H "Content-Type: application/json" \
171 -d '{"name": "My Domain", "description": "..."}'
172
173# Create perimeter (requires folder UUID from previous response)
174curl -X POST "http://localhost:8000/api/perimeters/" \
175 -H "Authorization: Token <TOKEN>" \
176 -H "Content-Type: application/json" \
177 -d '{"name": "common", "folder": "<folder_uuid>"}'
178
179# Similar pattern for other endpoints:
180# POST /api/assets/
181# POST /api/stored-libraries/<urn>/import/
182# POST /api/risk-assessments/
183# POST /api/compliance-assessments/
184# POST /api/entities/
185# POST /api/solutions/
186```