you can summon an armor stand at the position you want

use the command

/execute at @e[type=armor_stand] fill (x, y, z) (x, y, z) air replace (block you want to remove)

repeat this command to destroy the blocks you want it to break around it then use

/effect give @a[distance=..(put radius here)] instant_damage (add damage level here)

then add

/execute at @e[type=armor_stand] run summon creeper ~ ~ ~ {Fuse:0,ExplosionRadius:0}

then

/kill @e[type=armor_stand]

it should look like this (in order to achieve multiple commands, you can use chain command blocks)

/execute at @e[type=armor_stand] fill (x, y, z) (x, y, z) air replace (block you want to remove)
/effect give @a[distance=..(put radius here)] instant_damage
/execute at @e[type=armor_stand] run summon creeper ~ ~ ~ {Fuse:0,ExplosionRadius:0}
/kill @e[type=armor_stand]

if you are already using armor stands, you can use other entities as well!

explanation of the commands:

/execute at (place or entity you want to make the explosion at) run summon armor_stand ~ ~ ~ summons an armor stand at the position you want to make the explosion at, this will be the target for the other commands

/execute at @e[type=armor_stand] fill (x, y, z) (x, y, z) air replace (block you want to remove) runs a fill command at the armor stand that will turn the blocks you want to remove into air

/effect give @a[distance=..(put radius here)] instant_damage (add damage level here) damages players in a radius with a certain level of damage

/execute at @e[type=armor_stand] run summon creeper ~ ~ ~ {Fuse:0,ExplosionRadius:0} summons a creeper at the armor stand that instantly explodes but doesn't damage any blocks

/kill @e[type=armor_stand] this will kill all armor stands (you can't just have them lying around, after all!)

just out of curiosity, can i help out on the server?