Skip to content

mcp-data-platform-v1.47.0

Choose a tag to compare

@github-actions github-actions released this 01 Apr 22:58
· 213 commits to main since this release
c7122f0

Collections

This release adds the collections system to the Admin Portal — curated, ordered groups of assets organized into sections with rich markdown descriptions. Collections are the primary way to assemble assets into shareable packages like executive review decks, regional analysis bundles, or onboarding kits.

What's new

Collections CRUD

  • Create, edit, view, and delete collections from the portal sidebar
  • Each collection contains ordered sections, each with a title, markdown description, and an ordered list of asset references
  • Drag-and-drop reordering for both sections and items within sections
  • Full markdown support in descriptions (GFM tables, code blocks, mermaid diagrams, blockquotes)

Asset browser

  • Full-screen modal for browsing and adding assets to collection sections
  • Live search by name, description, and tags with sortable results
  • Thumbnail previews inline in the browser

Asset preview modal

  • Quick-view any asset's rendered content without navigating away
  • Available in both the asset browser and the My Assets list

Collection thumbnails

  • Auto-generated mosaic thumbnails composited from up to 4 asset thumbnails
  • Generated in a background queue on the collections list page
  • Configurable thumbnail display size per collection (large, medium, small, none)

Sharing

  • Share collections via public links (token-based, time-limited) or user shares (email, viewer/editor permission)
  • Public collection viewer renders markdown with the same fidelity as asset shares (mermaid, GFM, code blocks)
  • Assets open in a full-screen modal overlay within the public viewer
  • Share management: view active shares, copy public links, revoke access

Context-aware navigation

  • URL paths encode navigation context (/collections/:id/assets/:assetId, /shared/assets/:id)
  • Back arrow always returns to the correct parent level, not browser history

Collection associations on assets

  • My Assets grid and table views show which collections contain each asset as clickable badges
  • Aggregated asset tags displayed on collection list cards

Grid/table view toggle

  • Persistent toggle between thumbnail grid and dense table view for My Assets and Shared With Me pages
  • Preference stored in localStorage, shared across pages

API

Method Endpoint Description
POST /api/v1/portal/collections Create collection
GET /api/v1/portal/collections List user's collections
GET /api/v1/portal/collections/{id} Get collection with sections and items
PUT /api/v1/portal/collections/{id} Update name and description
DELETE /api/v1/portal/collections/{id} Soft delete
PUT /api/v1/portal/collections/{id}/config Update collection settings
PUT /api/v1/portal/collections/{id}/sections Replace all sections (full structure)
PUT /api/v1/portal/collections/{id}/thumbnail Upload thumbnail
GET /api/v1/portal/collections/{id}/thumbnail Get thumbnail
POST /api/v1/portal/collections/{id}/shares Create share
GET /api/v1/portal/collections/{id}/shares List shares
GET /api/v1/portal/shared-collections List collections shared with current user
GET /portal/view/{token} Public collection viewer (extends existing route)
GET /portal/view/{token}/items/{assetId}/content Public item content
GET /portal/view/{token}/items/{assetId}/thumbnail Public item thumbnail
GET /portal/view/{token}/items/{assetId}/view Public item full viewer

Database migrations

Three new migrations are applied automatically on startup:

  • 000023portal_collections, portal_collection_sections, portal_collection_items tables with indexes
  • 000024 — Extends portal_shares with collection_id column and a CHECK constraint enforcing exactly one of asset_id/collection_id
  • 000025 — Adds config JSONB column to portal_collections for extensible per-collection settings

Dev harness improvements

  • Seed data includes 3 collections with sections, items, and a public share
  • 50 fresh audit events with unique IDs added each restart for realistic activity
  • S3 content upload skipped if content already exists (preserves thumbnails across restarts)
  • .air.toml watches .html and .sql files for template/migration hot-reload

CI dependency updates

  • actions/deploy-pages 4.0.5 → 5.0.0
  • actions/setup-go 6.3.0 → 6.4.0
  • codecov/codecov-action 5.5.3 → 6.0.0
  • sigstore/cosign-installer 4.1.0 → 4.1.1

Installation

Homebrew (macOS)

brew install txn2/tap/mcp-data-platform

Claude Code CLI

claude mcp add mcp-data-platform -- mcp-data-platform

Docker

docker pull ghcr.io/txn2/mcp-data-platform:v1.47.0

Verification

All release artifacts are signed with Cosign. Verify with:

cosign verify-blob --bundle mcp-data-platform_1.47.0_linux_amd64.tar.gz.sigstore.json \
  mcp-data-platform_1.47.0_linux_amd64.tar.gz