v3.20.1

Major Customers and Concentration Of Risks (Details) | 12 Months Ended
--- | ---
Dec. 31, 2019 Employee
Concentration Risk [Line Items] |
Number of employees | 1,884
Refined Products Segment [Member] |
Concentration Risk [Line Items] |
Number of employees | 1,088
Crude Oil Pipeline and Terminals Segment [Member] |
Concentration Risk [Line Items] |
Number of employees | 224
Customer Concentration Risk [Member] |
Concentration Risk [Line Items] |
Customer Concentration Risk, Benchmark Percentage | 10.00%
Unionized Employees Concentration Risk [Member] | Crude Oil Pipeline and Terminals Segment [Member] |
Concentration Risk [Line Items] |
Concentration Risk, Percentage | 0.00%
U S W Plan [Member] | Unionized Employees Concentration Risk [Member] | Refined Products Segment [Member] |
Concentration Risk [Line Items] |
Concentration Risk, Percentage | 21.00%
I U O E Plan [Member] | Unionized Employees Concentration Risk [Member] | Refined Products Segment [Member] |
Concentration Risk [Line Items] |
Concentration Risk, Percentage | 3.00%

X
- Definition Number of persons employed by the Entity + References No definition available. + Details
Name: | dei_EntityNumberOfEmployees
Namespace Prefix: | dei_
Data Type: | xbrli:decimalItemType
Balance Type: | na
Period Type: | instant

X
- Definition Customer Concentration Risk, Benchmark Percentage + References No definition available. + Details
Name: | mmp_CustomerConcentrationRiskBenchmarkPercentage
Namespace Prefix: | mmp_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_ConcentrationRiskLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 275 -SubTopic 10 -Section 50 -Paragraph 18 -URI http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 20 -URI http://asc.fasb.org/extlink&oid=118260190&loc=d3e13531-108611 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 21 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=118260190&loc=d3e13537-108611 Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 275 -SubTopic 10 -Section 50 -Paragraph 20 -URI http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592 + Details
Name: | us-gaap_ConcentrationRiskPercentage1
Namespace Prefix: | us-gaap_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=mmp_RefinedProductsSegmentMember
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: |

X
- Details
Name: | us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByTypeAxis=us-gaap_UnionizedEmployeesConcentrationRiskMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RetirementPlanNameAxis=mmp_USWPlanMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RetirementPlanNameAxis=mmp_IUOEPlanMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |