mcp-data-platform-v0.36.2
What's Changed
Five post-v0.36.0 fixes for the portal and admin UI (#202).
Bug Fixes
Admin UI: OIDC authentication for Tools Explore
When an admin logged in via OIDC (browser session cookie), the Tools > Explore tab failed with "no API key found in context" because the internal MCP session only extracted tokens from X-API-Key / Authorization headers. The cookie-based OIDC flow never set those headers, so the MCP auth middleware rejected every tool call.
connectInternalSession now falls back to extracting the id_token stored in the HMAC-signed session cookie via BrowserAuth.ExtractIDToken(), which flows through the MCP ChainedAuthenticator normally.
Files: pkg/admin/tools.go, pkg/admin/handler.go, pkg/browsersession/authenticator.go, cmd/mcp-data-platform/main.go
Portal: My Knowledge page showing "PROD" instead of table names
Entity URN tags displayed the environment suffix (e.g., PROD) instead of the actual table name. The old inline parsing urn.split(",").pop() extracted the last comma-separated segment which is the environment, not the name.
A new shared formatEntityUrn() utility correctly parses urn:li:dataset:(urn:li:dataPlatform:trino,catalog.schema.table,PROD) into catalog.schema.table. Full URN is visible on hover via title attribute.
Files: ui/src/lib/formatEntityUrn.ts, ui/src/pages/knowledge/MyKnowledgePage.tsx
Admin UI: Audit Log tool names displayed as raw snake_case
The Overview tab's Top Tools bar chart and Recent Errors list displayed raw tool names like trino_query instead of human-readable titles. Added useToolTitleMap() to the OverviewTab component and passed the title mapping to both BreakdownBarChart (labelMap) and RecentErrorsList (titleMap).
Files: ui/src/pages/audit/AuditLogPage.tsx, ui/src/components/RecentErrorsList.tsx
Portal: Sidebar label consistency
Renamed sidebar label from "Activity" to "My Activity" for consistency with "My Assets" and "My Knowledge".
Files: ui/src/components/layout/Sidebar.tsx
Test Coverage
- 4 new tests for
ExtractIDToken— valid cookie, no cookie, no id_token in session, expired cookie - 3 new tests for cookie fallback in
connectInternalSession— fallback works, header preferred over cookie, nilBrowserAuth
Installation
Homebrew (macOS)
brew install txn2/tap/mcp-data-platformClaude Code CLI
claude mcp add mcp-data-platform -- mcp-data-platformDocker
docker pull ghcr.io/txn2/mcp-data-platform:v0.36.2Verification
All release artifacts are signed with Cosign. Verify with:
cosign verify-blob --bundle mcp-data-platform_0.36.2_linux_amd64.tar.gz.sigstore.json \
mcp-data-platform_0.36.2_linux_amd64.tar.gz