v3.20.1

Organization and Description of Business (Narrative) (Details) bbl in Millions | 12 Months Ended
--- | ---
Dec. 31, 2019 Terminal bbl mi
Refined Products Segment [Member] |
Organization and Description of Business [Line Items] |
Number Of Marine Terminals Sold | 3
Number of Pipeline Terminals | 53
Number of Inland Terminals | 25
Number of Marine Terminals | 5
Number Of Marine Terminals, Owned Through Joint Venture | 1
Refined Products Segment [Member] | Refined Products Transportation Services [Member] |
Organization and Description of Business [Line Items] |
Pipeline, Length | mi | 9,800
Crude Oil Pipeline and Terminals Segment [Member] |
Organization and Description of Business [Line Items] |
Pipeline, Length | mi | 2,200
Number of Marine Terminals | 1
Storage Capacity | bbl | 37
Contracted Storage | bbl | 25
Pipeline, Length - Wholly Owned | mi | 1,000
Storage Capacity - Wholly Owned | bbl | 30
Contracted Storage - Wholly Owned | bbl | 22

X
- Definition Contracted Storage + References No definition available. + Details
Name: | mmp_ContractedStorage
Namespace Prefix: | mmp_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Contracted Storage - Wholly Owned + References No definition available. + Details
Name: | mmp_ContractedStorageWhollyOwned
Namespace Prefix: | mmp_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Number Of Marine Terminals, Owned Through Joint Venture + References No definition available. + Details
Name: | mmp_NumberOfMarineTerminalsOwnedThroughJointVenture
Namespace Prefix: | mmp_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Number Of Marine Terminals Sold + References No definition available. + Details
Name: | mmp_NumberOfMarineTerminalsSold
Namespace Prefix: | mmp_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of PipelineTerminals + References No definition available. + Details
Name: | mmp_NumberOfPipelineTerminals
Namespace Prefix: | mmp_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Number of Inland Terminals + References No definition available. + Details
Name: | mmp_NumberofInlandTerminals
Namespace Prefix: | mmp_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Number of Marine Terminals + References No definition available. + Details
Name: | mmp_NumberofMarineTerminals
Namespace Prefix: | mmp_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition [Line Items] for Organization and Description of Business [Table] + References No definition available. + Details
Name: | mmp_OrganizationAndDescriptionOfBusinessLineItems
Namespace Prefix: | mmp_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Pipeline, length + References No definition available. + Details
Name: | mmp_PipelineLength
Namespace Prefix: | mmp_
Data Type: | num:lengthItemType
Balance Type: | na
Period Type: | instant

X
- Definition Pipeline, Length - Wholly Owned + References No definition available. + Details
Name: | mmp_PipelineLengthWhollyOwned
Namespace Prefix: | mmp_
Data Type: | num:lengthItemType
Balance Type: | na
Period Type: | instant

X
- Definition Storage Capacity + References No definition available. + Details
Name: | mmp_StorageCapacity
Namespace Prefix: | mmp_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Storage Capacity - Wholly Owned + References No definition available. + Details
Name: | mmp_StorageCapacityWhollyOwned
Namespace Prefix: | mmp_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=mmp_RefinedProductsSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=mmp_RefinedProductsTransportationServicesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=mmp_CrudeOilPipelineandTerminalsSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |