anchor.diff:  
       LServer := LOpenAPI.AddServerFromEngine(AEngine);
   
  -    LServer.variables.Add('application'
  -      , TServerVariable.Create([], TMARSURL.EnsureFirstPathDelimiter(AApplication.BasePath), 'Application'));
  +    LApplicationBasePath := TMARSURL.EnsureFirstPathDelimiter(AApplication.BasePath);
  +    if LApplicationBasePath <> '' then
  +    begin
  +      LServer.url := LServer.url + '{application}';
  +      LServer.variables.Add('application', TServerVariable.Create([], LApplicationBasePath, 'Application'));
  +    end;
   
       if AApplication.Parameters.ByNameText(JWT_SECRET_PARAM, JWT_SECRET_PARAM_DEFAULT).AsString <> '' then
         LOpenAPI.ReadBearerSecurityScheme('JWT_bearer', AApplication.Parameters);
  
positive.code:   LOpenAPI: TOpenAPI;
    LReader: TMARSMetadataReader;
    LServer: TServer;
  begin
    Assert(Assigned(AEngine));
  
  
negative.code: end;
  
  function TOpenAPIHelper.AddServerFromEngine(const AEngine: TMARSEngine): TServer;
  var
    LEngineBasePath: string;
  begin
    Result := AddServer;
    Result.url := '{protocol}://{hostname}:{port}';
    Result.description := AEngine.Name;
  
    Result.variables.Add('hostname'
    , TServerVariable.Create([], 'localhost', 'Host name'));
  
    LEngineBasePath := TMARSURL.EnsureFirstPathDelimiter(AEngine.BasePath);
    if LEngineBasePath <> '' then
    begin
      Result.url := Result.url + '{engine}';
      Result.variables.Add('engine', TServerVariable.Create([], LEngineBasePath, 'Engine base path'));
    end;
  
    Result.variables.Add('port'
    , TServerVariable.Create([AEngine.Port.ToString, AEngine.PortSSL.ToString]
  