Skip to main content
Two EPDs for the same material can move a project’s GWP by more than the material itself is worth arguing about. Datasets differ in scope, in end-of-life scenario, in density, and in how much of the life cycle they declare. Picking one from a search result list is guesswork. The MCP closes that gap with two tools. One shortlists EPDs that are actually relevant to a material and declared in a unit it can be mapped to. The other measures each candidate by putting it on the material and reading the recalculated project dashboard, so you compare real project numbers rather than per unit values on a datasheet.
There is no what-if sandbox behind this. The comparison temporarily maps each candidate onto the target material, reads the dashboard, then restores the original mapping (or removes it, if the material started unmapped). Restoration always runs, including when a candidate fails. Your project is briefly written to during the run, so do not start one while a colleague is reading the same project’s dashboard.

Prerequisites

  • An RTLCA project with materials in its inventory (add materials first if not)
  • An AI client connected to the RTLCA MCP server
  • The target material needs a quantity and a lifetime. The tool checks both and stops before writing anything if either is missing
The walkthrough below uses the Sample Lighthouse CPH project. Substitute your own names.

Pick the material worth comparing

Comparison costs a full dashboard recalculation per candidate, so spend it where the project GWP actually sits. Let the agent find the contributors first.
Only leaf materials can be compared. Parent type rows in the inventory are aggregates, and the tool will tell you so if you pass one by mistake.

Shortlist relevant EPDs

Free-text search returns whatever matches the string. The shortlist tool ranks by relevance server side and filters to units the material can actually be mapped in, so you get candidates instead of results.
Mass and volume are not incompatible. A kg declared EPD maps fine to an m³ material and the other way round, because the backend aligns them via density. Do not filter a shortlist down to a single unit.

Run the comparison

Up to 10 candidates per run. The agent should tell you it is about to write to the project and wait for your go ahead.The ranked table carries a column per life-cycle phase (A1-A3, A4, A5, B, C, D), the project GWP total, and the delta in absolute and percentage terms, with the current mapping marked (current). Below it, Project GWP by EPD ranks the totals with the winner in green and the current mapping in red, and a GWP by life-cycle phase breakdown splits each candidate so a difference in end-of-life or in module D credits shows up as its own segment rather than disappearing into the total.
Read the candidate names before you celebrate the number. Four of the rows above — GWP.40, .55, .70 and .REF — are the same base dataset at different carbon tiers. Picking GWP.40 is therefore a commitment to procure a lower-carbon mix, not a free 18.9%: someone has to specify it and a supplier has to deliver it. The three product-specific rows (UNI-GREEN BETON, RMC C30/37 M Vibfri, Transportbeton) are actual mixes you can ask for by name.
The green Restored banner is the thing to check first, before any number below it. If it shows a warning instead of a tick, the target material is still sitting on the last candidate that was tried. The agent reports what it should be restored to. Fix it before you read any other dashboard number from that project.

Commit the choice

The comparison commits nothing. To keep a candidate, map it explicitly.
Lowest GWP is not automatically the right answer, and neither is “current wins”. A low carbon product still has to be specifiable, procurable and appropriate for the structural class — and a mapping has to describe the material that is actually there. See map materials to EPDs for the dataset selection rules that apply to a BR18 project.

What the comparison actually measures

Each row is a whole project figure, not a per material one. The tool maps the candidate, reads the project dashboard, and records the total. That is what makes the delta meaningful: it is the effect on the project of swapping this one EPD, with every other mapping held still. Phases are rolled up. The dashboard returns granular stages, and the table groups them into A1-A3, A4, A5, B, C and D. The B and C columns are the sum of their sub-stages, so a candidate with a different end-of-life scenario shows the difference in the C column rather than hiding it in the total. The reference depends on the starting state. For an unmapped material every candidate adds impact that was not previously counted, so absolute totals all rise. The ranking is still the answer to the question you asked, but read the deltas as candidate versus candidate. Skipped candidates do not stop the run. If the backend refuses to map one, it is recorded with the reason and the remaining candidates still compare. The current EPD is skipped automatically when it appears in the candidate list, since it is already the baseline row.

When every candidate is worse

Sometimes the run comes back with the current mapping on top and every alternative above it. That is a result, but it is rarely the answer to the question you asked — so check the baseline before you accept it. Look at what the shortlist considered relevant. If you compared a concrete row and the candidates came back as galvanised steel, the shortlist is telling you that the row does not describe concrete. A current mapping can win simply because it is the wrong dataset for the material, priced far too low. Report that separately from the ranking: the number is right and the mapping is still wrong. Watch for outliers that are orders of magnitude out. A candidate landing 100× or more above the rest, especially with a large module D credit, is usually a declared-unit or density mismatch rather than a genuinely catastrophic product. Discard those rows instead of reporting them as part of the range — one of them will otherwise dominate any summary you write.

Before you get a useful answer

Two preconditions are enforced before any write happens:
  • The material needs a non-zero quantity. Otherwise every candidate multiplies by zero, every delta is 0, and the comparison says nothing.
  • The material needs a lifetime. Mapping fails with lifespan not set otherwise. Look the value up in the BR18 table and apply it first.
Both stop the tool before it touches the project, so a run that fails on either leaves nothing to clean up.

One-shot prompt

Once you know the project and the material, the whole flow fits in a single prompt.

Shortlist and compare candidate EPDs for a project material

Next

Once your mappings are settled, run a quality-assurance pass before generating reports.