create_threat_model
Create a new threat model to identify and document potential security risks in your system architecture.
Instructions
Create a new threat model
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| collection_id | Yes | ||
| description | No | ||
| other_properties | Yes |
Implementation Reference
- src/devici_mcp_server/server.py:105-117 (handler)The handler function decorated with @mcp.tool(), implementing the core logic for the create_threat_model tool. It constructs the threat model data from parameters and calls the API client to create it.@mcp.tool() async def create_threat_model(name: str, collection_id: str, description: str = None, **other_properties) -> str: """Create a new threat model""" async with create_client_from_env() as client: threat_model_data = { "name": name, "collection_id": collection_id } if description: threat_model_data["description"] = description threat_model_data.update(other_properties) result = await client.create_threat_model(threat_model_data) return str(result)
- src/devici_mcp_server/server.py:105-105 (registration)The @mcp.tool() decorator registers the create_threat_model function as an MCP tool.@mcp.tool()
- Supporting method in the API client that performs the HTTP POST request to the Devici API to create the threat model.async def create_threat_model(self, threat_model_data: Dict[str, Any]) -> Dict[str, Any]: """Create new threat model.""" return await self._make_request("POST", "/threat-models", json_data=threat_model_data)