An update: I did not have to write the SCM GIT plugin. There was a config param already available repo_path that suited my purposes.
To summarize: Use caphub for generating the skeleton configuration files. This internally uses capistrano-multiconfig. I just set repo_path to the subdirectory name in git, so that only that directory gets deployed.
In my case the microservice name and the git subdirectory name matched, so setting the repo_path to the microservice name worked.