<?xml version="1.0" encoding="utf-8"?>
<ownershipDocument>
    <schemaVersion>X0201</schemaVersion>

    <documentType>4</documentType>
  <periodOfReport>2003-12-03</periodOfReport>
  <notSubjectToSection16>0</notSubjectToSection16>
    <issuer>
        <issuerCik>0001003078</issuerCik>
        <issuerName>MSC INDUSTRIAL DIRECT CO INC</issuerName>
        <issuerTradingSymbol>MSM</issuerTradingSymbol>
  </issuer>
  <reportingOwner>
        <reportingOwnerId>
            <rptOwnerCik>0001244708</rptOwnerCik>
            <rptOwnerName>ECCLESTON THOMAS</rptOwnerName>
        </reportingOwnerId>
        <reportingOwnerAddress>
            <rptOwnerStreet1>C/O MSC INDUSTRIAL DIRECT CO INC</rptOwnerStreet1>
            <rptOwnerStreet2>75 MAXESS RD</rptOwnerStreet2>
            <rptOwnerCity>MLEVILLE</rptOwnerCity>
            <rptOwnerState>NY</rptOwnerState>
            <rptOwnerZipCode>11747</rptOwnerZipCode>
            <rptOwnerStateDescription></rptOwnerStateDescription>
        </reportingOwnerAddress>
            <reportingOwnerRelationship>
      <isDirector>0</isDirector>
      <isOfficer>1</isOfficer>
      <isTenPercentOwner>0</isTenPercentOwner>
      <isOther>0</isOther>
      <officerTitle>VP of Plant &amp; Equip.and Secret</officerTitle>
    </reportingOwnerRelationship>
  </reportingOwner>
  <nonDerivativeTable>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>M</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>12000</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>15.25</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>A</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>12000</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>2500</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.56</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>9500</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>1300</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.57</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>8200</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>500</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.58</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>7700</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>700</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.59</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>7000</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>1300</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.60</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>5700</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>500</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.61</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>5200</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>300</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.62</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>4900</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>900</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.63</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>4000</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>1200</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.64</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>2800</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>1700</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.65</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>1100</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>400</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.67</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>700</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>500</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.72</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>200</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
    <nonDerivativeTransaction>
      <securityTitle>
        <value>Class A Common Stock, $.001 par value</value>
      </securityTitle>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>S</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>200</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>26.74</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>0</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </nonDerivativeTransaction>
  </nonDerivativeTable>
  <derivativeTable>
    <derivativeTransaction>
      <securityTitle>
        <value>Options (right to buy)</value>
        <footnoteId id="F1"/>
      </securityTitle>
      <conversionOrExercisePrice>
        <value>15.25</value>
      </conversionOrExercisePrice>
      <transactionDate>
        <value>2003-12-03</value>
      </transactionDate>
      <transactionCoding>
        <transactionFormType>4</transactionFormType>
        <transactionCode>M</transactionCode>
        <equitySwapInvolved>0</equitySwapInvolved>
      </transactionCoding>
      <transactionTimeliness>
        <value></value>
      </transactionTimeliness>
      <transactionAmounts>
        <transactionShares>
          <value>12000</value>
        </transactionShares>
        <transactionPricePerShare>
          <value>0</value>
        </transactionPricePerShare>
        <transactionAcquiredDisposedCode>
          <value>D</value>
        </transactionAcquiredDisposedCode>
      </transactionAmounts>
      <exerciseDate>
        <footnoteId id="F2"/>
      </exerciseDate>
      <expirationDate>
        <value>2007-04-28</value>
      </expirationDate>
      <underlyingSecurity>
        <underlyingSecurityTitle>
          <value>SEE FOOTNOTE</value>
          <footnoteId id="F3"/>
        </underlyingSecurityTitle>
        <underlyingSecurityShares>
          <value>12000</value>
        </underlyingSecurityShares>
      </underlyingSecurity>
      <postTransactionAmounts>
        <sharesOwnedFollowingTransaction>
          <value>0</value>
        </sharesOwnedFollowingTransaction>
      </postTransactionAmounts>
      <ownershipNature>
        <directOrIndirectOwnership>
          <value>D</value>
        </directOrIndirectOwnership>
      </ownershipNature>
    </derivativeTransaction>
  </derivativeTable>
  <footnotes>
    <footnote id="F1">Options to purchase Issuer's Class A Common Stock, $.001 par value</footnote>
    <footnote id="F2">An option to purchase 12,000 shares of the Issuer's common stock, par value $.001 per share, was issued to the Reporting Person under the Issuer's 1995 Stock Option Plan. One-fifth of such option became exercisable on each of April 28, 1998, April 28, 1999, April 28, 2000, April 28, 2001, and April 28, 2002. </footnote>
    <footnote id="F3">Class A Common Stock, $.001 par value </footnote>
  </footnotes>
  <ownerSignature>
    <signatureName>/S/ Thomas Eccleston</signatureName>
    <signatureDate>2003-12-04</signatureDate>
  </ownerSignature>
</ownershipDocument>

