Skip to content

Releases: github/gh-aw-mcpg

v0.1.0

11 Feb 02:49
432703b

Choose a tag to compare

🌟 Release Highlights

Welcome to v0.1.0, the first stable release of MCP Gateway! This milestone represents a production-ready Go-based proxy server for Model Context Protocol (MCP) servers, designed for use with GitHub Agentic Workflows.

✨ Core Features

🔀 Flexible Routing Modes

  • Routed Mode: Access individual MCP servers at /mcp/{serverID} endpoints for dedicated connections
  • Unified Mode: Single /mcp endpoint with intelligent routing across all configured servers

🐳 Docker-Native Backend Management

  • Launch and manage MCP servers as containerized processes
  • Automatic container lifecycle management with proper cleanup
  • Environment variable injection for secure credential handling

🔧 Configuration Flexibility

  • Support for both TOML files and JSON stdin configuration
  • Spec-compliant validation with fail-fast error handling and detailed messages
  • Environment variable expansion with ${VAR_NAME} syntax for secure credential management
  • Full configuration specification available

🛡️ Robust Error Handling

  • Enhanced debugging with detailed error context and troubleshooting suggestions
  • Per-server log files ({serverID}.log) for easier isolation of issues
  • Automatic schema normalization to fix malformed JSON schemas from backends
  • Container detection with security warnings for nested containerization

🔌 Protocol Support

  • JSON-RPC 2.0 over stdio transport for MCP communication
  • Full Model Context Protocol implementation
  • Transparent proxy with minimal latency overhead

🚀 Getting Started

Build and run the gateway locally:

# Clone and build
make build

# Configure your MCP servers (config.toml)
[gateway]
port = 3000
api_key = "your-api-key"

[servers.github]
command = "docker"
args = ["run", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "-i", "ghcr.io/github/github-mcp-server:latest"]

# Start the gateway
./awmg --config config.toml

🐳 Docker Image

The Docker image for this release is available at:

docker pull ghcr.io/github/gh-aw-mcpg:v0.1.0
# or
docker pull ghcr.io/github/gh-aw-mcpg:latest

Supported platforms: linux/amd64, linux/arm64

📚 Documentation


For complete details, see the full release notes.

Generated by Release


What's Changed

  • Lpcox/update large xfer action by @lpcox in #860
  • Hide enable-difc flag from public documentation by @Copilot in #864
  • Sanitize sensitive data in all log outputs by @claude in #878
  • [test-improver] Improve tests for main package by @github-actions[bot] in #871
  • Fix workflow documentation to use dynamic workspace paths by @claude in #879
  • Close #867: Test samples already exist in repository by @claude in #880
  • Increase Test Coverage Improver timeout from 30 to 45 minutes by @claude in #881
  • Clarify payload.json structure in large payload instructions by @claude in #883
  • Implement Cobra v1.10.0 improvements: context support, declarative flag validation, and lifecycle hooks by @claude in #882

New Contributors

Full Changelog: v0.0.113...v0.1.0

v0.0.114

11 Feb 02:42
432703b

Choose a tag to compare

What's Changed

  • Lpcox/update large xfer action by @lpcox in #860
  • Hide enable-difc flag from public documentation by @Copilot in #864
  • Sanitize sensitive data in all log outputs by @claude in #878
  • [test-improver] Improve tests for main package by @github-actions[bot] in #871
  • Fix workflow documentation to use dynamic workspace paths by @claude in #879
  • Close #867: Test samples already exist in repository by @claude in #880
  • Increase Test Coverage Improver timeout from 30 to 45 minutes by @claude in #881
  • Clarify payload.json structure in large payload instructions by @claude in #883
  • Implement Cobra v1.10.0 improvements: context support, declarative flag validation, and lifecycle hooks by @claude in #882

New Contributors

Full Changelog: v0.0.113...v0.0.114

v0.0.113

08 Feb 17:57
7d4bd82

Choose a tag to compare

🌟 Release Highlights

This maintenance release improves session management, test reliability, and documentation accuracy for MCP Gateway v0.0.113.

✨ What's New

Simplified Session Management (#831)

  • Sessions are now automatically created on first request - no manual initialization required
  • Removed the sys___init requirement, streamlining the client workflow
  • Reduces integration complexity for developers using MCP Gateway

🐛 Bug Fixes & Improvements

Enhanced Test Reliability (#844, #853)

  • Fixed filesystem and playwright MCP server configurations in stress tests
  • Improved PayloadMetadata schema structure for better data handling
  • Resolved flaky playwright test behavior for more consistent CI runs

Documentation Accuracy (#854, #855)

  • Updated HTTP transport documentation to reflect production-ready status
  • Documented known transient test failures with no action required

🐳 Docker Image

The Docker image for this release is available at:

docker pull ghcr.io/github/gh-aw-mcpg:v0.0.113
# or
docker pull ghcr.io/github/gh-aw-mcpg:latest

Supported platforms: linux/amd64, linux/arm64


For complete details, see the full changelog.

Generated by Release


What's Changed

  • fix: Remove sys___init requirement - sessions always auto-created by @lpcox in #831
  • Fix filesystem and playwright MCP server configurations in stress test by @Copilot in #844
  • refactor: Improve PayloadMetadata schema and fix flaky playwright test by @lpcox in #853
  • Fix HTTP transport documentation status by @Copilot in #854
  • Document Test Coverage Improver transient failure - no fix required by @Copilot in #855

Full Changelog: v0.0.111...v0.0.113

v0.0.112

08 Feb 17:46

Choose a tag to compare

What's Changed

  • fix: Remove sys___init requirement - sessions always auto-created by @lpcox in #831
  • Fix filesystem and playwright MCP server configurations in stress test by @Copilot in #844
  • refactor: Improve PayloadMetadata schema and fix flaky playwright test by @lpcox in #853
  • Fix HTTP transport documentation status by @Copilot in #854

Full Changelog: v0.0.111...v0.0.112

v0.0.111

07 Feb 19:57
9349f8d

Choose a tag to compare

🌟 Release Highlights

This release focuses on code quality improvements, better error diagnostics, and maintenance updates to keep MCP Gateway running smoothly.

⚡ Configuration Improvements

  • Enhanced TOML error handling - Configuration errors now include precise line/column positions and detect common typos for faster debugging (#813)
  • Increased payload threshold - Default payload size threshold raised from 1KB to 10KB for better performance with typical tool responses (#807)

🔧 Code Quality & Maintainability

  • Reduced code duplication - Consolidated logger initialization logic and environment variable handling into reusable helpers (#815, #816)
  • Better error handling - Extracted common error handling patterns into reusable helper functions (#811)
  • Constructor naming conventions - Documented standard patterns (New*, Create*, Init*) for consistent codebase organization (#818)

📚 Documentation

  • Clarified JSON stdin config - Removed unsupported payloadSizeThreshold field from documentation to prevent configuration errors (#808)

🐳 Docker Image

The Docker image for this release is available at:

docker pull ghcr.io/github/gh-aw-mcpg:v0.0.111
# or
docker pull ghcr.io/github/gh-aw-mcpg:latest

Supported platforms: linux/amd64, linux/arm64


For complete details, see the full release notes.

Generated by Release


What's Changed

  • docs: Remove unsupported payloadSizeThreshold from JSON stdin config by @Copilot in #808
  • Increase default payload size threshold from 1KB to 10KB by @Copilot in #807
  • Remove Tavily MCP from smoke tests due to 401 auth failure by @Copilot in #810
  • Configure TypeScript and Python language servers in Serena container by @Copilot in #809
  • Extract duplicate error handling patterns into reusable helpers by @Copilot in #811
  • Improve TOML configuration error handling with position tracking and typo detection by @Copilot in #813
  • Remove Multi-Device Docs Tester workflow - incompatible with repository structure by @Copilot in #814
  • Consolidate logger initialization to use generic helpers by @Copilot in #815
  • Refactor duplicate environment variable getters into reusable envutil package by @Copilot in #816
  • Duplicate code already eliminated - close issue by @Copilot in #817
  • Document constructor naming conventions per semantic analysis by @Copilot in #818
  • upated aws by @lpcox in #819

Full Changelog: v0.0.109...v0.0.111

v0.0.110

07 Feb 19:52
9349f8d

Choose a tag to compare

What's Changed

  • docs: Remove unsupported payloadSizeThreshold from JSON stdin config by @Copilot in #808
  • Increase default payload size threshold from 1KB to 10KB by @Copilot in #807
  • Remove Tavily MCP from smoke tests due to 401 auth failure by @Copilot in #810
  • Configure TypeScript and Python language servers in Serena container by @Copilot in #809
  • Extract duplicate error handling patterns into reusable helpers by @Copilot in #811
  • Improve TOML configuration error handling with position tracking and typo detection by @Copilot in #813
  • Remove Multi-Device Docs Tester workflow - incompatible with repository structure by @Copilot in #814
  • Consolidate logger initialization to use generic helpers by @Copilot in #815
  • Refactor duplicate environment variable getters into reusable envutil package by @Copilot in #816
  • Duplicate code already eliminated - close issue by @Copilot in #817
  • Document constructor naming conventions per semantic analysis by @Copilot in #818
  • upated aws by @lpcox in #819

Full Changelog: v0.0.109...v0.0.110

v0.0.109

07 Feb 05:09
db3ff1f

Choose a tag to compare

🌟 Release Highlights

This release focuses on improving payload handling flexibility and internal code quality.

✨ What's New

Configurable Payload Size Threshold (#790)

  • MCP Gateway now allows you to control when tool response payloads are stored to disk vs. returned inline
  • Configure via --payload-size-threshold CLI flag, MCP_GATEWAY_PAYLOAD_SIZE_THRESHOLD environment variable, or payload_size_threshold in config file
  • Default threshold: 1024 bytes (responses larger than this are saved to disk with metadata returned)
  • Priority: CLI flag > Environment variable > Config file > Default
  • Why it matters: Tune memory usage and performance based on your workload—smaller thresholds reduce memory pressure for high-volume agents, larger thresholds minimize disk I/O for agents handling moderate payloads

🔧 Internal Improvements

  • Enhanced debug logging for DIFC agent module (#751)
  • Improved test coverage for authentication package (#714)

🐳 Docker Image

The Docker image for this release is available at:

docker pull ghcr.io/github/gh-aw-mcpg:v0.0.109
# or
docker pull ghcr.io/github/gh-aw-mcpg:latest

Supported platforms: linux/amd64, linux/arm64


For complete details, see the full release notes.


Generated by Release


What's Changed

  • [test-improver] Improve tests for auth package by @github-actions[bot] in #714
  • [log] Add debug logging to DIFC agent module by @github-actions[bot] in #751
  • Add configurable payload size threshold for inline vs disk storage by @Copilot in #790

Full Changelog: v0.0.107...v0.0.109

v0.0.108

07 Feb 05:02
db3ff1f

Choose a tag to compare

What's Changed

  • [test-improver] Improve tests for auth package by @github-actions[bot] in #714
  • [log] Add debug logging to DIFC agent module by @github-actions[bot] in #751
  • Add configurable payload size threshold for inline vs disk storage by @Copilot in #790

Full Changelog: v0.0.107...v0.0.108

v0.0.107

07 Feb 00:25
b8254e7

Choose a tag to compare

🌟 Release Highlights

This release includes critical bug fixes for the large payload storage feature and important refactoring to improve code maintainability.

🐛 Bug Fixes

Fixed Large Payload Metadata Not Reaching Clients (#773, #766)

The large payload storage feature was saving payloads to disk correctly but not returning metadata to clients. This is now fixed:

  • Payload metadata (queryID, payloadPath, schema, preview) is now properly included in CallToolResult.Content
  • Agents can now access full payloads from mounted directories
  • Enhanced logging provides complete visibility into payload storage lifecycle

Fixed Payload File Permissions (#773)

Payload files are now created with world-readable permissions:

  • Directories: 0755 (was 0700)
  • Files: 0644 (was 0600)
  • Allows agents running in containers to read payload files without permission errors

🔧 Refactoring

Improved Middleware Type Safety (#771)

  • Added PayloadMetadata struct for type-safe payload metadata responses
  • Extracted PayloadTruncatedInstructions as a constant for consistency
  • Enhanced test coverage with helper functions

🐳 Docker Image

The Docker image for this release is available at:

docker pull ghcr.io/github/gh-aw-mcpg:v0.0.107
# or
docker pull ghcr.io/github/gh-aw-mcpg:latest

Supported platforms: linux/amd64, linux/arm64


For complete details, see the full release notes.

Generated by Release


What's Changed

  • updated aw to latest gw by @lpcox in #767
  • updated serena dockerfile by @lpcox in #769
  • refactor(middleware): define PayloadMetadata as struct with constant … by @lpcox in #771
  • fix(middleware): use world-readable permissions for payload files by @lpcox in #773

Full Changelog: v0.0.105...v0.0.107

v0.0.106

07 Feb 00:20
b8254e7

Choose a tag to compare

What's Changed

  • updated aw to latest gw by @lpcox in #767
  • updated serena dockerfile by @lpcox in #769
  • refactor(middleware): define PayloadMetadata as struct with constant … by @lpcox in #771
  • fix(middleware): use world-readable permissions for payload files by @lpcox in #773

Full Changelog: v0.0.105...v0.0.106