I believe little modification to this:
# Import arcpy module
import arcpy, traceback, os, sys
from arcpy import env
env.overwriteOutput = True
try:
# input folder with shapefiles or rasters
inputFolder = arcpy.GetParameterAsText(0)
env.workspace = inputFolder
# output folder for tiles shapefile
outputFolder = arcpy.GetParameterAsText(1)
# output shapefile name
outputFile = "tiles.shp"
theType=arcpy.GetParameterAsText(2)
if theType=='Shapefile':
inRasters = arcpy.ListFeatureClasses()
elif theType=='Raster':
inRasters = arcpy.ListRasters()
arcpy.AddMessage(len(inRasters))
arcpy.CreateFeatureclass_management(outputFolder, outputFile, "POLYGON", "", "DISABLED", "DISABLED", "", "", "0", "0", "0")
outputFile=outputFolder+ os.sep +outputFile
arcpy.AddField_management(outputFile, "FILE_NAME", "TEXT", "", "", 250, "", "NON_NULLABLE", "NON_REQUIRED", "")
inRows = arcpy.da.InsertCursor(outputFile,("Shape@","FILE_NAME"))
arcpy.SetProgressor("step", "", 0, len(inRasters))
for inRaster in inRasters:
desc = arcpy.Describe(inRaster)
ext=desc.extent
thePoints=arcpy.Array([ext.lowerLeft, ext.upperLeft,ext.upperRight,ext.lowerRight])
polygon = arcpy.Polygon(thePoints)
inRows.insertRow((polygon,inputFolder+os.sep+inRaster))
arcpy.SetProgressorPosition()
arcpy.AddMessage (inRaster + "...processed")
del inRows
except:
tb = sys.exc_info()[2]
tbinfo = traceback.format_tb(tb)[0]
pymsg = "PYTHON ERRORS:\nTraceback Info:\n" + tbinfo + "\nError Info:\n " + \
str(sys.exc_type)+ ": " + str(sys.exc_value) + "\n"
msgs = "GEOPROCESSOR ERRORS:\n" + arcpy.GetMessages(2) + "\n"
arcpy.AddError(msgs)
arcpy.AddError(pymsg)

Will get you there