
خادم MCP لنمذجة التهديدات القائمة على STRIDE المنظمة مع التحقق التلقائي من الكود، وتحليل السياق التجاري، وتوليد تقارير شاملة بتنسيقي Markdown وJSON.
خادم بروتوكول سياق النموذج (MCP) لنمذجة التهديدات الشاملة مع التحقق الموجّه من الشيفرة.
يوفر هذا الخادم أدوات لنمذجة التهديدات، بما في ذلك تحليل سياق الأعمال، وتحليل البنية المعمارية، وتحليل الجهات الفاعلة للتهديد، وتحليل حدود الثقة، وتحليل تدفق الأصول، والتحقق من أمان الشيفرة، وإنشاء تقارير شاملة.
يستدعي خادم MCP هذا نموذج اللغة الكبير (LLM) الخاص بالوكيل الموجود بدلاً من إجراء استدعاء API خارجي أو اتصال شبكي إلى خدمة مختلفة. وهو يعتمد على نموذج اللغة الكبير الخاص بالعميل الموجود، والذي قد يكون Amazon-Q أو Kiro أو Cline.
يمتلك خادم MCP لنمذجة التهديدات هذا ثلاث وظائف رئيسية:
كما يمتلك أدوات لإنشاء تقرير نهائي بصيغتي Markdown وJSON القابلة للتصدير.
.threatmodel، لكن تلك اللقطات لا تُحمَّل تلقائياً في جلسة لاحقة.ملاحظة: قبل استخدام هذه المطالبات، يجب عليك أولاً إكمال عملية التثبيت لإعداد خادم MCP.
"Threat model this project using the threat modeling MCP Server"
إن التحديد الواضح في الموجّه (prompt) لاستخدام خادم MCP لنمذجة التهديدات سيضمن أن يتبع العميل (Cline/Kiro/etc) المراحل والمنهجية الدقيقة بدلاً من سلوك مسار مختصر وإدخال هلوسة في النتائج.
"Threat model this subfolder using the threat modeling MCP Server"
تشغيله على مجلد فرعي يحدّ من نطاق التحليل المقصود. لحفظ الصادرات هناك، اطلب مسار إخراج داخل ذلك المجلد الفرعي؛ لا يُستنتج موقع التصدير تلقائيًا من نطاق التحليل.
"Save the threat model report"
"Please complete all the phases in the threat model plan and then generate the final report."
"Threat model this project using the threat model MCP server and consider this architecture_image.png attached for this review"
"Can you see if you can implement mitigation controls in the code based on the threats reported in the threat model"
"Can you updated the threat model based on the code fixes which mitigated the reported threats"
# Set up context
"Set business context for an e-commerce payment system"
# Add architecture
"Add a web server component using AWS EC2"
"Add a database component using AWS RDS"
# Identify threats
"Add a threat where an attacker with network access performs SQL injection"
# Add mitigations
"Add a mitigation for input validation"
# Export results
"Export the threat model to my_model.tc.json"
قبل تثبيت Threat Modeling MCP Server، تأكد من توفر المتطلبات التالية:
uvx من Astral أو من GitHub README
uvx --versionبمجرد تثبيت uvx والتحقق من أنه يعمل، أضف التكوين أدناه إلى ملف التكوين mcp.json الخاص بك. اعتمادًا على نوع العميل الذي تستخدمه (kiro/cline/amazon-q)، سيختلف موقع ملف mcp.json هذا. بمجرد إضافة التكوين وإعادة تشغيل IDE الخاص بك، سيتم تثبيت Threat Modeling MCP Server تلقائيًا مباشرةً من مستودع GitHub هذا باستخدام uvx.
ملاحظة: الأدوات التي يستخدمها خادم mcp هذا لنمذجة التهديدات مضافة بالفعل إلى
autoApproveلتسهيل تجربة المستخدم، مما يتيح التشغيل السلس دون مطالبات موافقة يدوية لكل استدعاء أداة. جميع الأدوات داخلية بالنسبة للخادم ولا تجري استدعاءات API خارجية. إذا كنت ترغب في مراجعة كل أداة من الأدوات والموافقة عليها عند كل استدعاء، فستحتاج إلى استبدال مصفوفة autoApprove بهذا:"autoApprove": []
أضف ما يلي إلى تكوين عميل MCP الخاص بك:
لـ Amazon Q (~/.aws/amazonq/mcp.json):
{
"mcpServers": {
"threat-modeling-mcp-server": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/awslabs/threat-modeling-mcp-server.git",
"threat-modeling-mcp-server"
],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR"
},
"disabled": false,
"autoApprove": ["manage_workflow","export_threat_model","manage_system_context","manage_assumptions","manage_architecture","manage_threat_actors","manage_trust_boundaries","manage_asset_flows","manage_threats","inspect_data_models","manage_code_validation"]
}
}
}
لـ VSCode Cline:
{
"mcpServers": {
"threat-modeling-mcp-server": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/awslabs/threat-modeling-mcp-server.git",
"threat-modeling-mcp-server"
],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR"
},
"disabled": false,
"autoApprove": ["manage_workflow","export_threat_model","manage_system_context","manage_assumptions","manage_architecture","manage_threat_actors","manage_trust_boundaries","manage_asset_flows","manage_threats","inspect_data_models","manage_code_validation"],
"timeout": 60,
"type": "stdio"
}
}
}