to match documentation, improved dark mode styling for feedback buttons, and updated the system prompt to prevent multiple generative UI widgets per response. (Author: @adaam2 )
Settings page with tabs routing#1747 - Improved the settings page with tabbed routing and logging API integration. (Author: @adaam2 )
Hooks, telemetry attribute filtering, and identity passthrough
This release introduces an initial implementation of Gram hooks for tool capture, adds dynamic attribute filtering for telemetry logs, and enables passing authenticated user emails to functions.
Features
Gram hooks for tool capture#1755 - Added Gram hooks that capture tool invocations, enabling observability into tool usage. (Author: @chase-crumbaugh )
Telemetry attribute filtering#1751 - Added the ability to filter telemetry logs by dynamic attributes on the logs page. (Author: @tgmendes )
Identity passthrough for functions#1771 - Function authors can now receive the authenticated Gram user's email by setting
Settings page improvements#1747 - Improved the settings page with tabbed routing and logging API integration. (Author: @adaam2 )
Server instructions section#1729 - Moved server instructions to a dedicated section with LLM-generated best practices for MCP server instructions. (Author: @simplesagar )
External auth user ID tracking#1746 - Added the ability to track external auth user IDs in telemetry logs by extracting JWT subject from external MCP OAuth tokens. (Author: @tgmendes )
Zod v4 upgrade#1717 - Upgraded Zod to v4 across the monorepo and bumped
This release adds the ability to install Slack apps directly through the Gram dashboard, and introduces a new CLI command for cloning and redeploying existing deployments.
Features
Slack app installation through Gram UI#1711 - Added the ability to install Slack apps through the Gram UI with OAuth-based installation, per-app event handling, and legacy cleanup. (Author: @qstearns )
command to clone and redeploy existing deployments, with a visible redeploy button on every deployment detail page and deployments navigation on the sources page. (Author: @simplesagar )
Bug fixes
Tool call logs count shown but empty state#1708 - Fixed an issue where the tool call logs count was displayed but the content showed an empty state. (Author: @simplesagar )
Telemetry attribute filtering and built-in logs MCP server
This release adds telemetry attribute key listing and arbitrary attribute filtering to the logs API, and exposes project logs as a built-in MCP server for querying through any LLM client.
Features
Telemetry attribute key listing API#1712 - Added a
endpoint to retrieve distinct attribute keys for telemetry filtering. (Author: @tgmendes )
Arbitrary attribute filtering for search logs#1701 - Added a new filtering option to the search logs endpoint to filter by any attribute. (Author: @tgmendes )
Built-in logs MCP server#1665 - Exposed project MCP logs as a built-in logs MCP server that comes pre-deployed, enabling interaction with logs through any LLM client. (Author: @simplesagar )
Bug fixes
Source detail page crash without logs#1687 - Prevented the source detail page from crashing when logs are not enabled by gracefully degrading without metrics. (Author: @qstearns )
Logs page and AI Insights UI improvements#1658 - Improved logs page timestamp display, fixed tree line alignment in expanded log rows, filtered out chat completion logs from tool calls list, added click-outside-to-close for AI Insights sidebar, and removed Beta labels from AI Insights. (Author: @adaam2 )
Diagnostic hints for function runner failures#1698 - Added diagnostic hints for Node.js module loading failures in the functions runner. (Author: @simplesagar )
Tool call logging and redesigned source detail page
This release adds opt-in logging for tool call inputs and outputs, and redesigns the source detail page with a two-panel layout showing deployments and invocation activity.
Features
Opt-in tool call input/output logging#1657 - Added an opt-in toggle to record tool call inputs and outputs in logs for easier debugging and observability. (Author: @tgmendes )
Redesigned source detail page#1577 - Redesigned the source detail page with a two-panel layout showing deployments and invocation activity, giving a high-level overview of a source's utilization across MCP servers. (Author: @simplesagar )
Bug fixes
Open CORS policy on /openapi.yaml#1659 - Updated CORS policy on
and set the content type to
to avoid browser download prompts. (Author: @disintegrator )
Wire up add another button in environment variables sheet#1639 - Fixed the "Add another" button in the environment variables sheet to properly add new variable rows. (Author: @simplesagar )
This release makes the Temporal task queue configurable to support staging and preview deployments.
Features
Configurable Temporal task queue#1646 - Refactored the server to make the Temporal task queue configurable, unblocking staging and preview deploys. (Author: @disintegrator )
This release displays Elements errors directly in the chat interface and adds automatic session token refresh before chat requests.
Features
Show Elements errors inside the chat#1633 - Elements errors now appear directly in the chat conversation for easier debugging. (Author: @chase-crumbaugh )
Auto-refresh expired session tokens#1615 - Added JWT expiry detection with a 30-second buffer, deduplicates concurrent refresh calls via
, and falls back to the stale token on failure. Refresh is automatic for non-static sessions and skipped during replays. (Author: @walker-tx )
Inline error display and insights dashboard improvements
This release surfaces Elements errors directly inside the chat interface and reorders the insights dashboard to prioritize tool metrics.
Features
Reorder insights dashboard#1641 - Reordered the insights dashboard to show tool metrics first, making the most actionable data immediately visible. (Author: @simplesagar )
Bug fixes
Show Elements errors inside the chat#1633 - Elements errors now appear inline within the chat interface instead of failing silently. (Author: @chase-crumbaugh )
This release improves MCP server authentication by automatically attempting OAuth discovery when servers return an auth rejected error, and fixes same-origin request failures in chat sessions.
Features
CLI commands tab in OpenAPI version update modal#1624 - Added a CLI commands tab to the OpenAPI version update modal for quick access to CLI-based update workflows. (Author: @simplesagar )
Bug fixes
OAuth discovery for MCP servers returning AuthRejectedError#1597 - When an MCP server returns a 401 without a
header, the platform now attempts OAuth discovery instead of silently skipping authentication setup. This fixes the missing authentication section for catalog MCP servers that don't implement OAuth 2.1 natively. (Author: @simplesagar )
Same-origin requests in chat sessions CORS#1616 - Fixed "Origin does not match audience claim" errors for same-origin requests. The middleware now validates the Host header against audience claims when the Origin header is absent, allowing legitimate same-origin requests while still preventing cross-origin bypass attacks. (Author: @adaam2 )
Persist external MCP tool annotations#1596 - Annotations from external MCP servers in the Catalog are now persisted to the database. (Author: @simplesagar )
This release adds tool annotation badges to the sidebar, restores resources and prompts tabs on MCP detail pages, and fixes external MCP tool deployment stats.
Features
Resources and prompts tabs on MCP details page#1555 - Restored the resources and prompts tabs to the MCP server details page. (Author: @simplesagar )
Tool annotation badges in sidebar#1570 - Added tool annotation badges to the tool list sidebar for quick visibility into tool behavior hints. (Author: @simplesagar )
Bug fixes
External MCP tool deployment stats#1585 - Fixed an issue where external MCP tools were not accounted for in deployment stats. (Author: @qstearns )
This release introduces a comprehensive observability suite including telemetry logs, traces, chat logs with AI-powered resolution analysis, and an overview dashboard with time-series metrics.
Features
Observability overview page#1551 - Added observability features including telemetry logs, traces, chat logs with AI-powered resolution analysis, and an overview dashboard with time-series metrics. (Author: @adaam2 )
Chat logs improvements#1563 - Improved observability chat logs with server-side sorting, sticky pagination with page count, N/A score indicator with tooltip for unscored sessions, Shiki syntax highlighting for code blocks, character-based truncation with "Show more" button, System Prompt tab in chat detail panel, and tool result labeling for tool messages. (Author: @adaam2 )
4xx HTTP responses treated as errors#1565 - Added a system prompt instruction to treat 4xx HTTP responses as errors in AI observability analysis. (Author: @adaam2 )
Bug fixes
OpenAPI spec URL upload preview#1506 - Fixed a UI bug where the OpenAPI spec provided by URL upload was not fetched, leading to a blank preview. (Author: @DhashS )
This patch release adds support for MCP tool annotations in the elements library, providing additional metadata about tool behavior to help clients understand how to present and manage tools.
This release adds support for MCP tool annotations, providing additional metadata about tool behavior to help clients understand how to present and manage tools.
Features
MCP tool annotations support#1553 - Added support for MCP tool annotations on external MCP servers sourced from the Catalog as well as HTTP-based tools. Annotations include
,
,
,
, and
. Tool annotations can be edited in the Playground or in the tools tab of a specific MCP server. (Author: @simplesagar )
This patch release adds support for forwarding and storing user feedback, incorporating it into chat resolution analysis for better conversation outcome tracking.
Features
User feedback forwarding and storage#1504 - Added support for forwarding and storing user feedback. The stored user feedback is incorporated into chat resolution analysis. (Author: @chase-crumbaugh )
This release overhauls the chart plugin and generative UI system with React 19 compatibility, themed components, and improved developer experience.
Features
Chart plugin overhaul#1539 - Replaced Vega-Lite with Recharts for React 19 compatibility, added themed tooltips using CSS variables with oklch colors, and updated chart stories to use MCP orders summary tool. (Author: @adaam2 )
Generative UI improvements#1539 - Added macOS-style window frames with traffic light buttons and whimsical cycling loading messages with fade transitions. Streamlined LLM prompt from approximately 150 lines to a concise bulleted format. (Author: @adaam2 )
Bug fixes
ActionButton tool execution#1539 - Fixed ActionButton to execute tools via the
hook. Aligned Text, Badge, and Progress props with the LLM prompt specification. Fixed catalog schema
to
mismatch and
cleanup in CyclingLoadingMessage. (Author: @adaam2 )
OAuth support for testing in the Playground for Catalog sourced mcp servers and per-user metrics
This release adds OAuth support for external MCP servers in the Playground, per-user metrics and log filtering, and customizable documentation button text on MCP install pages.
Features
OAuth support for external MCP servers#1323 - Added OAuth authentication support for external MCP servers in the Playground, enabling secure connections to OAuth-protected MCP services. (Author: @simplesagar )
Per-user metrics and log filtering#1501 - Added a new endpoint to get metrics per user and the ability to filter logs per user. (Author: @tgmendes )
Chat resolution telemetry#1514 - Added writing of chat resolution telemetry data for tracking conversation outcomes. (Author: @tgmendes )
Customizable documentation button text#1494 - Added the ability to customize documentation button text on the MCP install page. (Author: @DhashS )
Bug fixes
OpenAPI parse errors surfaced in UI#1495 - Fixed an issue where OpenAPI parse errors were not surfaced in the UI. (Author: @DhashS )
Metrics loading with disabled logs#1484 - Fixed an issue with loading metrics when logs are disabled. (Author: @tgmendes )
MCP server creation with sources but no toolsets#1471 - Fixed an issue preventing MCP server creation when a project has sources but no toolsets. (Author: @simplesagar )
This patch release fixes an issue where tool group counts showed inflated numbers when loading chat history.
Bug fixes
Tool group count showing inflated numbers#1483 - Fixed tool group count displaying inflated numbers when loading chat history. The server accumulates all tool calls from a turn into each assistant message, causing duplicate tool-call parts when converting messages for the UI. Added deduplication in the message converter so each tool call appears only once. Also fixed
silently dropping tool calls when assistant content is a string. (Author: @adaam2 )
This patch release adds backend support for generating chat resolutions, enabling automated summarization and resolution tracking for conversations.
Features
Chat resolution generation#1458 - Added backend support for generating chat resolutions, allowing the platform to automatically create resolution summaries for completed conversations. (Author: @chase-crumbaugh )
Gram Elements now supports React 16 and 17 applications through a new Vite plugin that polyfills React 18 APIs.Applications running older React versions can add a single line to their Vite config to automatically polyfill
,
,
,
,
, and
— all React 18 APIs used by Elements and its dependencies.