Return derivative vector from odeint scipy function

I have the following function that I want to implement in scipy.integrate.odeint

def numericSolver(rv_,t,alpha=1.,gamma=1.):
BVal = B_f(alpha,gamma,t) #this function returns a vector
BdotVal = Bdot_f(alpha,gamma,t) #this function returns a vector
matDynamics = np.array([[0.,1.,float(BdotVal[2]),0.,0.,0.],
[0.,0.,0.,float(BVal[2]),0,-float(BVal[1])],
[0.,0.,0.,1,0.,0.],
[0.,-float(BVal[2]),0.,0.,0.,float(BVal[0])],
[0.,0.,0.,0.,0.,1.],
[0.,float(BVal[1]),0.,-float(BVal[0]),0.,0.]])
derivatives = matDynamics.dot(rv_)
return derivatives

In order to implement this function I call odeint as

solution = odeint(numericSolver,IC,t=t,args=(alpha,gamma))

where IC is the initial condition vector, t is the time vector of interest, and alpha and gamma are inputs for numericSolver.

For a more clear explanation, derivatives is the solution, $\dot{\vec{X}}$, to the equation

$\dot{\vec{X}} = M \vec{X},$

where $M$ is matDynamics and rv_ is $\vec{X}$.

Is there a way that I can get odeint to return the values of derivatives at each value in t? Or is it best to calculate the derivatives values manually using the values returned in solution?