io.github.krnzt/ecoscope
EcoScope
EcoScope 是一个本地优先的生态数据工作台,以标准 Model Context Protocol 服务器形式对外提供。它让 Codex、Claude 及其他 MCP 智能体能够发现、物化、查询、可视化、选择和引用科学数据,而无需将凭据、私有路径或数百万行数据放入模型上下文。
NEON 是首个内置远程提供方。本地表格、栅格、矢量、点云、图像、高光谱和 N 维数组数据源使用相同的、与提供方无关的清单、查询、视图、选择和溯源模型。
“将这个 NEON LiDAR 瓦片与其高光谱立方体进行比较。让它们同时显示,让我选择单个回波或图像像素,然后查询我的选择背后的确切源点或光谱。”

一个使用 Rerun Web Viewer 的真实 EcoScope 浏览器会话:一个 660 万点的 NEON LAS 瓦片、一个 500×500×107 反射率立方体、不可变的溯源信息,以及一个映射回 LAS 源行 1,800,316 的已验证选择。
人类与智能体协作循环
scientific question
→ discover products, sites, and local assets
→ construct and approve a reproducible data plan
→ materialize immutable, checksum-verified sources
→ query and render a bounded multimodal Rerun view
→ human clicks, brushes, filters, or selects
→ EcoScope records that interaction as scientific state
→ agent queries the exact selected source data
→ export results, transformations, provenance, and citation可视化不仅仅是供模型检查的图片。EcoViewSpec 是权威视图状态,SemanticSelection 是权威交互状态。Rerun 录制是一种可再生成的渲染产物。对于经过验证的 EcoScope 点批次,实例拾取可映射回确切的 LAS/LAZ 源行;对于映射后的立方体,图像点击可映射回完整的源光谱。
Related MCP server: Data Discovery Tool MCP Server
alpha 版本中可用的功能
一个常规的 MCP 2026-07-28 stdio 服务器,可注册到 Codex 和 Claude Code。
公开的 NEON 目录发现,以及可复现的计划、审批、后台物化、校验和、发布、许可和引用处理。
带流式指纹和面向智能体的不透明数据集 ID 的带外本地导入。
Arrow/DataFusion 表格查询、空间栅格/矢量查询、索引化 COPC 读取,以及有界的 HDF5/NetCDF/Zarr N 维切片。
面向表格、图像、GeoTIFF、矢量、LiDAR 和映射科学立方体的原生及浏览器 Rerun 视图。
持久化的人类选择,可转换为带溯源链接的源查询,并可导出为 CSV、Parquet、COG 或 RO-Crate(如适用)。
与语言无关的社区提供方子进程,采用带版本号的 JSON-RPC 契约;RI 贡献者可以使用 Rust、Python、R、Go 或其他语言进行开发,而无需添加提供方特定的 MCP 工具。
详细的支持范围和注意事项请参见格式矩阵。设计边界记录在架构和实现决策中。
安装并查看运行效果
alpha 版本提供独立的 macOS universal 和 Linux x86-64 软件包。您不需要 Rust、Node.js、CMake 或单独的 Rerun 安装:
curl -fsSL https://raw.githubusercontent.com/krnzt/ecoscope/v0.1.0-alpha.1/scripts/install.sh | sh安装程序会验证发布版的 SHA-256,默认安装到 ~/.local,并运行 ecoscope setup。设置 ECOSCOPE_INSTALL_DIR 可选择其他前缀。如果 ~/.local/bin 尚未加入您的 PATH,请先添加再继续。
创建一个确定性的 LiDAR + 高光谱演示,并在附带的 Rerun 浏览器查看器中打开:
ecoscope demo synthetic生成的 LAS 和 HDF5 文件与用户数据一样,经过相同的导入、清单、立方体映射、Rerun 录制和选择查询路径。无需网络或凭据。还可选择加入官方的 NEON 教学数据演示(约 224 MiB):
ecoscope demo neon --accept-download注册常规 MCP 服务器
EcoScope 以 io.github.krnzt/ecoscope 发布在官方 MCP Registry 中。它也是一个常规的本地 stdio 服务器:Codex、Claude Code 及任何兼容主机都启动相同的 ecoscope mcp 进程并发现其工具。
ecoscope register codex
ecoscope register claude两个注册命令都可以安全地重复执行,并会保留已有的 EcoScope 条目。面向特定平台的 MCPB 软件包随每个发布版本附带,供安装 MCPB 包的主机和注册表使用。
等效的主机命令是:
codex mcp add ecoscope -- /absolute/path/to/ecoscope mcp
claude mcp add --scope user ecoscope -- /absolute/path/to/ecoscope mcp通用 MCP 配置:
{
"mcpServers": {
"ecoscope": {
"command": "/home/you/.local/bin/ecoscope",
"args": ["mcp"]
}
}
}注册后,主机像启动任何其他本地 MCP 服务器一样启动 EcoScope,协商协议,发现其工具,并接收有界的结构化结果,而不是批量科学文件。
使用本地科学文件
ecoscope import examples/observations.csv
ecoscope datasets
ecoscope preview ds_... --limit 20
ecoscope create-view --name "Site comparison" ds_...
ecoscope open view_...本地路径在终端中选择,绝不会作为 MCP 参数传递。私有 SQLite 注册表保留源路径;智能体收到不透明的 ID、校验和、显示名称、科学元数据和溯源信息。同一路径支持格式矩阵中的栅格、矢量、点云、图像和立方体格式。
NEON
元数据发现不需要凭据。精确的文件规划和下载使用存储在模型上下文之外的 NEON API 令牌:
./target/release/ecoscope connect-neon提示不会回显该令牌。EcoScope 将其存储在操作系统钥匙串中,并且只在 X-API-Token 请求头中向上游发送。无头系统可以通过其密钥管理器注入 NEON_API_TOKEN。
多维数据
EcoScope 在清点立方体数组时不会猜测有歧义的科学含义。当 X、Y 和光谱轴无歧义时,会推断常见的 NEON 反射率约定。否则,映射将是显式且带版本修订的:
./target/release/ecoscope configure-cube view_... \
--layer-id layer_1 \
--cube-array /SITE/Reflectance/Reflectance_Data \
--y-axis 0 --x-axis 1 --spectral-axis 2 \
--wavelength-dataset /SITE/Reflectance/Metadata/Spectral_Data/Wavelength \
--red-band 14 --green-band 9 --blue-band 5与提供方无关的 MCP 等效命令是 configure_cube_view。
社区提供方
NEON 是内置的,但架构并不是围绕 NEON 定制的。使用以下命令安装受信任的、与语言无关的提供方可执行文件:
./target/release/ecoscope provider install ./my-provider.json
./target/release/ecoscope provider list安装过程会进行协议握手,并验证提供方的身份、能力、响应边界和声明的 HTTPS 来源。提供方可执行文件是受信任的本地代码,而非沙箱化插件,并且永远不会收到凭据值。完整的传输契约、一致性测试夹具和安全模型请参见提供方 SDK。
已知限制
目前 EcoScope 是本地 stdio MCP;远程 Streamable HTTP 和 OAuth 尚未实现。
alpha 版本的 macOS 可执行文件未经过 Apple 公证。macOS 可能需要显式的首次运行批准;发布版校验和仍然保护工件完整性。
浏览器资源管理器使用 Rerun 的 WebGL 渲染器,以获得可靠的软件和 CI 支持。原生 Rerun 仍然是超大场景下上限更高的界面。
Rerun 会暴露实体/实例选择事件,但不是为每种视图都提供一个通用笔刷协议。显式区间、地图、栅格、光谱和行选择使用相同的
record_selection/query_selection路径。GeoParquet 支持精确的 GeoDataFusion 查询,但还不支持直接向 Rerun 记录几何数据;GeoPackage 目前只有检查功能,没有查询适配器。
EcoScope 派生的 COPC 索引提供全分辨率空间访问,但尚不包含达到提供方质量的多分辨率层级结构。
纯 Rust 的 NetCDF-3 适配器只能对整个变量进行有界解码,因为其读取器目前不提供子集 I/O。
开发
从源码构建需要 Rust 1.95、Node.js 22、CMake 和一个 C/C++ 编译器。Linux 使用内置的静态 D-Bus 客户端来访问钥匙串。
git clone https://github.com/krnzt/ecoscope.git
cd ecoscope
npm --prefix viewer/web-bootstrap ci
npm --prefix viewer/web-bootstrap run build
cargo build --release
./target/release/ecoscope setup使用以下命令运行完整的验证套件:
cargo fmt --check
cargo clippy --workspace --all-targets -- -D warnings
cargo test --workspace
npm --prefix viewer/web-bootstrap run check
npm --prefix viewer/web-bootstrap run build
npm --prefix viewer/web-bootstrap exec -- playwright install chromium
npm --prefix viewer/web-bootstrap run test:e2e
npm --prefix viewer/web-bootstrap audit --omit=dev一个可选的集成测试会使用已发布的 NEON 教学子集:一个 6,609,829 点的 LAS 瓦片和一个 500×500×107 的 HDF5 反射率立方体。
curl -fL -o /tmp/neon-point-cloud.las https://ndownloader.figshare.com/files/7024955
curl -fL -o /tmp/neon-hyperspectral.h5 https://ndownloader.figshare.com/files/21754221
NEON_POINT_CLOUD_FIXTURE=/tmp/neon-point-cloud.las \
NEON_HYPERSPECTRAL_FIXTURE=/tmp/neon-hyperspectral.h5 \
cargo test -p ecoscope-rerun --test official_neon_fixtures -- --ignored在 Rust 和浏览器构建之后,使用 scripts/package-release.sh target/release/ecoscope dist macos-arm64 darwin 构建本地 MCPB 和归档工件(在 Linux 上替换为 linux-x86_64 linux)。标签工作流会构建并合并两种 macOS 架构,验证 Linux 链接,发布带校验和的发布资产,并使用 GitHub OIDC 提交生成的 server.json。
项目状态
EcoScope 是早期公开 alpha 版本。科学数据模型、提供方契约和 Rerun 边界都设计为可扩展,但在第一个稳定版本发布之前,API 和打包方式仍可能发生变化。
欢迎生态研究人员、数据管理员、Research Infrastructure 团队、可视化开发人员和科学格式专家贡献。首批良好合作方向包括代表性元数据测试夹具、格式适配器、选择语义、可访问性和可复现的生态演示。在开始大型提供方或查看器改动之前,请先阅读 CONTRIBUTING.md 并提交一个 issue。
EcoScope 以 MIT 许可证发布。Rerun 按其 MIT/Apache-2.0 许可证使用;内置软件包在 THIRD_PARTY_NOTICES.md 中保留所需的声明。
This server cannot be deployed
Maintenance
Related MCP Connectors
Governed data discovery, exact queries, decisions, simulations, and runtime utilities over MCP.
Search and preview datasets publicly. Account-required full data via MCP.
Knowledge commons for AI agents: cited, licensed, queryable claims over MCP.
Experimental MCP for discovering and purchasing explicitly published, versioned Agent knowledge.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to interact with the OSDU® data platform through Model Context Protocol, providing tools for search, storage, schema management, and dataset operations.2Apache 2.0
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to search and discover data across SQLite and CSV sources through an MCP interface, with metadata indexing and fuzzy search capabilities.MIT
- AlicenseAqualityDmaintenanceAn MCP server that gives LLM agents typed, cached access to civic open-data portals via Socrata (SODA 2.1 + Discovery API), enabling search, query, profiling, sampling, and CSV export of datasets.6MIT
- FlicenseNot gradedqualityBmaintenanceExposes schema, lineage, and data-quality trust signals from a SQLite-backed catalog as MCP tools, enabling AI agents to answer grounded questions about datasets without hallucinating.-