Update/read project variables from a runner instance

I have a project which uses version numbering, sometimes they create a release candidate and give it a version number while the final version is a different number. I know i can use something like $CI_BUILD_ID but this will just increment. So at some point there is a 1.3.0 release and you want to then move and start with 1.3.1 again.

My idea was to set the variables on the project to certain versions, i could use some simple bash script to read out these values, bump them up and change them. I know its possible to update them with a private token but since this is my private token it is not so nice. Is there any other way to resolve this or use a different setup for this?