TrinoHub v0.3.0
Added
- MCP nav view. A dedicated screen documenting how to connect an AI client:
endpoint URL, transport, and auth header as copy-able fields; tabbed
configuration for Claude Code, JSON-config clients, andcurl; and an
explicit list of what a connected client can and cannot do. The tool list is
probed live from the control plane's owntools/list, so it cannot drift
from the server. - Teradata JDBC connector, with driver upload and connection checks.
- Trino cross-cluster connector, letting one cluster query another.
- GCS and ADLS Iceberg storage for catalogs.
- CloudFormation can now supply the Ask Trino OpenRouter key at install time.
Changed
- MCP tools return structured output. Every tool declares an
outputSchema
and returnsstructuredContent, so hosts receive typed fields instead of
re-parsing JSON out of a text block. A text block is still sent for older
clients. - MCP protocol version is negotiated rather than hardcoded. The server
speaks revisions2025-03-26,2025-06-18, and2025-11-25, echoing the
client's requested revision when supported and validating the
MCP-Protocol-Versionheader on subsequent requests. - MCP tools are annotated
readOnlyHint/destructiveHint: false, so hosts
can skip per-call confirmation prompts. - An unauthenticated request to
/mcpnow answers with a
WWW-Authenticate: Bearerchallenge instead of a bare401.
Fixed
tools/callno longer blocks the event loop.run_querypolls for up to
~12 seconds and was being called inline from an async handler, stalling the
entire control plane — including the UI and the poller — for that long. It
now runs in a threadpool.- The Scheduled jobs nav item rendered a blank glyph because its
clock
icon was missing from the registry.
Upgrading
No migration or configuration change is required. Existing MCP clients keep
working: the endpoint still answers 2025-03-26 for clients that request it,
and the text block in tool results is unchanged.
If you have restricted access with Allowed UI CIDRs, note that /mcp is
gated by that same allowlist — a remote MCP client must connect from an
allowed range. This was already true; the MCP screen now states it.