Claude Skills
CollectionsCompareWorkflowsNominate
Sign inSign up
© 2026 Curated Agent Skills·Learn more about Agent Skills
Back to repository

essdive-identifiers

verified

Convert between ESS-DIVE dataset IDs and DOIs via MCP tools.

View on GitHub

Marketplace

essdive-mcp-skills

ess-dive/essdive-mcp

Plugin

essdeepdive

Repository

ess-dive/essdive-mcp
1stars

skills/essdive-identifiers/SKILL.md

Last Verified

February 1, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/ess-dive/essdive-mcp/blob/main/skills/essdive-identifiers/SKILL.md -a claude-code --skill essdive-identifiers

Installation paths:

Claude
.claude/skills/essdive-identifiers/
Powered by add-skill CLI

Instructions

# Setup (once)

Run the MCP server locally:

```bash
uv run python src/essdive_mcp/main.py --token YOUR_ESS_DIVE_TOKEN_HERE
```

Or provide the token via a file:

```bash
uv run python src/essdive_mcp/main.py --token-file /path/to/token.txt
```

Note: the environment variable name is `ESSDIVE_API_TOKEN` (no underscore
between ESS and DIVE).

Register with Claude Code (stdio transport):

```bash
claude mcp add --transport stdio essdive-mcp --env ESSDIVE_API_TOKEN=YOUR_ESS_DIVE_TOKEN_HERE -- uv run python ./src/essdive_mcp/main.py
```

Token file alternative:

```bash
claude mcp add --transport stdio essdive-mcp -- uv run python ./src/essdive_mcp/main.py --token-file /path/to/token.txt
```

# Tools

- `doi-to-essdive-id`
- `essdive-id-to-doi`
- `coords-to-map-links`

## Usage examples

Convert a DOI to an ESS-DIVE ID:

```
doi-to-essdive-id with doi="10.15485/2453885"
```

Convert an ESS-DIVE ID to a DOI:

```
essdive-id-to-doi with essdive_id="ess-dive-9ea5fe57db73c90-20241024T093714082510"
```

Create map links for a point (geojson.io + Google Maps + Google Earth KML):

```
coords-to-map-links with points=[[38.9219, -106.9490]] and zoom=12
```

## Notes

- DOI inputs can include prefixes or URLs (e.g., `doi:10.15485/...` or `https://doi.org/...`).
- Outputs return a normalized DOI format.

## Fallback (no MCP server)

If the MCP server is unavailable, resolve identifiers by first fetching dataset metadata from the ESS-DIVE API and extracting the DOI field:

```bash
curl -sG "https://api.ess-dive.lbl.gov/packages/REPLACE_WITH_PACKAGE_ID" \
  -H "Accept: application/json" \
  -H "User-Agent: Mozilla/5.0" \
  -H "Range: bytes=0-1000" \
  --data-urlencode "isPublic=true"
```

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
1668 chars