# Release v1.0.22-p1 - Storage Backend Aliases, Terraform DocumentDB Gating, UI and Docker Version Fixes

**May 2026**

---

## Upgrading from v1.0.22

This section covers everything you need to know to upgrade from v1.0.22 to v1.0.22-p1. This is a patch release on top of v1.0.22 that hardens storage backend configuration, gates AWS DocumentDB provisioning in Terraform, and fixes two UI/packaging bugs. There are no new environment variables.

### Breaking Changes

There are no breaking changes for Docker Compose or Helm deployments.

**Terraform / ECS users only**: existing deployments that use `storage_backend = "file"` but still have AWS DocumentDB resources sitting in their Terraform state (provisioned unconditionally before this release) will see `terraform plan` propose destroying the DocumentDB cluster, its primary instance, subnet/parameter groups, KMS key (enters a 7-day pending-deletion window), credentials secret (destroyed immediately, no recovery window), the rotation Lambda, 5 security group rules, and 2 CloudWatch alarms. This is correct (those resources were never used for `file` backend) but it is not reversible. Before running `terraform apply`, inspect the destroy list, snapshot the cluster if it was ever used ad-hoc, and export the credentials secret value if any external system references its ARN. See [PR #961](https://github.com/agentic-community/mcp-gateway-registry/pull/961) for the full destructive-behavior description.

Deployments that use `storage_backend = "documentdb"` see zero drift.

### New Environment Variables

No new environment variables in this release. The `STORAGE_BACKEND` variable now accepts two additional alias values (`mongodb`, `mongodb-atlas`) that route to the same MongoDB/DocumentDB code path as `mongodb-ce`; existing values (`file`, `documentdb`, `mongodb-ce`) continue to work unchanged. Invalid values now fail at startup with a clear error instead of silently falling through.

### Upgrade Instructions

#### Docker Compose

```bash
cd mcp-gateway-registry
git pull origin main
git checkout v1.0.22-p1

./build_and_run.sh
```

#### Kubernetes / Helm (EKS)

```bash
cd mcp-gateway-registry
git pull origin main
git checkout v1.0.22-p1

# No Helm chart dependency changes; dependency build/update is not required.
cd charts/mcp-gateway-registry-stack
helm upgrade mcp-gateway . -f your-values.yaml
```

#### Terraform / ECS

```bash
cd mcp-gateway-registry
git pull origin main
git checkout v1.0.22-p1

# If you use storage_backend = "file", review the Breaking Changes section above
# before applying. Operators on storage_backend = "documentdb" should see zero drift.
cd terraform/aws-ecs
terraform plan
terraform apply
```

Operators deploying against an external MongoDB (Atlas or a self-managed replica set) can now set `storage_backend = "mongodb-atlas"` (or `"mongodb"`) in their tfvars, and a Terraform precondition will fail `plan` with a clear message if `mongodb_connection_string` / `mongodb_connection_string_secret_arn` is not also set.

#### DockerHub Images

Pre-built images are available:

```bash
docker pull mcpgateway/registry:v1.0.22-p1
docker pull mcpgateway/auth-server:v1.0.22-p1
docker pull mcpgateway/currenttime-server:v1.0.22-p1
docker pull mcpgateway/realserverfaketools-server:v1.0.22-p1
docker pull mcpgateway/fininfo-server:v1.0.22-p1
docker pull mcpgateway/mcpgw-server:v1.0.22-p1
docker pull mcpgateway/metrics-service:v1.0.22-p1
```

---

## Major Features

### Terraform gating for AWS DocumentDB resources

AWS DocumentDB resources are now gated on `storage_backend == "documentdb"` in the Terraform module. Previously the DocumentDB cluster, KMS key, credentials secret, subnet / parameter groups, primary instance, 5 security group rules, 3 SSM parameters, 6 outputs, 2 CloudWatch alarms, and the DocumentDB-specific secret-rotation Lambda were provisioned for every deployment regardless of backend choice. Deployments that use `storage_backend = "file"` or an external MongoDB (Atlas, self-managed) no longer provision an unused DocumentDB cluster.

The Terraform-side `storage_backend` allowlist now mirrors the Python-side values: `file`, `documentdb`, `mongodb-ce`, `mongodb`, `mongodb-atlas`. A new `terraform_data` precondition fails `terraform plan` with a clear message when a MongoDB backend is selected without a `mongodb_connection_string` (or its secret ARN).

[PR #961](https://github.com/agentic-community/mcp-gateway-registry/pull/961)

### STORAGE_BACKEND validation with MongoDB aliases

`STORAGE_BACKEND` is now validated at application startup; unknown values fail with a clear error instead of silently falling through to a default. Two new alias values are accepted: `mongodb` and `mongodb-atlas`, both of which route to the same MongoDB Community Edition / MongoDB Atlas code path as `mongodb-ce`. The `documentdb` value continues to be reserved for AWS DocumentDB (SCRAM-SHA-1 auth). Documentation in `.env.example` is updated to describe all five accepted values and when to use each.

[PR #957](https://github.com/agentic-community/mcp-gateway-registry/pull/957)

---

## What's New

### Infrastructure

- Terraform: gate all AWS DocumentDB-adjacent resources on `storage_backend == "documentdb"`, add `mongodb` and `mongodb-atlas` to the Terraform allowlist, and add a precondition enforcing that non-DocumentDB MongoDB backends supply a connection string or secret ARN (#961).
- Docker publish: pass `BUILD_VERSION` as a build argument when publishing to Docker Hub so the UI "About" dialog reports the real release version on EKS/Helm deployments instead of `1.0.0` (#958).

### Configuration

- Validate `STORAGE_BACKEND` at startup; accept `mongodb` and `mongodb-atlas` as aliases for `mongodb-ce`; update `.env.example` documentation (#957).

### Frontend Improvements

- Propagate `lifecycle_status` through the Server to Agent transform in the Dashboard so the Draft / Beta / Deprecated badge renders on agent cards and the Edit Agent modal opens with the correct lifecycle status pre-selected (#963).

---

## Bug Fixes

- UI "About" dialog showed version `1.0.0` instead of the actual release version on EKS/Helm deployments because `BUILD_VERSION` was not passed at Docker Hub publish time (#958, fixes #919).
- Agent cards did not render the Draft / Beta / Deprecated lifecycle badge even after a user saved a non-active status; the Edit Agent modal also always defaulted to Active on open. Root cause was a dropped field in the client-side Server to Agent transform (#963, fixes #962).
- `STORAGE_BACKEND` misconfigurations silently fell through rather than failing at startup; valid MongoDB-compatible values were limited to `mongodb-ce` even though operators commonly expected `mongodb` or `mongodb-atlas` to work (#957, fixes #954).

---

## GitHub Issues Fixed

| Issue | Title | Fixed By |
|-------|-------|----------|
| #962 | UI: lifecycle status badge (Draft/Beta/Deprecated) missing on agent cards; edit modal always opens with Active | #963 |
| #955 | Terraform / ECS: accept MongoDB aliases for storage_backend and gate aws_docdb_cluster on storage_backend == documentdb | #961 |
| #954 | Validate STORAGE_BACKEND at startup and accept mongodb / mongodb-atlas as aliases for mongodb-ce | #957 |
| #919 | UI shows version 1.0.0 instead of actual release version on EKS/Helm deployments | #958 |

---

## Pull Requests Included

| PR | Title |
|----|-------|
| #963 | fix(ui): propagate lifecycle_status to agent cards (#962) |
| #961 | feat(terraform): gate AWS DocumentDB on storage_backend == documentdb; accept MongoDB aliases (#955) |
| #958 | fix(docker): pass BUILD_VERSION when publishing to Docker Hub (#919) |
| #957 | fix(config): validate STORAGE_BACKEND and accept mongodb / mongodb-atlas aliases (#954) |

---

## Contributors

Thank you to all contributors for this release:

- **Amit Arora** ([@aarora79](https://github.com/aarora79))

---

## Support

- [GitHub Issues](https://github.com/agentic-community/mcp-gateway-registry/issues)
- [GitHub Discussions](https://github.com/agentic-community/mcp-gateway-registry/discussions)
- [Documentation](https://github.com/agentic-community/mcp-gateway-registry/tree/main/docs)

---

**Full Changelog:** [v1.0.22...v1.0.22-p1](https://github.com/agentic-community/mcp-gateway-registry/compare/v1.0.22...v1.0.22-p1)
