The stress tensor is an important property for upper crustal studies such as those that involve pore fluids and earthquake hazards. At tectonic plate scale, plate boundary forces and mantle convection are the primary drivers of the stress field. In many local settings (10s to 100s of km and <10 km depth) in tectonic plate interiors, we can simplify by assuming a constant background stress field that is perturbed by local heterogeneity in density and elasticity. Local stress orientation and sometimes magnitude can be estimated from earthquake and borehole-based observations when available. Modeling of the local stress field often involves interpolating sparse observations. We present a new method to estimate the 3D stress field in the upper crust and demonstrate it for Oklahoma. We created a 3D material model by inverting multiple types of geophysical observations simultaneously. Integrating surface-wave dispersion, local travel times and gravity observations produces a model of P-wave velocity, S-wave velocity and density. The stress field can then be modeled using finite element simulations. The simulations are performed using our simplified view of the local stress field as the sum of a constant background stress field that is perturbed by local density and elasticity heterogeneity and gravitational body forces. An orientation of N82˚E, for the maximum compressive tectonic force, best agrees with previously observed stress orientations and faulting types in Oklahoma. The gravitational contribution of the horizontal stress field has a magnitude comparable to the tectonic contribution for the upper 5 km of the subsurface.