FORTRESS-MCP
FORTRESS-MCP
AIエージェントツール実行のためのゼロトラストセキュリティゲートウェイ
FORTRESS-MCPは、AIエージェントがMCPツールを要求・実行する方法を制御するために設計された、プロバイダーに依存しないゼロトラストセキュリティゲートウェイです。
このプロジェクトは、エージェントの意図と特権ツール実行の間の本番品質のセキュリティ境界を示します。
AIエージェントはアクションを要求することはできても、特権アクションを単独で許可したり実行したりすることはできません。
Related MCP server: mcp-guardian
1. なぜFORTRESS-MCPなのか?
最新のAIエージェントは、ツール、API、ファイルシステム、データベース、外部サービスを呼び出すことができます。セキュリティ上の問題は、もはや次のものだけではなくなりました:
「モデルは正しい回答を生成できるか?」
それは次のようなものでもあります:
「モデルは、どのアクションの実行を許可するかを決定するために信頼できるか?」
FORTRESS-MCPは、以下を分離することでこの問題に対処します:
Agent Intent
↓
Identity
↓
Authentication
↓
Authorization
↓
Policy Decision
↓
Risk Classification
↓
Human Confirmation
↓
Argument Validation
↓
MCP Tool Execution
↓
Auditしたがって、LLMはセキュリティの権威ではありません。
2. プロジェクトの目標
FORTRESS-MCPは、以下を実証するために設計されています:
ゼロトラストAIエージェントツール実行
最小権限の認可
デフォルト拒否のセキュリティ
決定論的なポリシー決定
リスク分類
機密性の高いアクションに対する人間の確認
MCPベースのツール実行
プロンプトインジェクションの封じ込め
ツールと引数の検証
安全な監査ログ
APIセキュリティテスト
エージェントセキュリティ評価
静的セキュリティ分析
本番品質のエンジニアリングプラクティス
このプロジェクトは意図的に次のように設計されています:
業界指向
面接に強い
ポートフォリオにインパクトがある
プロバイダーに依存しない
技術的に深い
理解・保守が十分に簡単
3. 中核となるセキュリティ原則
中心となる設計ルールは次のとおりです:
Agent Intent
≠
Security Decision
≠
Tool Executionエージェントはアクションを要求できます。
FORTRESSは、そのアクションが許可されているかどうかを決定します。
セキュリティゲートが成功した後にのみ、MCPツールを実行できます。
4. 高レベルアーキテクチャ
┌──────────────────────┐
│ STREAMLIT │
│ SECURITY CENTER │
└──────────┬───────────┘
│
▼
┌──────────────────────┐
│ FORTRESS API │
└──────────┬───────────┘
│
▼
┌──────────────────────────────────┐
│ FORTRESS SECURITY │
│ GATEWAY │
│ │
│ Identity │
│ Authentication │
│ Authorization │
│ Policy │
│ Risk │
│ Confirmation │
│ Validation │
│ Audit │
└───────────────┬──────────────────┘
│
▼
┌──────────────────┐
│ MCP GATEWAY │
└────────┬─────────┘
│
┌────────────────────┼────────────────────┐
│ │ │
▼ ▼ ▼
calculator_read weather_lookup update_record
│ │ │
│ ▼ │
│ Open-Meteo │
│ Live API │
│ │
└────────────────────┬────────────────────┘
▼
RESULT
│
▼
AUDIT5. 信頼境界
FORTRESSは明示的な信頼境界を定義します。
エージェント → FORTRESS
エージェントのリクエストは信頼できない入力です。
エージェントは、リクエストを生成したという理由だけで自動的に権限を受け取るわけではありません。
FORTRESS → MCP
許可され検証されたリクエストのみが実行境界を越えることができます。
MCP → 外部ツール
外部実行は制御され、監査可能です。
外部データ → エージェント
外部データは信頼できないデータです。
外部データが認可を許可することは決してありません。
人間の確認
機密性の高い認可は、実際のユーザーインターフェースから発信される必要があります。
LLMは自身のリクエストを確認することはできません。
6. セキュリティ決定パイプライン
保護されたすべての操作は、次の概念的なパイプラインに従います:
1. Receive request
2. Identify requesting agent
3. Authenticate identity
4. Resolve permissions
5. Validate requested tool
6. Validate arguments
7. Evaluate security policy
8. Determine risk
9. Determine confirmation requirement
10. Request external human confirmation if required
11. Re-evaluate authorization
12. Execute MCP tool
13. Record audit event
14. Return result正確な実装は意図的に決定論的です。
7. アイデンティティ
アイデンティティは、操作を要求するアクターを表します。
概念的には:
AgentIdentity
├── agent_id
├── role
├── permissions
├── trust_level
└── session_id認証は次の問いに答えます:
あなたは誰ですか?
認可は次の問いに答えます:
このアクションを実行することを許可されていますか?
これらは意図的に別々の概念です。
8. 権限
FORTRESSは意図的に小さな権限モデルを使用します:
READ
WRITE
SENSITIVEこれは、不要なエンタープライズIAMの複雑さを導入することなく、最小権限を実証するのに十分です。
9. ポリシー決定
ポリシーレイヤーは、次の3つの決定のいずれかを生成します:
ALLOW
DENY
REQUIRE_CONFIRMATIONデフォルトの動作:
Unknown
↓
DENYポリシーエンジンはアプリケーションロジックです。
LLMに委任されません。
10. リスク分類
FORTRESSは3つのリスクレベルを使用します:
LOW
MEDIUM
HIGH初期の概念的なマッピング:
ツール/アクション | 権限 | リスク |
| READ | LOW |
| READ | MEDIUM |
| WRITE | HIGH |
| SENSITIVE | HIGH |
リスク分類は決定論的で説明可能です。
11. 人間の確認
高リスクの操作では、明示的な人間の確認が必要になる場合があります。
セキュリティフローは次のとおりです:
Agent Request
↓
FORTRESS
↓
HIGH RISK
↓
REQUIRE_CONFIRMATION
↓
Actual User
↓
Confirm / Reject
↓
FORTRESS Re-evaluation
↓
ALLOW / DENY
↓
MCP Execution重要なセキュリティルールは次のとおりです:
LLMはユーザーの確認を生成したりシミュレートしたりすることはできません。
12. MCP
MCPは標準化されたツール対話レイヤーを提供します。
FORTRESSはMCPをセキュリティ境界で囲みます。
概念的には:
Agent
↓
FORTRESS Security Gateway
↓
MCP
↓
ToolFORTRESSはMCPの置き換えを試みるものではありません。
代わりに、MCPツール実行を決定論的なセキュリティゲートウェイの背後に配置する方法を示します。
13. 初期ツールセット
このプロジェクトは意図的に初期ツールの表面を制限しています。
calculator_read
目的:
決定論的なローカル計算
低リスクの読み取り型操作
ベースライン認可テストに有用
weather_lookup
目的:
ライブの気象データを取得
制御された外部APIアクセスを実証
外部データが信頼できない入力であることを実証
update_record
目的:
書き込み操作を実証
高リスクの認可を実証
ポリシー適用を実証
sensitive_action
目的:
機密性の高い操作を実証
明示的な確認が必要
拒否と確認のパスを実証
意図的にツールセットは小さく保たれています。
このプロジェクトは、ツールの量よりもセキュリティの深さを優先します。
14. ライブデータAPI
FORTRESSは、天気予報の照会にOpen-Meteoを初期の無料ライブデータプロバイダーとして使用します。
概念的には:
Agent
↓
FORTRESS
↓
Authorization
↓
Argument Validation
↓
MCP Weather Tool
↓
Open-Meteo
↓
Weather Result
↓
Audit外部プロバイダーは交換可能なままです。
セキュリティ境界はプロバイダーに依存しません。
15. 外部データは信頼できない
重要な設計原則は次のとおりです:
External Data
≠
Authorization天気応答、API応答、ドキュメント、その他の外部コンテンツには、悪意のあるテキストや命令のようなテキストが含まれている可能性があります。
そのようなコンテンツは権限を許可することはできません。
認可はFORTRESSポリシーによって決定されます。
16. 引数の検証
ツールの引数は実行前に検証されます。
たとえば、天気の座標は次の条件を満たす必要があります:
latitude:
-90 ≤ latitude ≤ +90
longitude:
-180 ≤ longitude ≤ +180無効な引数は、外部リクエストが実行される前に拒否される必要があります。
これにより、ツールと外部サービス境界の両方が保護されます。
17. プロンプトインジェクション境界
FORTRESSは、プロンプトインジェクションを完全に排除できるとは主張しません。
代わりに、このプロジェクトはより強力なセキュリティ特性を示します:
プロンプトインジェクションは、単独で認可を許可することはできません。
概念的には:
Malicious Prompt / External Content
↓
Agent Request
↓
FORTRESS Policy
↓
DENY / CONFIRM信頼できないコンテンツは信頼できないままです。
18. 監査可能性
重要なセキュリティ決定はすべて、監査イベントを生成する必要があります。
概念的な監査フィールドは次のとおりです:
timestamp
session_id
agent_id
tool
action
risk_level
policy_decision
reason
confirmation_required
execution_status
safe_argument_summary監査システムはシークレットを公開しないようにする必要があります。
監査証跡は次の問いに答える必要があります:
WHO
WHAT
WHEN
WHY
RISK
DECISION
EXECUTION19. Streamlitセキュリティコントロールセンター
StreamlitはインタラクティブなUIを提供します。
UIは、セキュリティ動作を可視化し、デモを容易にすることを目的としています。
ダッシュボードには、次のような概念が表示されます:
現在のエージェントID
要求されたアクション
要求されたツール
権限
リスクレベル
ポリシー決定
確認要件
実行ステータス
ツール結果
監査イベント
Streamlitアプリケーションはセキュリティの権威ではありません。
セキュリティ決定はFORTRESSコアに属します。
この分離により、UIとAPIの両方でシステムをテストできます。
20. HTTP API
FORTRESSは小さなHTTP APIを公開します。
APIは次のための共有インターフェースを提供します:
Streamlit
│
├──────────────┐
│ │
▼ ▼
FORTRESS API ←── Bruno
│
▼
Security Gatewayこれにより、UIとは独立してバックエンドをテストできます。
21. Bruno APIテスト
BrunoはAPIレベルのセキュリティテストに使用されます。
計画されているシナリオは次のとおりです:
ヘルスエンドポイント
認証失敗
認証成功
許可されたリクエスト
許可されていないリクエスト
無効なツール引数
確認が必要
機密アクションの拒否
セキュリティポリシーの境界ケース
エラー応答の動作
Brunoは、APIクライアントの観点からHTTP境界をテストすることでPytestを補完します。
22. DeepEval
DeepEvalは、セキュリティに関連するエージェントの動作の評価に使用されます。
次のようなシナリオの評価に使用できます:
プロンプトインジェクションの試行
許可されていないツールリクエスト
ポリシー境界の動作
機密アクションの処理
拒否の動作
ツール使用の制約
DeepEvalは評価フレームワークです。
決定論的な認可エンジンを置き換えるものではありません。
アーキテクチャは次のままです:
Deterministic Security
+
Behavioral Evaluation23. SonarQube
SonarQube Free/Community互換の解析が、静的なコード品質とセキュリティレビューに使用されます。
このプロジェクトでは、以下を特定するために使用します:
バグ
脆弱性
セキュリティホットスポット
コードの匂い
保守性の問題
設定されている場合のテスト/カバレッジの可視性
SonarQubeは品質/セキュリティ分析レイヤーです。
ランタイムのセキュリティテストを置き換えるものではありません。
24. テスト戦略
FORTRESSは複数のテストレイヤーを使用します。
ユニットテスト
次のための高速な決定論的テスト:
アイデンティティ
権限
認可
ポリシー
リスク
検証
監査
ツールの動作
統合テスト
次のためのテスト:
API + セキュリティゲートウェイ
MCP境界
外部APIアダプター
確認ワークフロー
APIテスト
BrunoがHTTPの動作を検証します。
行動評価
DeepEvalがセキュリティに関連するエージェントの動作を評価します。
静的解析
SonarQubeがコード品質とセキュリティの問題を分析します。
リンター
Ruff。
型チェック
Mypy。
CI
GitHub Actionsが自動品質ゲートを実行します。
25. エンジニアリング品質スタック
このプロジェクトでは以下を使用します:
Python 3.12
↓
UV
↓
Pydantic
↓
FastAPI
↓
MCP
↓
Streamlit
↓
Pytest
↓
Ruff
↓
Mypy
↓
Bruno
↓
DeepEval
↓
SonarQube
↓
GitHub Actions
↓
Dockerスタックは意図的に現代的ですが、制御されています。
26. プロジェクト構造
現在および計画されている構造:
FORTRESS-MCP/
│
├── .github/
│ └── workflows/
│ └── ci.yml
│
├── bruno/
│ ├── collections/
│ └── README.md
│
├── docs/
│ ├── threat-model.md
│ ├── security-architecture.md
│ ├── phase-1-decision-log.md
│ └── phase-2-reuse-decision.md
│
├── src/
│ └── fortress_mcp/
│ ├── __init__.py
│ │
│ ├── api/
│ │ ├── __init__.py
│ │ └── app.py
│ │
│ ├── core/
│ │ ├── __init__.py
│ │ └── health.py
│ │
│ ├── identity/
│ │ └── __init__.py
│ │
│ ├── policy/
│ │ └── __init__.py
│ │
│ ├── risk/
│ │ └── __init__.py
│ │
│ ├── audit/
│ │ └── __init__.py
│ │
│ ├── mcp/
│ │ └── __init__.py
│ │
│ ├── tools/
│ │ └── __init__.py
│ │
│ └── streamlit_app.py
│
├── tests/
│ ├── unit/
│ │ └── test_health.py
│ └── integration/
│
├── .gitignore
├── .pre-commit-config.yaml
├── Dockerfile
├── pyproject.toml
├── sonar-project.properties
├── uv.lock
└── README.md構造は、対応するセキュリティ機能が実装された場合にのみ拡張されます。
27. インストール
要件
Windows/Linux/macOS
Python 3.12
UV
Git
Docker(コンテナ検証用)
Bruno(APIテスト用)
静的解析用のSonarQube Community/Free互換セットアップ
オプションのモデル/API統合では、安全な環境変数を使用する必要があります。
Gitにシークレットは含めないでください。
28. UVでインストール
リポジトリのルートから:
uv syncUV環境でコマンドを実行します:
uv run pytestuv run ruff check .uv run mypy src29. APIを実行
APIエントリポイントは次のとおりです:
fortress_mcp.api.app:app実行:
uv run uvicorn fortress_mcp.api.app:app --reloadヘルスエンドポイント:
GET /health期待される概念的な応答:
{
"service": "fortress-mcp",
"status": "ok"
}30. Streamlitを実行
実行:
uv run streamlit run src/fortress_mcp/streamlit_app.pyStreamlit UIはセキュリティコントロールセンターです。
後のフェーズが実装されると、以下を公開します:
Identity
Permissions
Request
Risk
Policy
Confirmation
Execution
Audit31. Docker
ビルド:
docker build -t fortress-mcp .実行:
docker run --rm -p 8000:8000 fortress-mcpコンテナはポートを公開します:
800032. 開発ワークフロー
開発ワークフローは次のとおりです:
Understand
↓
Design
↓
Implement
↓
Test
↓
Lint
↓
Type Check
↓
Security Analysis
↓
API Evaluation
↓
Commit意味のある各マイルストーンにはGitチェックポイントが設定されます。
33. 再利用戦略
FORTRESS-MCPは再利用優先のエンジニアリング戦略に従います。
このプロジェクトは、以前のアプリケーションを盲目的にクローンするものではありません。
代わりに:
Existing Proven Infrastructure
↓
Verify
↓
Select
↓
Adapt
↓
Remove Unused
↓
Implement FORTRESS Security LogicTOOLFORGE
次の主要な参照として使用:
MCP構造
ツールコントラクト
MCPレジストリの概念
ツール実行境界
ライブAPIアダプターパターン
Pydanticコントラクト
NEXUS-SHIELD
次の参照として使用:
UV
Python 3.12
依存関係管理
Ruff
Mypy
Pytest
GitHub Actions
Docker
SonarQubeパターン
WEBPULSE
次の補助的な参照として使用:
HTTP/APIパターン
Pydantic
テストアプローチ
プロジェクト固有のビジネスロジックやプロバイダー固有のロジックは盲目的にコピーされません。
34. セキュリティ不変条件
FORTRESSは次の不変条件を維持する必要があります:
1. Default deny.
2. Agent intent never equals authorization.
3. Untrusted content never grants permission.
4. Unknown tools never execute.
5. Invalid arguments never reach execution.
6. Sensitive actions require explicit confirmation.
7. The LLM cannot self-confirm.
8. Every security decision is auditable.
9. Audit records do not expose secrets.
10. Tool execution occurs only after the security gate.これらの不変条件は、個々のフレームワークよりも重要です。
35. 障害処理
FORTRESSは安全に失敗する必要があります。
例:
Unknown Agent
→ DENY
Unknown Tool
→ DENY
Missing Permission
→ DENY
Invalid Arguments
→ DENY / VALIDATION ERROR
High-Risk Action
→ REQUIRE_CONFIRMATION
Confirmation Rejected
→ DENY
External API Failure
→ Safe Error
Unexpected Security Error
→ Fail Closedシステムは内部障害を認可として解釈してはなりません。
36. 可観測性
セキュリティイベントは観測可能である必要があります。
有用なフィールドは次のとおりです:
timestamp
agent_id
session_id
tool
action
permission
risk
decision
reason
confirmation
execution_statusログは次の要件を満たす必要があります:
構造化されている
検索可能
安全
最小限
インシデント分析に有用
機密値はマスクする必要があります。
37. セキュリティモデル
FORTRESSは多層セキュリティモデルを使用します:
┌───────────────────────┐
│ Agent / LLM │
└───────────┬───────────┘
│
▼
┌───────────────────────┐
│ Identity │
└───────────┬───────────┘
▼
┌───────────────────────┐
│ Authentication │
└───────────┬───────────┘
▼
┌───────────────────────┐
│ Authorization │
└───────────┬───────────┘
▼
┌───────────────────────┐
│ Policy │
└───────────┬───────────┘
▼
┌───────────────────────┐
│ Risk │
└───────────┬───────────┘
▼
┌───────────────────────┐
│ Confirmation │
└───────────┬───────────┘
▼
┌───────────────────────┐
│ Validation │
└───────────┬───────────┘
▼
┌───────────────────────┐
│ MCP │
└───────────┬───────────┘
▼
┌───────────────────────┐
│ Tool │
└───────────┬───────────┘
▼
┌───────────────────────┐
│ Audit │
└───────────────────────┘38. このプロジェクトの違いは何か?
多くのGenAIプロジェクトは次に焦点を当てています:
Prompt
↓
LLM
↓
AnswerFORTRESSは次に焦点を当てています:
Intent
↓
Security Boundary
↓
Decision
↓
Controlled Executionこれにより、このプロジェクトは典型的なGenAIのデモンストレーションからAIセキュリティエンジニアリングプロジェクトへと変わります。
ポートフォリオの価値は、候補者が以下を理解していることを実証することにあります:
AIエージェント;
MCP;
ツール呼び出し;
API設計;
認証;
認可;
ポリシーエンジン;
最小権限;
セキュリティ境界;
プロンプトインジェクション;
ヒューマン・イン・ザ・ループ・セキュリティ;
可観測性;
テスト;
DevSecOps。
39. 面接での価値
FORTRESSは、深い面接ディスカッションをサポートするように設計されています。
質問: なぜLLMは自分自身を認可できないのですか?
回答:
LLMの出力は信頼できないアプリケーション入力です。認可はセキュリティ上の決定であるため、モデルの外部で決定的に強制される必要があります。
質問: プロンプトインジェクションにはどう対処しますか?
回答:
プロンプトインジェクションは信頼できない入力として扱われます。エージェントのリクエストに影響を与えることはあっても、独立して認可を付与することはできません。FORTRESSは、結果として生じるリクエストを独自のポリシー境界を通じて評価します。
質問: なぜMCPを使うのですか?
回答:
MCPは標準化されたツール対話レイヤーを提供します。FORTRESSは、ツールプロトコルを再構築するのではなく、ツール実行の周囲のセキュリティ境界に焦点を当てています。
質問: なぜ人間の確認が必要なのですか?
回答:
高リスクなアクションは、モデルによって自己認可されるべきではありません。明示的な確認は、実際のユーザーによって制御される独立した認可境界を生み出します。
質問: なぜデフォルト拒否なのですか?
回答:
セキュリティ上重要なシステムは、ツールやリクエストが明示的にブロックされていないという理由だけで権限を付与すべきではありません。不明または不十分に認可されたアクションは、フェイルクローズ(安全側に倒れる)する必要があります。
質問: なぜ決定的なポリシーを使うのですか?
回答:
決定的なポリシーは、説明可能で、テスト可能で、再現可能で、監査可能です。LLMは意図の解釈を支援することはできますが、最終的なセキュリティ権威であるべきではありません。
質問: Pytestがすでにあるのに、なぜDeepEvalを使うのですか?
回答:
Pytestは決定的なアプリケーションの動作を検証します。DeepEvalはモデル/エージェントの動作とセキュリティ関連のシナリオを評価します。これらは異なるテスト問題を解決します。
質問: なぜBrunoを使うのですか?
回答:
Brunoは、外部APIクライアントが行うようにHTTP境界を検証し、内部のユニットテストおよび統合テストを補完します。
質問: なぜSonarQubeなのですか?
回答:
SonarQubeは、静的コード品質とセキュリティ分析を追加し、ランタイムテストとセキュリティ固有の評価を補完します。
40. 制限事項
FORTRESS-MCPは、意図的にエンタープライズIAMプラットフォームではありません。
以下は初期スコープの対象外です:
エンタープライズOAuth/OIDCアイデンティティプロバイダー;
Kubernetes;
マルチクラウドIAM;
複雑な分散認可;
エンタープライズシークレット管理;
高度なRAG;
大規模なマルチエージェントオーケストレーション;
多数のMCPツール;
複雑なデータベースインフラストラクチャ;
大規模なフロントエンドフレームワーク;
不要なマイクロサービス。
これらは将来の拡張となる可能性がありますが、コアプロジェクトには必要ありません。
41. セキュリティ免責事項
FORTRESS-MCPは、ポートフォリオレベルのセキュリティエンジニアリングプロジェクトです。
セキュリティアーキテクチャとコントロールを実証しますが、あらゆるAIエージェントの脅威に対する完全なエンタープライズグレードの保護を提供するものではありません。
特に:
プロンプトインジェクションが完全に解決されているとは想定できません;
外部APIは失敗する可能性があります;
モデルの動作は確率的なままです;
セキュリティコントロールには適切なデプロイ設定が必要です;
実際の本番システムには、より広範なアイデンティティ、インフラストラクチャ、モニタリング、およびコンプライアンスコントロールが必要です。
このプロジェクトのセキュリティ主張は、明示的に実装およびテストされたコントロールに限定されます。
42. 開発ロードマップ
フェーズ1 — 脅威モデル + セキュリティアーキテクチャ
ステータス:
COMPLETE納品済み:
脅威モデル;
セキュリティアーキテクチャ;
セキュリティ不変条件;
スコープロック;
プロジェクト決定。
Gitチェックポイント:
92e3d81
docs: establish phase 1 security foundationフェーズ2 — 検証済みインフラストラクチャの再利用
ステータス:
IN PROGRESSこれまでの納品物:
UVプロジェクト;
Python 3.12;
パッケージ構造;
FastAPI基盤;
MCP依存関係;
Streamlitシェル;
Pytest基盤;
Ruff;
Mypy;
GitHub Actions基盤;
Docker基盤;
SonarQube設定;
Bruno構造;
DeepEval依存関係;
再利用決定のドキュメント。
フェーズ3 — アイデンティティ + 認証
計画中:
エージェントアイデンティティモデル;
認証境界;
セッションアイデンティティ;
認証失敗処理;
決定的アイデンティティテスト。
フェーズ4 — 認可 + ポリシー
計画中:
権限モデル;
ポリシーエンジン;
許可/拒否の決定;
デフォルト拒否;
ツール認可;
認可テスト。
フェーズ5 — リスク + 人間の確認
計画中:
リスク分類;
確認要件;
外部ユーザー確認;
確認拒否;
認可の再評価。
フェーズ6 — MCPゲートウェイ + ツール
計画中:
MCPゲートウェイ;
ツールレジストリ;
電卓;
天気;
レコード更新;
機密アクション;
引数検証;
Open-Meteoライブ統合。
フェーズ7 — プロンプトインジェクション + 監査
計画中:
プロンプトインジェクションシナリオ;
信頼できないコンテンツ境界;
安全な監査イベント;
セキュリティイベントレポート。
フェーズ8 — Pytest + DeepEval
計画中:
決定的セキュリティテスト;
統合テスト;
敵対的シナリオ;
DeepEval評価;
障害分析。
フェーズ9 — Streamlit + Bruno + SonarQube + CI
計画中:
完全なセキュリティダッシュボード;
Bruno APIコレクション;
SonarQube分析;
CI品質ゲート;
セキュリティテストレポート。
フェーズ10 — リリース
計画中:
最終README;
アーキテクチャドキュメント;
セキュリティレポート;
制限事項;
テストエビデンス;
面接Q&A;
最終検証;
Gitリリースチェックポイント。
43. 完了の定義
FORTRESS-MCPは、以下の場合に完了とみなされます:
[ ] Identity implemented
[ ] Authentication implemented
[ ] Authorization implemented
[ ] Default deny enforced
[ ] Policy engine implemented
[ ] Risk classification implemented
[ ] Human confirmation implemented
[ ] MCP gateway implemented
[ ] Four core tools implemented
[ ] Tool arguments validated
[ ] Open-Meteo live API integrated
[ ] Prompt-injection boundary demonstrated
[ ] Audit trail implemented
[ ] Streamlit dashboard complete
[ ] Bruno collection complete
[ ] DeepEval evaluation complete
[ ] Pytest suite complete
[ ] Ruff passes
[ ] Mypy passes
[ ] SonarQube analysis reviewed
[ ] CI passes
[ ] Docker validation passes
[ ] No secrets committed
[ ] Documentation complete
[ ] Interview Q&A complete
[ ] Final release validation complete44. 最終アーキテクチャ原則
FORTRESS-MCPで最も重要な概念は次のとおりです:
The model proposes.
The security gateway decides.
The MCP layer executes.
The audit layer records.その分離がこのプロジェクトの中核です。
45. プロジェクトステータス
現在のプロジェクトマイルストーン:
FORTRESS-MCP
│
├── Phase 1 ████████████████████ COMPLETE
├── Phase 2 ████████████░░░░░░░░ IN PROGRESS
├── Phase 3 ░░░░░░░░░░░░░░░░░░░░ PENDING
├── Phase 4 ░░░░░░░░░░░░░░░░░░░░ PENDING
├── Phase 5 ░░░░░░░░░░░░░░░░░░░░ PENDING
├── Phase 6 ░░░░░░░░░░░░░░░░░░░░ PENDING
├── Phase 7 ░░░░░░░░░░░░░░░░░░░░ PENDING
├── Phase 8 ░░░░░░░░░░░░░░░░░░░░ PENDING
├── Phase 9 ░░░░░░░░░░░░░░░░░░░░ PENDING
└── Phase 10 ░░░░░░░░░░░░░░░░░░░░ PENDINGこのプロジェクトは、不必要に大きなエンタープライズプラットフォームではなく、焦点を絞った高価値の実装に意図的にスコープを限定しています。
ライセンス
最終リリース前に、リポジトリの選択したライセンスを追加してください。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceA security gateway that enforces policies, tracks data taints, and sandboxes tool calls between AI agents and MCP servers. It provides a secure chokepoint to prevent prompt injection and ensure OWASP ASI compliance through audit logging and deterministic execution.1Apache 2.0
- AlicenseNot gradedqualityBmaintenanceA gateway that enforces permissions, sanitization, approval, and audit for AI agent MCP tool calls, with a policy engine and local proxy CLI.3101MIT
- AlicenseNot gradedqualityAmaintenanceA zero-trust security gateway for MCP tool calls, inspecting tool identity, arguments, execution decisions, and returned content before risk reaches your coding agent.Apache 2.0
- AlicenseBqualityCmaintenanceMCP zero-trust gateway that sits in front of every internal MCP server, detects tool-poisoning/metadata drift in real time, and maintains a cryptographic provenance ledger of every agent tool call.202ISC
Related MCP Connectors
Security firewall for AI agents — scans MCP calls for injection, secrets, and risks.
Runtime permission, approval, and audit layer for AI agent tool execution.
Six-gate governance for AI agents: PROCEED/PAUSE/HALT decisions with hash-chained audit trails.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Mayank1532/FORTRESS-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server