Token导航 LogoToken导航TokenDH.com
Essdive MCP logo
搜索检索stdio官方级别未说明来源级核验

Essdive MCP

MCP Server

ESS-DIVE MCP服务器是一个用于查询ESS-DIVE数据集和ESS-DeepDive融合数据库的模型上下文协议服务器,支持通过聊天式AI客户端进行交互。

工具数

18

提示词数

0

GitHub Stars

1

资源数

0
PythonClaude数据检索ClaudeCursorVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

ess-dive

提供方

ess-dive

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uvx.exe --from git+https://github.com/ess-dive/essdive-mcp essdive-mcp

详细介绍

ESS-DIVE MCP服务器

MCP(模型上下文协议)服务器,用于从基于聊天的AI客户端(如Claude Code、Codex、带Copilot chat的VS Code和Goose)查询ESS-DIVE数据集和ESS-DeepDive融合数据库。

目录

快速开始

如果您想通过桌面应用程序最快地进入ESS-DIVE MCP,请使用Goose desktop并按照以下说明进行操作。对于此快速入门路径,您不需要克隆此存储库或运行 uv sync。您仍然需要将命令粘贴到Goose的扩展设置中。

如果您想获得更详细的Goose演练截图,请参阅 docs/GOOSE_SETUP.md.

你首先需要什么

以下是最低先决条件:

  • python 3.10 或更新

与核对 python --versionpython3 --version. (如果你有,你会得到这样的回应 Python 3.13.4.) 如果没有,请从安装 .

  • uv

与核对 uv --version. (如果你有,你会得到这样的回应 uv 0.7.11.) 从安装 . 最佳安装选项 uv 将取决于您的系统,但请注意,安装后可能需要刷新终端。

  • 鹅桌面

从安装 . 最佳安装选项将取决于您的系统。安装完成后,运行Goose Desktop以完成下一步。

  • 访问Goose Desktop可以使用的LLM API。

示例包括OpenAI、Anthropic或LBNL的CBORG。如果您计划使用CBORG,请参阅 docs/CBORG_SETUP.mdGoose会在您首次运行时提示您提供LLM API详细信息。有关更多详细信息和可视化示例,请参阅 docs/GOOSE_SETUP.md.

  • ESS-DIVE API令牌,如果您需要对私有数据进行身份验证访问。

公共数据集搜索和检索不再需要令牌。如果您确实需要,请登录 。这通常需要使用您的ORCID进行身份验证。完成此操作后,打开您的个人资料(右上角),然后转到 Settings 选项卡-> Authentication Token。创建新令牌或单击 Renew authentication token 如果您需要新令牌,请单击按钮。将此令牌复制到安全的地方。

⚠️ 重要提示:

  • 在ESS-DIVE MCP扩展可用之前,必须使用LLM提供商和API密钥配置Goose Desktop。
  • 如果配置ESS-DIVE令牌,则环境变量名称必须精确 ESSDIVE_API_TOKEN.
  • ESS-DIVE表示,API令牌将在24小时后过期,因此,如果经过身份验证的请求突然停止工作,请生成新的令牌并更新扩展。

在Goose桌面中安装

如果你想让Goose运行,这是最简单的设置 essdive-mcp 直接从GitHub下载,无需先克隆此存储库:

  1. 安装Python, uv,以及如上所述的Goose Desktop。如果您需要私人数据访问,还可以获得ESS-DIVE令牌。
  2. 打开Goose Desktop并配置您的LLM提供者。
  3. 为添加新的扩展 essdive-mcp.

使用以下命令之一:

Windows:
uvx.exe --from git+https://github.com/ess-dive/essdive-mcp essdive-mcp

macOS/Linux:
uvx --from git+https://github.com/ess-dive/essdive-mcp essdive-mcp

如果Goose分别请求命令和参数,请使用:

  • Windows命令: uvx.exe
  • Windows参数: --from git+https://github.com/ess-dive/essdive-mcp essdive-mcp
  • macOS/Linux命令: uvx
  • macOS/Linux参数: --from git+https://github.com/ess-dive/essdive-mcp essdive-mcp
  1. 如果需要私有数据访问,请设置扩展环境变量:
ESSDIVE_API_TOKEN=YOUR_ESS_DIVE_TOKEN_HERE

对于公共数据集搜索和检索,您可以不设置ESS-DIVE令牌。

保存扩展程序后,在Goose中开始聊天,并问一个简单的ESS-DIVE问题。如果扩展正常工作,Goose应该自动调用ESS-DIVE MCP工具,而无需您键入工具名称,尽管它可能会先要求您允许使用该工具。

在Goose中尝试的第一个提示

确切的结果会随着时间的推移而变化,但成功的回应应该大致像这些例子。

提示:

Find 3 public ESS-DIVE datasets about wildfire recovery and summarize each one in 1 sentence.

预期响应:

Here are three public ESS-DIVE datasets related to wildfire recovery:

1. Post-fire Time Series Data from Oak Creek Watershed, Washington: This dataset includes sensor and geochemistry sample data from surface water, groundwater, precipitation, soil, and vegetation, providing insights into the ecological recovery of the watershed after a wildfire. [View Dataset](https://data.ess-dive.lbl.gov/view/doi:10.15485/3018020)

2. Pyrogenic Organic Matter Laboratory Experiment: This dataset examines aerobic respiration and geochemical characteristics from variably inundated stream sediments, contributing to our understanding of soil recovery processes post-wildfire. [View Dataset](https://data.ess-dive.lbl.gov/view/doi:10.15485/3001969)

3. Post-fire Time Series Photos from Oak Creek Watershed, Washington: This collection of photographs documents changes over time at five sites across the watershed, visually capturing the landscape's recovery after wildfire disturbance. [View Dataset](https://data.ess-dive.lbl.gov/view/doi:10.15485/3018598)

提示:

Convert DOI 10.15485/2588618 to an ESS-DIVE dataset ID.

预期响应:

The ESS-DIVE dataset ID for the DOI 10.15485/2588618 is ess-dive-f002e3e8be8a266-20260401T000217538.

提示:

Search ESS-DeepDive for temperature-related fields and summarize what datasets they come from.

预期响应:

Here are some temperature-related fields found in the ESS-DeepDive datasets, along with their summaries:

1. **HG_Soil_Temperature_C**: This field measures in situ soil temperature in degrees Celsius, with a record count of 36 values ranging from 19.1 to 26.9°C. It is part of the dataset linked to [DOI: 10.15485/2587853](https://fusion.ess-dive.lbl.gov/api/v1/deepdive/doi:10.15485/2587853:NExpt_ESSDIVE_Datafile.csv).

2. **HG_Soil_Temperature_F**: Similar to the previous field, this one captures in situ soil temperature but in degrees Fahrenheit, also containing 36 records with values from 66.4 to 80.5°F. It belongs to the same dataset as above, accessible via [DOI: 10.15485/2587853](https://fusion.ess-dive.lbl.gov/api/v1/deepdive/doi:10.15485/2587853:NExpt_ESSDIVE_Datafile.csv).

3. **temperature_c**: This field provides groundwater temperature readings in degrees Celsius, with a substantial record count of 144,966 entries ranging from 3.77 to 21.63°C, originating from the dataset associated with [DOI: 10.15485/2587412](https://fusion.ess-dive.lbl.gov/api/v1/deepdive/doi:10.15485/2587412:Machado_Silva_et_al_2024_EST_data.csv).

4. **Effect_Size_Temperature_degC**: This field quantifies the effect size of temperature changes, specifically the comparison between drying and rewetting treatments, with 19 records showing values between -0.3 and 0.5°C. It comes from the dataset tied to [DOI: 10.15485/2583945](https://fusion.ess-dive.lbl.gov/api/v1/deepdive/doi:10.15485/2583945:WHONDRS_MEL_Sample_Data.zip/WHONDRS_EL_Soil_Effect_Size.csv).

5. **Median_Temperature_degC**: Measuring the median temperature with 40 records ranging from 19.8 to 20.8°C, this field is crucial for understanding temperature variations in environmental data, linked to the same dataset as the previous field [DOI: 10.15485/2583945](https://fusion.ess-dive.lbl.gov/api/v1/deepdive/doi:10.15485/2583945:WHONDRS_MEL_Sample_Data.zip/WHONDRS_EL_Soil_Sample_Data_Summary.csv).

These fields collectively provide valuable insights into soil and groundwater temperature dynamics in various environmental contexts.

提示:

Turn the point 38.9219, -106.9490 into map links I can open in geojson.io and Google Maps.

预期响应形状:

Here are the map links for the point **38.9219, -106.9490**:

- **[Open in geojson.io](https://geojson.io/#data=data:application/json,%7B%22type%22%3A%22FeatureCollection%22%2C%22features%22%3A%5B%7B%22type%22%3A%22Feature%22%2C%22geometry%22%3A%7B%22type%22%3A%22Point%22%2C%22coordinates%22%3A%5B-106.949%2C38.9219%5D%7D%2C%22properties%22%3A%7B%7D%7D%2C%7B%22type%22%3A%22Feature%22%2C%22geometry%22%3A%7B%22type%22%3A%22Polygon%22%2C%22coordinates%22%3A%5B%5B%5B-106.949%2C38.9219%5D%2C%5B-106.949%2C38.9219%5D%2C%5B-106.949%2C38.9219%5D%2C%5B-106.949%2C38.9219%5D%2C%5B-106.949%2C38.9219%5D%5D%5D%7D%2C%22properties%22%3A%7B%22type%22%3A%22bbox%22%7D%7D%5D%7D)

- **[Open in Google Maps](https://www.google.com/maps/@?api=1&map_action=map&center=38.9219,-106.949)**

- **[Open in OpenStreetMap](https://www.openstreetmap.org/?minlon=-106.949&minlat=38.9219&maxlon=-106.949&maxlat=38.9219)**

These links will allow you to view the specified coordinates on the respective mapping platforms.

如果您想要更完整的手动设置、更多的客户端选项或更多的示例查询,请继续阅读此README的其余部分。

这个项目是什么

该项目为AI客户端提供了一套工具,用于:

  • 搜索公共ESS-DIVE数据集
  • 获取数据集元数据、版本历史和共享权限
  • 在ESS-DIVE数据集ID和DOI之间进行转换
  • 使用MCP/neneneba API访问详细信息生成一致的ESS-DIVE数据引用,以及针对非ESS-DIVE DOI的警告支持Crossref回退
  • 解析文件级元数据(FLMD)CSV内容
  • 搜索ESS DeepDive字段和文件元数据
  • 查找ESS-DIVE项目缩写、描述和门户网址
  • 将坐标转换为地图链接

如果你是MCP和技能的新手

你不需要深厚的背景知识来尝试这个项目。

  • MCP服务器是一个小型本地程序,向AI聊天客户端公开工具。
  • 您的聊天客户端是您键入自然语言问题的界面。
  • 此存储库是MCP服务器。您在本地运行它,然后从客户端连接到它。
  • Agent技能是可选的指令包,可帮助Agent更可靠地使用工具集完成特定任务。您不需要技能来运行基本的ESS-DIVE查询。

最简单的心理模型是:

  1. 启动或注册此MCP服务器。
  2. 如果您需要私人数据访问,可以选择添加ESS-DIVE令牌。
  3. 打开你的AI客户端。
  4. 用简单的英语提问。

入门指南

在开始之前,请确保您具备以下先决条件:

  • Python 3.10或更新版本

Python运行 essdive-mcp 服务器本身。

uv 安装项目依赖项并运行服务器。

  • git

git 仅当您想从命令行克隆存储库时才需要。如果你愿意,你可以从GitHub下载ZIP文件作为存储库。

  • 如果您想直接使用MCP服务器,请使用一个支持MCP的客户端:

- 克劳德代码 - 法典 - 在代理模式下使用GitHub Copilot聊天进行VS代码 - 鹅

其他支持MCP的客户端也可能工作。这里列出的客户端只是本README明确记录的客户端。

如何手动检查先决条件:

  • 检查Python:
python3 --version

如果这不起作用,请尝试:

python --version

你需要Python 3.10 或更新。如果没有,请从安装 .

  • 检查 uv:
uv --version

如果你没有 uv,按照Astral官方说明安装:

macOS/Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

Windows PowerShell:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
  • 检查 git:
git --version

如果你没有 git,您仍然可以通过从GitHub下载此存储库作为ZIP文件并在本地提取来继续。

1.下载存储库

选项A:用克隆 git:

git clone https://github.com/ess-dive/essdive-mcp.git
cd essdive-mcp

选项B:在GitHub存储库页面上,使用 Code -> Download ZIP,然后提取ZIP并打开提取的 essdive-mcp 终端或编辑器中的文件夹。

2.检查存储库中的先决条件

克隆或提取存储库并打开 essdive-mcp 在终端中的文件夹中,检查设置的最简单方法是:

./scripts/check_prereqs.sh

如果你的shell报告 Permission denied,运行相同的脚本 bash例如:

bash scripts/check_prereqs.sh

此脚本将检查您是否缺少任何安装工具,如 uv。它不会检查您是否安装了Goose或Claude Code等客户端软件。

3.在本地安装项目

最简单的方法是:

./scripts/setup_local.sh

此脚本:

  • 检查您所需的先决条件
  • uv sync
  • 告诉接下来的步骤

如果您更喜欢手动命令:

uv sync

4.可选择获取ESS-DIVE身份验证令牌

ESS-DIVE在其数据集API文档中记录令牌工作流。

  1. 首选 https://data.ess-dive.lbl.gov
  2. 使用您的ORCID登录
  3. 打开您的个人资料(右上角图标)
  4. 首选 Settings -> Authentication Token
  5. 复制令牌

在本地保存它的最简单方法是:

./scripts/save_token.sh

只有当您想要经过身份验证的访问(如私有数据集)时,才需要此令牌。

重要提示:

  • ESS-DIVE表示,令牌将在24小时后过期。
  • 环境变量名称为 ESSDIVE_API_TOKEN.
  • 您可以通过以下方式进行身份验证 --token, --token-file,或 ESSDIVE_API_TOKEN.

如果您更喜欢手动命令,您仍然可以将令牌保存到 essdivetoken 你自己。

5.本地检查服务器是否正常

最简单的方法是:

./scripts/start_server.sh

此脚本:

  • 检查 uv 可用的
  • 启动MCP服务器
  • 用途 essdivetoken 如果该文件存在,则自动

如果您更喜欢手动命令:

uv run essdive-mcp

如果你想进行身份验证/私有数据访问,你仍然可以显式提供一个令牌:

uv run essdive-mcp --token-file ./essdivetoken

应该发生什么:

  • 过程开始
  • 它似乎坐在那里等着

这是预期的结果。MCP服务器通过标准输入/输出进行通信,因此它不会打印交互式菜单。确认它干净启动后,您可以停止它(用 Ctrl+C,或您系统上的等效程序),然后转到下面的一个客户端设置。

安装并连接到客户端

选择以下客户端之一与ESS-DIVE MCP服务器一起使用。安装客户端桌面应用程序,然后使用此处的说明将客户端连接到MCP服务器。这些是替代方案,而不是顺序步骤。

如果您的首选客户端未在此处列出,请查找该客户端的MCP服务器设置并将其配置为运行:

uv run essdive-mcp

对于托管或容器部署,同一服务器可以通过流式HTTP运行:

uv run essdive-mcp --transport streamable-http --host 0.0.0.0 --port 8000 --path /mcp

客户端选项:

  • VS代码与GitHub Copilot聊天
  • 克劳德代码
  • 法典

VS代码与GitHub Copilot聊天

对于那些想要熟悉的GUI而不是仅限终端的工作流的用户来说,这是一个不错的选择。

GitHub的Copilot MCP文档说需要Visual Studio Code 1.99或更高版本。

在以下位置创建项目范围的MCP配置 .vscode/mcp.json:

{
  "servers": {
    "essdive-mcp": {
      "type": "stdio",
      "command": "uv",
      "args": ["run", "essdive-mcp"]
    }
  }
}

然后:

  1. 在VS Code中打开此存储库。
  2. 打开 .vscode/mcp.json.
  3. 点击 Start 在服务器条目之上。
  4. 打开Copilot聊天。
  5. 将聊天模式切换到 Agent.
  6. 打开工具列表并确认 essdive-mcp 可用。

如果你需要经过身份验证/私有的数据访问,你可以添加一个带有环境变量的令牌:

{
  "servers": {
    "essdive-mcp": {
      "type": "stdio",
      "command": "uv",
      "args": ["run", "essdive-mcp"],
      "env": {
        "ESSDIVE_API_TOKEN": "YOUR_ESS_DIVE_TOKEN_HERE"
      }
    }
  }
}

克劳德代码

注册服务器:

claude mcp add --transport stdio essdive-mcp -- \
  uv run essdive-mcp

然后检查:

claude mcp get essdive-mcp

在Claude Code内部,使用 /mcp 确认服务器已连接。

笔记:

  • --transport, --scope,以及 --env 标志必须位于服务器名称之前。
  • 使用 --scope project 如果您想与此存储库中的其他人共享服务器配置。
  • 添加 --env ESSDIVE_API_TOKEN=... 如果您需要身份验证/私有数据访问。

法典

注册服务器:

codex mcp add essdive-mcp -- \
  uv run essdive-mcp

或手动添加到 ~/.codex/config.toml:

[mcp_servers.essdive-mcp]
command = "uv"
args = ["run", "essdive-mcp"]

然后确认:

codex mcp get essdive-mcp

在Codex TUI中,使用 /mcp 以检查活动的MCP服务器。

如果您需要经过身份验证/私人数据访问,请添加 ESSDIVE_API_TOKEN 到您的Codex MCP服务器环境或传递 --token-file.

托管部署

如果你想跑步 essdive-mcp 作为基于流式HTTP的托管MCP服务器,包括基于Docker的部署,请参阅 docs/HOSTED_HTTP_SETUP.md.

如果您想要最低摩擦的Goose Desktop设置,请使用 快速开始 此README顶部附近的路径。

有关Goose的更详细的截图演练,请参阅 docs/GOOSE_SETUP.md.

对于直接从GitHub运行而无需先克隆此存储库的Goose Desktop扩展:

  • 姓名: essdive-mcp
  • Windows命令: uvx.exe
  • Windows参数: --from git+https://github.com/ess-dive/essdive-mcp essdive-mcp
  • macOS/Linux命令: uvx
  • macOS/Linux参数: --from git+https://github.com/ess-dive/essdive-mcp essdive-mcp
  • 环境:可选 ESSDIVE_API_TOKEN=YOUR_ESS_DIVE_TOKEN_HERE
  • 超时: 300

如果您已经克隆了此存储库,并希望Goose运行您的本地签出,请添加一个自定义STDIO扩展:

  • 姓名: essdive-mcp
  • 命令: uv
  • 论据: run essdive-mcp
  • 超时: 300

如果您需要身份验证/私有数据访问,请设置:

  • ESSDIVE_API_TOKEN=YOUR_ESS_DIVE_TOKEN_HERE

要尝试的第一个查询

从简单的自然语言提示开始。您不需要直接调用工具名称。

ESS-DIVE数据集搜索

尝试以下提示:

  • Find public ESS-DIVE datasets about soil carbon and summarize the top five results.
  • Find public ESS-DIVE datasets about BIONTE sorted by name ascending.
  • Search ESS-DIVE for datasets inside the bounding box [38.9187, -106.9532, 38.9263, -106.9451].
  • Search ESS-DIVE for datasets within 100 meters of 38.8747, -76.5519 and summarize the results.
  • Find ESS-DIVE datasets published in 2024 about wildfire recovery.
  • Look for datasets with temporal coverage between 2020 and 2021 and show the dataset IDs.

数据集详细信息和权限

  • Get the metadata for ESS-DIVE dataset ess-dive-165671432ae620e-20250908T210722395.
  • Show the version history for DOI 10.15485/2529445 and tell me what changed most recently.
  • Show the sharing permissions for ESS-DIVE dataset ess-dive-165671432ae620e-20250908T210722395.

标识符转换

  • Convert DOI 10.15485/2587853 to an ESS-DIVE dataset ID.
  • Convert ESS-DIVE ID ess-dive-165671432ae620e-20250908T210722395 to a DOI.

ESS DeepDive查询

  • Search ESS-DeepDive for temperature-related fields and summarize what datasets they come from.
  • Find ESS-DeepDive fields with the word soil in the definition.
  • Search ESS-DeepDive for temperature fields with at least 100 records.

映射助手

  • Turn the point 38.9219, -106.9490 into map links I can open in geojson.io and Google Maps.
  • Create map links for the bounding box [38.9187, -106.9532, 38.9263, -106.9451].

示例结果

随着ESS-DIVE和ESS-DeepDive的更新,确切的结果会随着时间的推移而变化,但成功的查询应该大致如下。 以下过滤后实例于2026年4月2日针对实况ESS-DIVE API重新检查。

数据集搜索示例

提示:

Search ESS-DIVE for datasets within 100 meters of 38.8747, -76.5519 and summarize the results.

示例结果摘录:

Found 20 datasets. Showing 3 results:

1. COMPASS-FME Terrestrial Ecosystem Manipulation to Probe the Effects of Storm Treatments (TEMPEST) Experiment Level 1 Sensor Data v2-1
   ID: ess-dive-f002e3e8be8a266-20260401T000217538
   Published: 2025
   URL: https://data.ess-dive.lbl.gov/view/doi:10.15485/2588618

2. COMPASS-FME Synoptic Sites Level 1 Sensor Data v2-1
   ID: ess-dive-3aa5e31d62e9ee6-20260331T235820880
   Published: 2025

元数据帖子过滤示例

这些示例使用两步模式:

  1. 运行本机ESS-DIVE /packages 搜索
  2. 获取当前结果页面的完整元数据,并在本地对以下字段进行筛选 creator.affiliation, variableMeasured, funder,或文件格式

这意味着 page_sizerow_start 问题。使用以下示例 page_size=5,因此本地过滤器检查了前5个本地匹配。

提示:

Search ESS-DIVE for "East River" datasets, then keep only results whose creators are affiliated with Lawrence Berkeley National Laboratory.

等效工具调用:

search-datasets with query="East River" and creator_affiliation="Lawrence Berkeley National Laboratory" and page_size=5

示例结果摘录:

Found 3 datasets after local metadata filtering. Scanned 5 API results from 307 native matches:

1. Data for "Depth of nutrient uptake by deep-rooted plants is regulated by water availability"
   ID: ess-dive-4c1829de1b8a2ec-20260401T171210416

2. Mountain Basin Controls on the Snow-to-Streamflow Signal: An AIC-Weighted Multiple Linear Regression Framework
   ID: ess-dive-a63ff0854da2d62-20260330T232846064

3. CHESS 2025: Leaf Area Index (LAI) for meadow, shrub, tree, and understory vegetation
   ID: ess-dive-6d3178c5222ea40-20260327T145831553

提示:

Search ESS-DIVE for "East River" datasets, then keep only results where variableMeasured includes streamflow.

等效工具调用:

search-datasets with query="East River" and variable_measured="streamflow" and page_size=5

示例结果摘录:

Found 1 datasets after local metadata filtering. Scanned 5 API results from 307 native matches:

1. Mountain Basin Controls on the Snow-to-Streamflow Signal: An AIC-Weighted Multiple Linear Regression Framework
   ID: ess-dive-a63ff0854da2d62-20260330T232846064

提示:

Search ESS-DIVE for "East River" datasets, then keep only results funded by NASA.

等效工具调用:

search-datasets with query="East River" and funder="NASA" and page_size=5

示例结果摘录:

Found 1 datasets after local metadata filtering. Scanned 5 API results from 307 native matches:

1. Site and endmember spectra of terrestrial vegetation and soils for the Colorado Headwaters Ecological Spectroscopy Study, June-July 2025
   ID: ess-dive-c938a042bca2b42-20260327T150016394

标识符转换示例

提示:

Convert DOI 10.15485/2588618 to an ESS-DIVE dataset ID.

示例结果:

ess-dive-f002e3e8be8a266-20260401T000217538

反向转换应返回:

doi:10.15485/2588618

项目参考示例

提示:

What is CHESS, and where can I find more information about it?

示例结果摘录:

CHESS stands for Colorado Headwaters Ecological Spectroscopy Study.
It is a remote sensing and field research campaign organized by Rocky Mountain Biological Laboratory
and Berkeley Lab's Watershed Function SFA.
More information: https://ecosis.org/package/proximal-spectra-for-the-2025-colorado-headwaters-ecological-spectroscopy-study--chess-

ESS DeepDive现场搜索示例

提示:

Search ESS-DeepDive for temperature-related fields.

示例结果摘录:

{
  "field_name": "HG_Soil_Temperature_C",
  "unit": "C",
  "definition": "In situ soil temperature",
  "data_type": "numeric",
  "total_record_count": 36,
  "missing_values_count": 10,
  "values_summary": {
    "min": 19.1,
    "max": 26.9
  },
  "doi": "doi:10.15485/2587853",
  "version": "ess-dive-165671432ae620e-20250908T210722395",
  "data_file": "NExpt_ESSDIVE_Datafile.csv"
}

工具级别示例

如果您的客户端支持直接工具调用,则这些示例将与可用工具紧密对应。

对于对话式分页,请在以下步骤后使用有状态的下一页/上一页工具 第一搜索或版本历史请求。如果用户要求“更多”,“下一步 页面”、“继续”或“上一页”,调用 next-search-page, previous-search-page, next-dataset-versions-page,或 previous-dataset-versions-page 而不是重复原始请求。

search-datasets with query="wildfire recovery" and page_size=5
search-datasets with query="BIONTE" and sort="name:asc" and page_size=3
search-datasets with query="BIONTE" and sort="name:asc" and cursor="PASTE_NEXT_CURSOR_HERE"
search-datasets with query="BIONTE" and sort="name:asc" and page_size=3 and format="raw"
next-search-page
previous-search-page
search-datasets with begin_date="2020" and end_date="2021" and format="detailed"
search-datasets with bbox=[38.9187, -106.9532, 38.9263, -106.9451]
search-datasets with lat=38.8747 and lon=-76.5519 and radius=100
search-datasets with query="East River" and creator_affiliation="Lawrence Berkeley National Laboratory" and page_size=5
search-datasets with query="East River" and variable_measured="streamflow" and page_size=5
search-datasets with query="East River" and funder="NASA" and page_size=5
get-dataset with id="ess-dive-165671432ae620e-20250908T210722395"
get-dataset with id="doi:10.15485/2529445" and format="raw"
generate-data-citation with id="doi:10.15485/3014404"
generate-data-citation with id="doi:10.15485/3014404" and access_date="2026-05-06"
generate-data-citation with id="doi:10.1038/nature12373" and access_date="2026-05-06"
get-dataset-versions with id="doi:10.15485/2529445" and page_size=2
get-dataset-versions with id="doi:10.15485/2529445" and cursor="PASTE_NEXT_CURSOR_HERE"
next-dataset-versions-page
previous-dataset-versions-page
get-dataset-status with id="ess-dive-f78cb03d11550da-20260309T160313214"
get-dataset-permissions with id="ess-dive-165671432ae620e-20250908T210722395"
doi-to-essdive-id with doi="10.15485/2587853"
essdive-id-to-doi with essdive_id="ess-dive-165671432ae620e-20250908T210722395"
search-ess-deepdive with field_name="temperature" and page_size=5
coords-to-map-links with points=[[38.9219, -106.9490]] and zoom=12

代理技能

技能是可选的。当您希望代理能够一致地识别重复任务模式时,它们非常有用,例如:

  • 数据集发现和元数据跟踪
  • 数据引文生成
  • DOI和ESS-DIVE ID转换
  • ESS DeepDive现场和文件探索

什么是技能?

  • 技能是一个可重用的指令文档,通常用Markdown编写
  • a技能与MCP服务器不是一回事
  • 技能可以参考MCP工具,但它们不能取代它们
  • 代理可以显式或隐式地使用技能

您也可以在不安装此MCP服务器的情况下使用技能。在这种情况下,它们仍然提供特定于任务的指令和提示模式,其中一些还包括回退API示例。您将无法获得完整的MCP工具集成。

此存储库包括中描述的四种技能 docs/SKILLS.md:

  • essdive-datasets
  • essdive-identifiers
  • essdive-data-citations
  • essdeepdive

Goose桌面技能快速入门

如果你想在Goose Desktop中以最简单的方式尝试这些技能,请使用Goose的标准技能目录,而不是 npx 市场工作流程。

你首先需要的是:

  • Goose Desktop已安装并配置了LLM提供程序
  • 如果需要经过身份验证/私有数据ESS-DIVE查询,则使用ESS-DIVEneneneba API令牌

你不需要Python或 uv 只是为了自己安装技能文件。

如果您还没有设置Goose,请从中的Goose设置说明开始 快速开始 以上或基于屏幕截图的指南 docs/GOOSE_SETUP.md.

重要提示:

  • Goose的官方技能文档称,此功能需要内置 Summon Goose中的扩展 v1.25.0 或更新。
  • 鹅发现技能从 ~/.agents/skills/ 全球技能或 .agents/skills/ 项目级技能。
  • 对于这些ESS-DIVE技能,请保留目录结构,使共享引用文件保持在预期的相对位置。

Goose的官方技能指南在这里:

为了便于安装,请将此存储库的技能树复制到Goose的标准技能位置之一:

.agents/skills/
  essdive-datasets/SKILL.md
  essdive-identifiers/SKILL.md
  essdive-data-citations/SKILL.md
  essdeepdive/SKILL.md
  references/essdive_project_portals.yaml

这意味着:

  • 将文件复制到 ~/.agents/skills/ 如果你想让它们在所有Goose课程中都可用
  • 将文件复制到 .agents/skills/ 如果你想将它们限定在特定项目内

如果您更喜欢手动创建文件,请创建这些目录,然后从该存储库复制粘贴内容:

复制文件后:

  1. 在技能可用的项目中开始一个新的Goose会话。
  2. 问鹅 What skills are available?
  3. 尝试以下提示 Use the essdive-identifiers skill to convert DOI 10.15485/2588618 to an ESS-DIVE dataset ID.

这些技能在与本自述中前面描述的ESS-DIVE MCP设置配合使用时效果最佳,因为这样Goose就可以直接调用ESS-DVE MCP工具。如果没有MCP服务器,技能仍然可以帮助Goose构建与ESS-DIVE相关的任务,但行为更多地取决于Goose的本地工具和后备API使用。

在Claude代码中安装技能

注册本地市场:

/plugin marketplace add ./.claude-plugin/marketplace.json

然后从该市场安装您想要的技能。

在Codex中安装技能

使用辅助脚本:

./scripts/install_codex_skills.sh

这将在中创建符号链接 ~/.codex/skills (或 $CODEX_HOME/skills).

稍后使用以下命令删除它们:

./scripts/uninstall_codex_skills.sh

技能使用示例

您可以按名称要求技能,也可以在相关时让代理人选择。

示例:

  • Use the essdive-datasets skill to find recent wildfire-related datasets and then fetch the metadata for the best match.
  • Use the essdive-datasets skill to search for BIONTE datasets sorted by name ascending and summarize the first three.
  • Use the essdive-datasets skill to search for BIONTE datasets, then continue to the next page with the returned cursor.
  • Use the essdive-datasets skill to search for BIONTE datasets, keep the pagination cursor, and show me the next page if I ask for more results.
  • Use the essdive-datasets skill to search for BIONTE datasets and then show me the next page without exposing the cursor values.
  • Use the essdive-datasets skill to search for BIONTE datasets, then if I ask for more, continue the active search instead of searching again.
  • Use the essdive-datasets skill to list the version history for DOI 10.15485/2529445 and summarize the newest two versions.
  • Use the essdive-identifiers skill to normalize DOI https://doi.org/10.15485/2587853 and return the ESS-DIVE ID.
  • Use the essdive-data-citations skill to generate a citation for DOI 10.15485/3014404 with access date 2026-05-06.
  • Use the essdeepdive skill to search for temperature fields and tell me which data file each result comes from.

技能成果示例

提示:

Use the essdive-identifiers skill to convert DOI 10.15485/2588618 to an ESS-DIVE dataset ID.

示例结果:

ess-dive-f002e3e8be8a266-20260401T000217538

提示:

Use the essdive-datasets skill to search for datasets within 100 meters of 38.8747, -76.5519 and summarize the matches.

示例结果摘录:

Found 20 datasets. Showing 3 results:

1. COMPASS-FME Terrestrial Ecosystem Manipulation to Probe the Effects of Storm Treatments (TEMPEST) Experiment Level 1 Sensor Data v2-1
   ID: ess-dive-f002e3e8be8a266-20260401T000217538

2. COMPASS-FME Synoptic Sites Level 1 Sensor Data v2-1
   ID: ess-dive-3aa5e31d62e9ee6-20260331T235820880

提示:

Use the essdeepdive skill to find temperature fields in ESS-DeepDive and tell me which file they come from.

示例结果摘录:

One matching field is HG_Soil_Temperature_C from DOI doi:10.15485/2587853.
It is defined as in situ soil temperature, stored in NExpt_ESSDIVE_Datafile.csv,
and the observed values range from 19.1 to 26.9 C.

可用工具

ESS-DIVE数据集工具

  • search-datasets
  • next-search-page
  • previous-search-page
  • get-dataset
  • generate-data-citation
  • get-dataset-versions
  • next-dataset-versions-page
  • previous-dataset-versions-page
  • get-dataset-status
  • get-dataset-permissions
  • parse-flmd-file

标识符工具

  • doi-to-essdive-id
  • essdive-id-to-doi

项目参考工具

  • lookup-project-portal

ESS深潜工具

  • search-ess-deepdive
  • get-ess-deepdive-dataset
  • get-ess-deepdive-file

映射工具

  • coords-to-map-links

命令行选项

  • --token, -t:直接提供可选的ESS-DIVE API令牌
  • --token-file:从文件中读取可选的ESS-DIVE API令牌
  • --verbose, -v:启用调试日志记录,并在工具错误响应中包含回溯

环境变量

  • ESSDIVE_API_TOKEN:用于身份验证/私有数据访问的可选ESS-DIVE API令牌
  • ESSDIVE_MCP_VERBOSE:设置为 1, true, yes,或 on 用于详细诊断

测试

运行单元测试:

uv run pytest tests/ -m "not integration"

运行公共匿名访问的实时集成测试:

uv run pytest tests/integration -m integration

要运行经过身份验证的ESS-DIVE集成覆盖率,请设置:

export ESSDIVE_API_TOKEN="YOUR_ESS_DIVE_TOKEN_HERE"
uv run pytest tests/integration -m integration

故障排除

服务器启动后似乎什么也没做

这是意料之中的。MCP stdio服务器等待客户端连接。

我的客户端未显示任何ESS-DIVE工具

检查:

  1. 服务器已正确注册
  2. 服务器已启动
  3. 如果需要,您的客户处于代理模式
  4. 如果你需要私人数据访问,你的令牌是有效的

我收到一个身份验证错误

公共数据集读取不应需要令牌。如果身份验证/私有数据请求失败,请刷新ESS-DIVE令牌并重试。ESS-DIVE表示,代币将在24小时后过期。

我设置了一个环境变量,但经过身份验证的请求仍然失败

变量名必须精确 ESSDIVE_API_TOKEN.

我没有看到我期望从数据集搜索中得到的所有结果

搜索结果将取决于您对私人数据的访问。您无权访问的数据集将不会出现在搜索结果中。如果您正在使用ESS-DIVE令牌,请检查其有效性(请参阅前两期),验证您希望看到的条目是公开的或您有权访问它们,然后重新尝试搜索。

我在LBNL,想使用CBORG支持的模型

这是可选的,不是此项目所必需的。看 docs/CBORG_SETUP.md.

许可证

BSD-3条款

目录标签

目录标签

PythonClaude数据检索数据集查询本地部署ESS-DIVEAI集成科研工具

支持客户端

ClaudeCursorVS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

18

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP