Add comprehensive mTLS documentation and plugin TLS support #1126
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🔐 feat: Add comprehensive mTLS documentation and plugin TLS support
Closes #568
📋 Summary
This PR delivers production-ready mTLS support for MCP Gateway through comprehensive documentation and plugin-level TLS implementation. While native gateway TLS termination remains a future enhancement, this provides immediate value through proxy-based mTLS patterns and secure plugin communication.
🎯 What This PR Delivers
1. Complete mTLS Documentation (
docs/docs/manage/mtls.md
)2. Plugin mTLS Support
plugins/config.yaml
3. Implementation Details
New Files Created:
docs/docs/manage/mtls.md
- Complete mTLS guidetests/unit/mcpgateway/plugins/framework/test_models_tls.py
- TLS configuration testsFiles Modified:
mcpgateway/plugins/framework/external/mcp/client.py
- Added TLS support to MCP client (+51 lines)mcpgateway/plugins/framework/models.py
- Added TLSConfig model (+92 lines)charts/mcp-stack/values.yaml
- Added plugin mTLS environment variablesplugins/config.yaml
- Example TLS configuration for external plugins.env.example
- Added plugin mTLS configuration examples🚀 Key Features Implemented
Proxy-Based mTLS (Ready Today)
Plugin Security (New Capability)
Enterprise Integration
📊 Impact Analysis
Lines Changed
Test Coverage
✅ Acceptance Criteria Met
From issue #568, this PR addresses:
verify: false
for development🔄 Migration Path
This PR provides a pragmatic approach:
🧪 Testing Instructions
1. Generate Test Certificates
mkdir -p certs/mtls # Follow commands in docs/docs/manage/mtls.md
2. Test Docker Compose Setup
3. Test Plugin mTLS
📚 Documentation
The new
docs/docs/manage/mtls.md
includes:🚦 Status
🔮 Future Work (Not in This PR)
Native mTLS termination in the gateway itself would require:
These remain tracked in #568 for future enhancement.
🔗 Related Issues
📋 Checklist