Search for EPDs by product category, CSI division, or material type — finds EPDs from EC3, program operator registries, and manufacturer sites. Use when the user asks to "find EPDs for...", locate declarations for a material, or source low-carbon product documentation.
npx skills add https://github.com/AlpacaLabsLLC/skills-for-architects --skill epd-research
Receives a brief describing a material or product category, searches the web for matching EPDs (Environmental Product Declarations), and returns a curated shortlist sorted by environmental impact. The shortlist is file-free by default; selected EPDs are persisted only on explicit request.
User describes what they need EPDs for
|
Claude searches registries + manufacturer sites
|
Presents candidates sorted by GWP (lowest first)
|
User picks winners
|
Optionally saved to project-local epd-library.csv
The user describes what they need EPDs for. A brief can be loose or specific:
Loose:
> "I need concrete EPDs"
Specific:
> "Looking for ready-mix concrete EPDs, 4000-5000 PSI, plants within 500 miles of NYC, GWP under 350 kg CO2e/m3"
Extract as many of these as the user provides. Don't ask for fields they didn't mention — work with what you have.
| Field | Examples |
|-------|---------|
| Material/product | Ready-mix concrete, structural steel, mineral wool insulation, carpet tile |
| CSI division | Division 03, Division 09, "all structural materials" |
| Performance specs | 4000 PSI, R-21, Class A fire rating |
| Geographic preference | Plants near NYC, manufactured in North America, European suppliers ok |
| GWP target | Under 350 kg CO2e/m3, below industry average, lowest available |
| Manufacturers | "Include Holcim and CEMEX", "no imported steel" |
| EPD type | Product-specific only, industry-average ok |
| Standard | EN 15804+A2, ISO 21930 |
| Certification | LEED v4.1 eligible, third-party verified |
Don't interview the user. If the brief is "concrete EPDs," that's enough to start searching. Clarify *after* showing initial results if needed.
Search the web for EPDs matching the brief. Use multiple targeted queries to cover different sources.
| Source | URL pattern | Notes |
|--------|------------|-------|
| Building Transparency / EC3 | buildingtransparency.org | Largest EPD database. Requires authenticated API access (free professional account + API key). See notes below. |
| UL EPD Program | ul.com | Major US program operator. Product-specific EPDs. |
| NSF International | nsf.org | US program operator, strong in concrete/masonry. |
| SCS Global Services | scsglobalservices.com | US program operator. |
| Environdec (International EPD System) | environdec.com | Largest international registry. European + global. |
| IBU (Institut Bauen und Umwelt) | ibu-epd.com | German program operator. Strong in European products. |
| ASTM International | astm.org | US program operator (newer). |
| Manufacturer sites | varies | Major manufacturers publish EPDs on their sustainability pages. |
For a brief like "ready-mix concrete EPDs, 4000 PSI, near NYC":
site:ul.com ready-mix concrete environmental product declarationsite:environdec.com ready-mix concrete EPDready-mix concrete EPD northeast US 4000 PSIHolcim ready-mix EPD, CEMEX concrete EPDNRMCA concrete EPD (National Ready Mixed Concrete Association)Run 3-5 searches depending on brief complexity. Aim for breadth — different manufacturers, regions, GWP ranges.
Attempt to fetch the registry page or EPD listing with WebFetch. Extract:
If the page is JS-rendered and returns limited data, use whatever info is available from the search result snippet plus general knowledge. Note as "unverified" if sourced from snippets.
Target: 6-12 EPD candidates that genuinely match the brief. Don't pad with weak matches.
Show results as a numbered shortlist sorted by GWP (lowest first):
## EPD Research: Ready-Mix Concrete (4000 PSI, Northeast US)
### 1. ECOPact — Holcim
Plant: South Plainfield, NJ · GWP: 242 kg CO2e/m3
Declared Unit: 1 m3 · System Boundary: Cradle-to-gate
Program Operator: NSF · Reg: EPD-00123 · Valid: 2024-06-01 to 2029-06-01
LEED: Yes (product-specific, third-party verified)
PDF: [link]
Why: Lowest GWP in the region. ECOPact line is Holcim's low-carbon
concrete — uses SCM substitution. Plant is ~50 miles from NYC.
### 2. ProPaving 4000 — CEMEX
Plant: Yonkers, NY · GWP: 298 kg CO2e/m3
Declared Unit: 1 m3 · System Boundary: Cradle-to-gate
Program Operator: ASTM · Reg: EPD-00456 · Valid: 2023-11-01 to 2028-11-01
LEED: Yes
PDF: [link]
Why: Close to site. Higher GWP than ECOPact but still below the NRMCA
industry-wide average for 4000 PSI (~400 kg CO2e/m3, NRMCA Industry-Wide
Member EPD v3.2, 2022).
### 3. ...
---
## Summary
| # | Product | Manufacturer | Plant | GWP (A1-A3) | Unit | Valid To | LEED |
|---|---------|-------------|-------|-------------|------|----------|------|
| 1 | ECOPact | Holcim | South Plainfield, NJ | 242 | kg CO2e/m3 | 2029-06 | Yes |
| 2 | ProPaving 4000 | CEMEX | Yonkers, NY | 298 | kg CO2e/m3 | 2028-11 | Yes |
| 3 | ... | ... | ... | ... | ... | ... | ... |
Industry average (NRMCA Industry-Wide Member EPD v3.2, 2022 — 4000 PSI): ~400 kg CO2e/m3
Which ones should I save to your EPD library?
Do not create a file merely because the user selects or compares candidates. When the user explicitly asks to save candidates, use the canonical contract in schema/epd-schema.md; never use the 33-column FF&E schema. Set:
Parsed At — current ISO timestampSource — epd-researchNotes — the "Why" reasoning from the presentation + any caveatsTags — from brief context (e.g., "4000-psi, northeast, project-name")LEED Eligible — based on EPD type and verification statusResolve the nearest ancestor containing PROJECT.md and target <project-root>/epd-library.csv. Preview the complete selected batch, target, and initialize-or-append action. Use one confirmation gate without a duplicate prose confirmation. Serialize all approved records as one JSON array. After approval, use python3 "${CLAUDE_PLUGIN_ROOT}/skills/master-schedule/scripts/csv-library.py" init epd if needed, then invoke python3 "${CLAUDE_PLUGIN_ROOT}/skills/master-schedule/scripts/csv-library.py" append epd --row-json <batch.json> exactly once. Never append in a per-record loop. The helper validates the complete CSV and writes the whole batch atomically. If no project root exists, keep the shortlist in conversation and offer /as:project init.
Saved 3 EPDs to your project's epd-library.csv.
Tagged: 4000-psi, northeast
Want me to compare these? Or search for more options?
The user may want to refine:
/as:epd-compare/as:epd-to-specThis policy is shared by all four EPD skills (epd-parser, epd-research, epd-compare, epd-to-spec) and must read identically in each. Industry-average GWP baselines are allowed only when cited with a named source and publication year (e.g., "NRMCA Industry-Wide Member EPD v3.2, 2022" or "AISC Fabricated Hot-Rolled Structural Sections EPD, 2021"). Uncited baseline numbers recalled from memory or training data are banned. If no source-and-year citation is available, ask the user to provide a baseline EPD or find one with /as:epd-research — never guess a baseline.
site:buildingtransparency.org web searches will not return results. If the user hasn't configured EC3 API credentials, tell them: *"EC3 has the largest EPD database but requires a free API key from buildingtransparency.org (professional account with a business email). I'll search program operator registries and manufacturer sites directly instead."* Then proceed with the other sources listed above — UL, NSF, Environdec, IBU, SCS, ASTM, and manufacturer sustainability pages all publish EPDs publicly./as:epd-parser extracts full data from the PDFs. If the user wants deep data from a found EPD, download the PDF and run /as:epd-parser.Assists in writing high-quality content by conducting research, adding citations, improving hooks, iterating on outlines, and providing real-time feedback on each section. Transforms your writing process from solo effort to collaborative partnership.
Identifies high-quality leads for your product or service by analyzing your business, searching for target companies, and providing actionable contact strategies. Perfect for sales, business development, and marketing professionals.
Use this skill to query your Google NotebookLM notebooks directly from Claude Code for source-grounded, citation-backed answers from Gemini. Browser automation, library management, persistent auth. Drastically reduced hallucinations through document-only responses.
Efficient database search tool for bioRxiv preprint server. Use this skill when searching for life sciences preprints by keywords, authors, date ranges, or categories, retrieving paper metadata, downloading PDFs, or conducting literature reviews.
Query and analyze scholarly literature using the OpenAlex database. This skill should be used when searching for academic papers, analyzing research trends, finding works by authors or institutions, tracking citations, discovering open access publications, or conducting bibliometric analysis across 240M+ scholarly works. Use for literature searches, research output analysis, citation analysis, and academic database queries.
Access USPTO APIs for patent/trademark searches, examination history (PEDS), assignments, citations, office actions, TSDR, for IP analysis and prior art searches.
Multiagent AI system for scientific research assistance that automates research workflows from data analysis to publication. This skill should be used when generating research ideas from datasets, developing research methodologies, executing computational experiments, performing literature searches, or generating publication-ready papers in LaTeX format. Supports end-to-end research pipelines with customizable agent orchestration.
Automated LLM-driven hypothesis generation and testing on tabular datasets. Use when you want to systematically explore hypotheses about patterns in empirical data (e.g., deception detection, content analysis). Combines literature insights with data-driven hypothesis testing. For manual hypothesis formulation use hypothesis-generation; for creative ideation use scientific-brainstorming.
Take alpacalabsllc/epd-research from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.