3D coordinates of circle center given three point on the circle. Given the three coordinates $(x_1, y_1, z_1)$, $(x_2, y_2, z_2)$, $(x_3, y_3, z_3)$ defining a circle in 3D space, how to find the coordinates of the center of the circle $(x_0, y_0, z_0)$?
There are plenty of online articles for the 2D case. A simple google search will show that  this link provides a good explanation about how this is done in 2D. It also shows how to construct the circle center geometrically. So, what you need to do is 

1) Find a plane from the 3 points and create a 2D coordinate system on that plane.
2) Convert all 3 points to that 2D coordinate system. 
3) Find the circle center using the link above. 
4) Convert the circle center (in 2D) back to 3D.

Edit 1: I added the steps for creating a local coordinate system (CS) on a plane defined by 3 points

1) Compute unit vector n1 from P1 and P2. Use this as the x-axis for the local CS.
2) Compute unit vector n2 from P1 and P3. 
3) Use n1 x n2 (where 'x' means the cross product) as the z-axis of the local CS. 
4) Use (n1 x n2) x n1 as the y-axis of the local CS. 
5) Now, you have a local coordinate system, I hope that you know how to convert P1, P2 and P3 to this local CS. After the conversion, the new coordinates for these 3 points should all have their z values = 0.0. You can then use their (x, y) values to find the center of the circle.

If you have all 3 points collinear, you cannot create a local CS and you cannot find a circle from 3 collinear points either.
Let's assume the circle is defined by the 3 points a, b and c, and that the center is denoted d. Following the hints in the answers above the coordinates of points a, b and c can be plugged into the equation of a circle. 3 circle equations and 4 unknowns (3 coordinates of the center c plus the radius) means that we have 2 remaining unknowns for one equation. This equation in fact represents the line passing through the center of the circle, having equal distance to points a, b and c. Intersecting this line with the plane spanned by a, b and c gives the point c. The rest is algebra, making use of some smart substitution of variables:

        Cx = bx-ax
        Cy = by-ay
        Cz = bz-az
        Bx = cx-ax
        By = cy-ay
        Bz = cz-az
        B2 = ax**2-cx**2+ay**2-cy**2+az**2-cz**2
        C2 = ax**2-bx**2+ay**2-by**2+az**2-bz**2

        CByz = Cy*Bz-Cz*By
        CBxz = Cx*Bz-Cz*Bx
        CBxy = Cx*By-Cy*Bx
        ZZ1 = -(Bz-Cz*Bx/Cx)/(By-Cy*Bx/Cx)
        Z01 = -(B2-Bx/Cx*C2)/(2*(By-Cy*Bx/Cx))
        ZZ2 = -(ZZ1*Cy+Cz)/Cx
        Z02 = -(2*Z01*Cy+C2)/(2*Cx)


and finally the coordinates of the center:

        dz = -((Z02-ax)*CByz-(Z01-ay)*CBxz-az*CBxy)/(ZZ2*CByz-ZZ1*CBxz+CBxy)
        dx = ZZ2*dz + Z02
        dy = ZZ1*dz + Z01