[{"slug":"ZV-2026-1953","server_name":"mcp.edgegap.dev","severity":"breaking","title":"mcp.edgegap.dev: Field filter was removed from edgegap_list_deployments input; consumers still sending it may be rejected or silently ignored.","summary":"[safe] Tool edgegap_authorize_relay_user was added. [safe] Tool edgegap_build_matchmaker_config was added. [safe] Tool edgegap_create_relay_session was added. [safe] Tool edgegap_delete_relay_session was added. [safe] Tool edgegap_generate_dockerfile was added. [safe] Tool edgegap_get_registry_credentials was added. [safe] Tool edgegap_get_relay_session was added. [safe] Tool edgegap_list_registry_tags was added. [safe] Tool edgegap_validate_server_config was added. [safe] Description of edgegap_create_app_version changed (5% word delta). [risky] Description of edgegap_deploy changed (31% word delta). [risky] Description of edgegap_list_deployments changed (66% word delta). [breaking] Field filter was removed from edgegap_list_deployments input; consumers still sending it may be rejected or silently ignored. [risky] Optional field filters was added to edgegap_list_deployments; may shift model behaviour. [risky] Optional field order_by was added to edgegap_list_deployments; may shift model behaviour.","changes":[{"kind":"tool_added","tool":"edgegap_authorize_relay_user","detail":"Tool `edgegap_authorize_relay_user` was added.","severity":"safe"},{"kind":"tool_added","tool":"edgegap_build_matchmaker_config","detail":"Tool `edgegap_build_matchmaker_config` was added.","severity":"safe"},{"kind":"tool_added","tool":"edgegap_create_relay_session","detail":"Tool `edgegap_create_relay_session` was added.","severity":"safe"},{"kind":"tool_added","tool":"edgegap_delete_relay_session","detail":"Tool `edgegap_delete_relay_session` was added.","severity":"safe"},{"kind":"tool_added","tool":"edgegap_generate_dockerfile","detail":"Tool `edgegap_generate_dockerfile` was added.","severity":"safe"},{"kind":"tool_added","tool":"edgegap_get_registry_credentials","detail":"Tool `edgegap_get_registry_credentials` was added.","severity":"safe"},{"kind":"tool_added","tool":"edgegap_get_relay_session","detail":"Tool `edgegap_get_relay_session` was added.","severity":"safe"},{"kind":"tool_added","tool":"edgegap_list_registry_tags","detail":"Tool `edgegap_list_registry_tags` was added.","severity":"safe"},{"kind":"tool_added","tool":"edgegap_validate_server_config","detail":"Tool `edgegap_validate_server_config` was added.","severity":"safe"},{"kind":"description_changed","tool":"edgegap_create_app_version","after":"Register a container image as a deployable version of an application. The image must already be pushed to a registry that Edgegap can pull from (see edgegap_get_registry_credentials and edgegap_list_registry_tags). Resource units: 1024 cpu units = 1 vCPU; memory_mb must be at least 256 and at most double the cpu units. Set verify_image true on the first version so a bad image fails here rather than at deploy time. Avoid the \"latest\" docker tag — use a build ID so deployments are reproducible.","before":"Register a container image as a deployable version of an application. The image must already be pushed to a registry that Edgegap can pull from. Resource units: 1024 cpu units = 1 vCPU; memory_mb must be at least 256 and at most double the cpu units. Set verify_image true on the first version so a bad image fails here rather than at deploy time. Avoid the \"latest\" docker tag — use a build ID so deployments are reproducible.","detail":"Description of `edgegap_create_app_version` changed (5% word delta).","severity":"safe","descriptionDelta":0.049180327868852514},{"kind":"description_changed","tool":"edgegap_deploy","after":"Start one authoritative dedicated game server from an application version, placed near the players you specify. This is the recommended way to host a multiplayer match: the server owns the game state, so no player hosts it. Returns immediately with a request_id; the server is still starting and has no connection details yet. Follow this call with edgegap_wait_for_deployment to get the address players connect to. Always stop deployments you started for testing.","before":"Start one containerized instance of an application version, placed near the players you specify. Returns immediately with a request_id; the server is still starting and has no connection details yet. Follow this call with edgegap_wait_for_deployment to get the address players connect to. Always stop deployments you started for testing.","detail":"Description of `edgegap_deploy` changed (31% word delta).","severity":"risky","descriptionDelta":0.31034482758620685},{"kind":"description_changed","tool":"edgegap_list_deployments","after":"List active deployments, optionally filtered and sorted. Use this to find deployments left running from earlier sessions before starting new ones — orphaned servers cost money. Filter by status, application, version, tags, request_id, created_at, fleet_name or host_name, e.g. [{field:\"application\",operator:\"eq\",value:\"my-game\"},{field:\"status\",operator:\"eq\",value:\"ready\"}]. Operators: eq and neq on every field except created_at (eq, gte, lte); in and nin with an array value on request_id, tags, application, version, fleet_name, host_name; ilike with % wildcards on fleet_name and host_name. At most one filter per field. Sort by created_at or available_session_sockets.","before":"List active deployments, optionally filtered. Use this to find deployments left running from earlier sessions before starting new ones — orphaned servers cost money.","detail":"Description of `edgegap_list_deployments` changed (66% word delta).","severity":"risky","descriptionDelta":0.65625},{"kind":"input_property_removed","path":"inputSchema.properties.filter","tool":"edgegap_list_deployments","before":{"type":"string","description":"Edgegap filter expression, e.g. by tag. Omit for all deployments."},"detail":"Field `filter` was removed from `edgegap_list_deployments` input; consumers still sending it may be rejected or silently ignored.","severity":"breaking"},{"kind":"input_property_added","path":"inputSchema.properties.filters","tool":"edgegap_list_deployments","after":{"type":"array","items":{"type":"object","required":["field","operator","value"],"properties":{"field":{"enum":["status","request_id","tags","created_at","application","version","fleet_name","host_name"],"type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"A string, or an array of strings for in/nin. created_at is ISO 8601, e.g. \"2026-09-30T00:00:00Z\"."},"operator":{"enum":["eq","neq","in","nin","gte","lte","ilike"],"type":"string"}}},"description":"Omit for all deployments."},"detail":"Optional field `filters` was added to `edgegap_list_deployments`; may shift model behaviour.","severity":"risky"},{"kind":"input_property_added","path":"inputSchema.properties.order_by","tool":"edgegap_list_deployments","after":{"type":"array","items":{"type":"object","required":["field","order"],"properties":{"field":{"enum":["created_at","available_session_sockets"],"type":"string"},"order":{"enum":["asc","desc"],"type":"string"}}},"description":"e.g. [{field:\"created_at\",order:\"asc\"}] for oldest first."},"detail":"Optional field `order_by` was added to `edgegap_list_deployments`; may shift model behaviour.","severity":"risky"}],"published_at":"2026-10-08T06:22:17.846Z"}]