Threat Modeling MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FASTMCP_LOG_LEVEL | No | Log level for the FastMCP server. The provided MCP client configuration examples set this to "ERROR". | ERROR |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
# Threat Modeling MCP Server
This server provides tools for threat modeling.
## Usage
### Workflow
- `manage_workflow`: Describe, plan, get phase guidance/status/progress, set the project directory, and advance phases
- `export_threat_model`: Export strict Threat Composer JSON (.tc.json) and Markdown under the selected project's .threatmodel; by default also a separate non-importable .extended.json server-state snapshot. Uses a timestamped filename when no path is supplied
### System Context
- `manage_system_context`: Describe, plan, set, get/list, add/update/delete, validate, and clear business context plus software, data asset, user persona, and NFR profiles
### Domain Managers
- `manage_assumptions`: Describe, add, update, list, get, and delete assumptions
- `manage_architecture`: Manage component/data-store nodes, their connections, architecture planning, and clearing
- `manage_threat_actors`: Manage, assess, analyze, reset, and clear threat actors
- `manage_trust_boundaries`: Manage zones, crossing points, boundaries, relationships, plans, and clearing
- `manage_asset_flows`: Manage assets and flows
- `manage_threats`: Manage threats, mitigations, links, and residual-risk assessments
### Data Model Types
- `inspect_data_models`: List available enum models or inspect one model's accepted values
### Code Validation
- `manage_code_validation`: Describe, record, inspect, validate, report, or clear evidence-based Phase 7.5 findingsCapabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| manage_workflowC | Plan, guide, inspect, configure, or advance the workflow. |
| export_threat_modelC | Export strict Threat Composer JSON and Markdown plus a state summary. |
| manage_system_contextB | Manage all Phase 1 business context and classification profiles. Start with action="describe" to get the payload contract without loading every taxonomy field into this tool schema. A complete Phase 1 context can be submitted in one call with action="set", section="all". Values are checked by the canonical enum validators and Pydantic profile models. |
| manage_assumptionsD | Manage assumptions through one compact action-based tool. |
| manage_architectureC | Manage architecture components, connections, and data stores. |
| manage_threat_actorsC | Manage threat actors and run the actor analysis. |
| manage_trust_boundariesC | Manage zones, crossing points, boundaries, and their relationships. |
| manage_asset_flowsC | Manage assets and the flows that carry them. |
| manage_threatsC | Manage threats, mitigations, and their links. |
| inspect_data_modelsA | List enum models or inspect the accepted values for one model. |
| manage_code_validationA | Record and report evidence-based Phase 7.5 code validation. Start with action="describe" for the finding contract. The tool does not inspect source code; it validates findings, updates statuses atomically, tracks complete coverage, and renders the final report. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 11 tools
Each tool targets a distinct threat-modeling domain or lifecycle action: assumptions, workflow orchestration, system context, architecture, actors, trust boundaries, asset flows, threats/mitigations, code validation, data-model inspection, and export. The manage_* tools share a verb but have clearly separate nouns and descriptions, so an agent should not confuse them.
All tool names use snake_case and a consistent verb_noun pattern: manage_*, inspect_data_models, and export_threat_model. The repetition of manage_* is predictable rather than confusing.
Eleven tools is well-scoped for a threat-modeling workflow. The count reflects distinct lifecycle phases and entities without obvious redundancy or missing operations.
The surface covers the full threat-modeling lifecycle: assumptions, workflow, business context, architecture, actors, trust boundaries, asset flows, threats and mitigations, code validation, data-model inspection, and export. There are no obvious dead ends for the stated domain.