nepa-screening

nepa-screening is a skill for Claude Code, Codex from pnnl/nepa-mcp. It costs 38 tokens per session (1,041 once invoked), scanned A, original, BSD-3-Clause.

An environmental review tool for a proposed project area. NEPA is the US law requiring federal agencies to assess environmental effects, and ESA is the law protecting threatened and endangered species.

In plain words
What is it for?
Use it to screen projects for species, habitats, cultural resources, protected lands, flood risk, air quality, soils, jurisdictions, and other environmental-review topics.
Why use it?
It gathers location-based information needed to understand environmental constraints and regulatory context. This reduces the need to search many separate government datasets by hand.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to screen projects for species, habitats, cultural resources, protected lands, flood risk, air quality, soils, jurisdictions, and other environmental-review topics.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/pnnl/nepa-mcp/nepa-screening
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add pnnl/nepa-mcp --skill nepa-screening
Clone the repo
git clone --depth 1 https://github.com/pnnl/nepa-mcp

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for nepa-screening

README.md
[![agentmods](https://agentmods.dev/badge/skills/pnnl/nepa-mcp/nepa-screening/github.svg)](https://agentmods.dev/skills/pnnl/nepa-mcp/nepa-screening)
Your own site
<a href="https://agentmods.dev/skills/pnnl/nepa-mcp/nepa-screening"><img src="https://agentmods.dev/badge/skills/pnnl/nepa-mcp/nepa-screening/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for nepa-screening

Your own site · 80×15
<a href="https://agentmods.dev/skills/pnnl/nepa-mcp/nepa-screening"><img src="https://agentmods.dev/badge/skills/pnnl/nepa-mcp/nepa-screening.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 38 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,041 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00038 $0.01041
Opus 5.5 $0.00015 $0.00416
Sonnet 5.5 $0.00008 $0.00208
Haiku 4.5 $0.00004 $0.00104

Measured 2mo ago against content hash 4af642e85c66, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

nepa-screening scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/nepa-mcp/skills/nepa-screening/SKILL.md · 78 lines

How it starts

The opening of the file, as written. The whole thing — 78 lines — stays where its author put it; the contents beside it link to each section on GitHub.

NEPA Screening

Use this skill for NEPA or ESA screening, environmental review scoping, project-area baseline research, jurisdictional context, or environmental regulatory lookup.

Establish the project area

Before location-scoped calls, confirm or derive latitude, longitude, and buffer distance in miles. Use gis tools to summarize the ROI, return GeoJSON, or calculate area. Use tigerweb_counties for intersecting counties and tribal for AIANNHA tribal lands.

Select authoritative datasets

  • Use census for ACS socioeconomic indicators.
  • Use ipac for USFWS species, critical habitat, migratory birds, wetlands, refuges, hatcheries, and related resources.
  • Use esa_ranges for NOAA ESA-listed species ranges.
  • Use noaa for NOAA West Coast critical habitat.
  • Use efh for Essential Fish Habitat and Habitat Areas of Particular Concern.
  • Use pcsrf for NOAA species ranges, critical habitat, salmon EFH/HAPC, and recovery projects.
  • Use gbif for biodiversity occurrences and county species lists.
  • Use fema_nfhl for flood zones, levees, water areas, and flood-risk summaries.
  • Use epa_aqs for air monitors, annual air-quality data, and NAAQS screening context.
  • Use nepa_assist for EPA NEPAssist screening categories.
  • Use nrcs_soils for SSURGO soil map units, drainage and hydrologic-group indicators, restrictive layers, erosion factors, and farmland classifications. Treat results as soil-survey screening, not geotechnical advice, wetland delineation, infiltration testing, or an agency farmland determination.
  • Use epa_acres for identifiable EPA ACRES Brownfields property records; treat results as grant-reported screening data, not a complete contaminated-site inventory. Dense results are nearest-first and paginated; follow the returned result_offset instruction when the complete property list is needed.
  • Use padus for protected areas, ownership, management, and conservation status.
  • Use blm for BLM land use plans, wilderness areas, and national monuments.
  • Use blm_mlrs for BLM land-use authorization cases, locatable-mineral operations, and geothermal or oil-and-gas leases. Preserve the source disposition and treat mapped records as legal-description-derived screening evidence, not surveyed footprints, title opinions, or proof that an operation is active or authorized.
  • Use usace for Corps districts and wetland delineation regions.
  • Use nrhp for National Register of Historic Places properties.
  • Use cfr for current eCFR text, regulatory history, Federal Register citations, and executive orders.

Read the full file on GitHub · 78 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2mo ago Changed · +10 lines 4af642e85c66
  2. 2mo ago First seen · 68 lines · 38 tokens per session scan A f7ff17a4d600

Subscribe to this mod's changes

nepa-screening is a skill published in the GitHub repository pnnl/nepa-mcp (22 stars, last pushed 2d ago), licensed BSD-3-Clause. It adds 38 tokens to every session and 1,041 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

nepa-screening compared with skills from other repositories

nepa-screening next to 6 skills from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
nepa-screeningpnnl/nepa-mcpSkill222d agoBSD-3-ClauseA38Claude Code, Codex
instrument-data-to-allotropeanthropics/knowledge-work-pluginsSkill35k2d agoApache-2.0A123Claude Code
exploratory-data-analysisK-Dense-AI/scientific-agent-skillsSkill56k4d agoMITA83Claude Code
matlabK-Dense-AI/scientific-agent-skillsSkill56k4d agoMITA44Claude Code
phylogeneticsK-Dense-AI/scientific-agent-skillsSkill56k4d agoMITA71Claude Code, Codex
research-engineerdavila7/claude-code-templatesSkill33kyesterdayMITA43Claude Code, Codex
mapping-to-snomedmaziyarpanahi/openmedSkill5.8kyesterdayApache-2.0A205Claude Code