Very new to all of this. Why doesn't this three line toy example work?

with pm.Model() as model:

    likelihood = pm.Normal('prior', 10, 2, observed=[12,13,15])   
    posteriorSamples = pm.sample(draws=5000,step=pm.NUTS(),
progressbar=True,)['likelihood']

because there is no free parameters in your model, thus nothing to be sampled from.

I’m misunderstanding something important. My intent is to say…

What is the distribution of values, assuming a prior of Normal(10,2), and the observations 12,13,15?

This is an invalid question, as you cannot observed the prior, and it is unclear what this value you are referring to in “the distribution of values”.

In a Bayesian modeling language, I would assume that you are interested in the posterior distribution of some parameter of the likelihood (of the observed), and the prior is place on these parameters. Then your question depends on the observation likelihood function, and which parameter the prior is constraining. For example, you can have a prior of Normal(10, 2) on the mu of a Normal likelihood, which will give you a model like:

with pm.Model() as model:
    mu = pm.Normal('prior', 10., 2.)
    likelihood = pm.Normal('likelihood', mu, 1., observed=[12,13,15])  

Noted that since Normal likelihood have two parameter (mu and sigma), the parameter that gets no prior will need to be assigned a fixed value.