Can matrix parameters be used anywhere within various parts of steps? Is there anywhere they can’t be used?
Yes, you can. Matrix parameters should work pretty much everywhere.
uses doesn’t allow dynamic values, so there it won’t work, and since the matrix is defined on job level you won’t be able to refer to matrix parameters on the workflow level or in other jobs.