Is there a way to change the name Server to something else, so when I announce something from the server console it could be from a name rather than just Server e.g. this - [God] hello world. instead of this - [Server] hello world.


There are two ways.

The first and easier option would be to summon an armorstand at spawn in the permanently loaded chunk named "God".

summon armor_stand X Y Z {Marker:1b,CustomName:'{"text":"God"}'}

You can then use it to announce stuff:

execute as @e[type=minecraft:armor_stand,name=God,limit=1] run say Hello world
-> [God] Hello World

The second option is to use tellraw. This is a bit more advanced, but I would suggest using it. It doesn't require an entity and is thus more fail save. It is also good practice to avoid using say.

tellraw @a {"text":"[God] Hello world"}
=> [God] Hello World

This also allows you to customize the output. For example to make "[God]" bold and dark red:

tellraw @a [{"text":""},{"text":"[God]","color":"dark_red","bold":true},{"text":" Hello world"}]