π HPE GreenLake MCP v1.0.2 - All Services Release
π What's Changed
This is a comprehensive release updating HPE GreenLake MCP servers.
PR Title: Release: v1.0.2 for all MCP servers
Merged by: @lchinglen
PR Number: #15
π·οΈ New Service Tags
- β
audit-logs/v1.0.2 - β
devices/v1.0.2 - β
users/v1.0.2 - β
workspaces/v1.0.2 - β
subscriptions/v1.0.2
π¦ Installation
# Clone the repository
git clone https://github.com/HewlettPackard/gl-mcp.git
cd gl-mcp
# Install specific service
cd src/[service-name]
pip install -e .π Documentation
π·οΈ Tag Information
- Umbrella Tag:
v1.0.2 - Commit:
3db36aecaf9b9a0a497381ba37588c9e346b2e8e - Release Type: All Services
π¦ Services Included
- π Audit Logs - Audit log management with comprehensive filtering
- π» Devices - Device management and inventory tracking
- π₯ Users - User management and lookup functionality
- π’ Workspaces - Workspace information retrieval
- π Subscriptions - Subscription management and monitoring
β¨ Common Features
All services include:
- π OAuth2 authentication with automatic token management
- π§ Dynamic tools with runtime parameter validation
- π‘ Model Context Protocol v1.0 implementation
- π Python 3.10+ support
- βοΈ Environment-based configuration
- π Comprehensive filtering and pagination support
π Service Changelogs
π Audit Logs v1.0.2
## [1.0.2] - 2026-03-09
### Changed
- Path parameters in generated tools now use URL encoding for proper handling of special characters
- Static tools (example_tool.py template) use urllib.parse.quote(value, safe="")
- Dynamic tools (invoke_dynamic_tool.py template) use urllib.parse.quote(value, safe="")
### Security
- Dynamic tools now sanitize user-provided headers to prevent injection attacks
- Added FORBIDDEN_HEADERS constant listing security-sensitive headers
- Added _sanitize_headers() method to strip Authorization, Host, Cookie, X-Forwarded-* headers
- Prevents callers from overriding security-critical headers in API requestsπ Full audit-logs CHANGELOG
π» Devices v1.0.2
## [1.0.2] - 2026-03-09
### Changed
- Path parameters in generated tools now use URL encoding for proper handling of special characters
- Static tools (example_tool.py template) use urllib.parse.quote(value, safe="")
- Dynamic tools (invoke_dynamic_tool.py template) use urllib.parse.quote(value, safe="")
### Security
- Dynamic tools now sanitize user-provided headers to prevent injection attacks
- Added FORBIDDEN_HEADERS constant listing security-sensitive headers
- Added _sanitize_headers() method to strip Authorization, Host, Cookie, X-Forwarded-* headers
- Prevents callers from overriding security-critical headers in API requestsπ₯ Users v1.0.2
## [1.0.2] - 2026-03-09
### Changed
- Path parameters in generated tools now use URL encoding for proper handling of special characters
- Static tools (example_tool.py template) use urllib.parse.quote(value, safe="")
- Dynamic tools (invoke_dynamic_tool.py template) use urllib.parse.quote(value, safe="")
### Security
- Dynamic tools now sanitize user-provided headers to prevent injection attacks
- Added FORBIDDEN_HEADERS constant listing security-sensitive headers
- Added _sanitize_headers() method to strip Authorization, Host, Cookie, X-Forwarded-* headers
- Prevents callers from overriding security-critical headers in API requestsπ Full users CHANGELOG
π’ Workspaces v1.0.2
## [1.0.2] - 2026-03-09
### Changed
- Path parameters in generated tools now use URL encoding for proper handling of special characters
- Static tools (example_tool.py template) use urllib.parse.quote(value, safe="")
- Dynamic tools (invoke_dynamic_tool.py template) use urllib.parse.quote(value, safe="")
### Security
- Dynamic tools now sanitize user-provided headers to prevent injection attacks
- Added FORBIDDEN_HEADERS constant listing security-sensitive headers
- Added _sanitize_headers() method to strip Authorization, Host, Cookie, X-Forwarded-* headers
- Prevents callers from overriding security-critical headers in API requestsπ Full workspaces CHANGELOG
π Subscriptions v1.0.2
## [1.0.2] - 2026-03-09
### Changed
- Path parameters in generated tools now use URL encoding for proper handling of special characters
- Static tools (example_tool.py template) use urllib.parse.quote(value, safe="")
- Dynamic tools (invoke_dynamic_tool.py template) use urllib.parse.quote(value, safe="")
### Security
- Dynamic tools now sanitize user-provided headers to prevent injection attacks
- Added FORBIDDEN_HEADERS constant listing security-sensitive headers
- Added _sanitize_headers() method to strip Authorization, Host, Cookie, X-Forwarded-* headers
- Prevents callers from overriding security-critical headers in API requestsπ Full subscriptions CHANGELOG
π Additional Resources
View complete service documentation: