SH-31 begins at
SH-48 south of
Tupelo. east of here, SH-31B branches off, connecting the main highway with the town of
Olney. SH-31 then continues for to
Coalgate, the seat of
Coal County, where it intersects
US-75/
SH-3. Leaving Coalgate, SH-31 turns north at
SH-131, traveling to its junction with SH-31A, which connects with
US-270 at
Stuart. At SH-31A, SH-31 turns to the east, following the northern edge of the
McAlester Army Ammunition Plant, arriving in
McAlester, seat of
Pittsburg County, later. In McAlester, SH-31 forms a five-mile (8 km)
concurrency with US-270 and
SH-1, splitting up just east of the
US-69 interchange on the east side of the city. SH-31 then sets off to the northeast, passing through
Krebs, and crossing the south arm of
Lake Eufaula. At
Quinton, from McAlester, SH-31 serves as the southern terminus of
SH-71, then heads east, forming a six-mile (10 km) concurrency with
SH-2 to the town of
Kinta. At Kinta, SH-2 turns north, and SH-31 continues east, with a short dogleg concurrency with
SH-82 at
Lequire. Continuing on to the east, SH-31 serves as the southern terminus for SH-26 at
McCurtain, then passes through
Bokoshe before terminating at
US-59/
US-271, north of
Panama. ==Junction list==