You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ESM STAC Catalog has grown a rich set of features. With limited funding, the team needs to decide which features to keep and whether maintaining a custom STAC Browser fork is justified.
This issue collects all implemented and planned features as a decision-aid checklist for the upcoming team discussion. Features are grouped by:
Maintenance tier: 🟢 works with stock browser / 🟡 custom API only (no browser changes) / 🔴 requires custom browser fork
The full checklist lives in esm-tools-plus-simcat-features-checklist.md on branch esm-tools-plus/simcat/llm-mcp.
Central Trade-off
Everything in the API/backend layer — scanning, DuckDB, STAC API, CQL2 filtering, NML/paleo/HPC metadata, MCP/LLM tools — works with the stock STAC Browser or no browser at all.
The custom browser fork adds only:
Browser-only feature
Workaround without fork?
Namelist (NML) search UI
Yes – MCP search_collections tool or direct CQL2 API
Visualization panel (click-to-plot)
Yes – MCP preview_item tool
Python code snippets panel
Yes – MCP open_and_run / manual scripting
CQL2 NOT operator fix (upstream bug)
Submit PR to upstream STAC Browser repo
Personal collections UI
No UI workaround; backend API exists
Collection badges on item cards
Minor UX loss only
Decision Scenarios
Option
Browser maintenance effort
What you get
A: Stock browser only
Zero
All backend/API/MCP features; NML search via API/MCP only
B: Stock browser + upstream NOT-fix PR
Minimal (one-time PR)
Same as A, plus CQL2 NOT queries working in browser
C: Maintain custom browser fork
High (JS/Vue + tracking upstream releases)
All currently implemented features
D: API + MCP only, no browser
Zero
Full API + LLM/MCP access; no click-to-explore browser UI
✅ ⭐ 1️⃣ 🟡 HPC storage state (online/nearline/offline, tape recall time) -> Location (DKRZ, AWI, ...) and state (levante, albedo, tape...) (static)
✅ ⭐ 1️⃣ 🟢 FESOM unstructured grid metadata
Visualization
✅ 💡2️⃣/3️⃣ 🔴 ESM Visualization Service browser panel — needs fork; MCP path works without it -> most expensive, requires a server in location, up to the user/location admins
✅ 💡2️⃣/3️⃣ 🟡 FESOM triangular mesh rendering (via MCP preview_item) -> depends on the previous item
📋 ⭐ 2️⃣ 🟡 Read-only public metadata tier for Helmholtz (metadata only, no file paths)
1️⃣ First approach with some access control general assumptions (at AWI) -> in 2️⃣ more granular access (at Helmholz level) control will be enabled and run a workshop for showing how to manage access to already submitted simulations
Browser Fork–Specific (lost if switching to stock)
✅ ⭐ 1️⃣ 🔴 CQL2 NOT operator fix (upstream bug — candidate for upstream PR)
✅ 💡 🔴 Visualization panel
✅ 💡 1️⃣ 🔴 Python code snippets
✅ ⭐ 1️⃣ 🔴 collection badges
Catalogue Server
✅ ⭐ 1️⃣ Virtual machine for hosting the catalogue, browser, etc, services
Questions for the Team
Who are the primary users — Python scripters or non-programmers needing a browser UI?
Is maintaining a JS/Vue browser fork sustainable with current funding?
Is the CQL2 NOT fix worth submitting as a PR to the upstream STAC Browser project?
Is click-to-visualize in the browser a must-have, or is the MCP/LLM path sufficient?
Does the Helmholtz public metadata tier require any browser changes, or is it purely API-side?
Should personal collections / run quality annotations be prioritised enough to justify fork maintenance?
Context
ESM STAC Catalog has grown a rich set of features. With limited funding, the team needs to decide which features to keep and whether maintaining a custom STAC Browser fork is justified.
This issue collects all implemented and planned features as a decision-aid checklist for the upcoming team discussion. Features are grouped by:
The full checklist lives in
esm-tools-plus-simcat-features-checklist.mdon branchesm-tools-plus/simcat/llm-mcp.Central Trade-off
Everything in the API/backend layer — scanning, DuckDB, STAC API, CQL2 filtering, NML/paleo/HPC metadata, MCP/LLM tools — works with the stock STAC Browser or no browser at all.
The custom browser fork adds only:
search_collectionstool or direct CQL2 APIpreview_itemtoolopen_and_run/ manual scriptingDecision Scenarios
Feature Checklist (abbreviated)
Core Cataloging — all 🟢 stock browser compatible
add_files()from tidy phase)Standard STAC API — all 🟢 stock browser compatible
Science-Specific Search
paleo:year, presets: LGM, Eemian, Mid-Holocene)HPC storage state(online/nearline/offline, tape recall time) -> Location (DKRZ, AWI, ...) and state (levante, albedo, tape...) (static)Visualization
preview_item) -> depends on the previous itemLLM / MCP Tools — all 🟡, zero browser dependency
list_collections,get_collection_info,search_collections,search_itemspreview_item,open_and_run,run_python,compare_collectionsAccess Control
Browser Fork–Specific (lost if switching to stock)
Catalogue Server
Questions for the Team