New data source: Freshdesk
Freshdesk — support tickets.
Three new data sources
ClickUp, Make and Zoho CRM
- ClickUp — tasks and project work.
- Make — automation scenarios.
- Zoho CRM — sales pipeline and CRM records.
Editor improvements
- Cover, contents and thank-you pages open their settings in the grid editor.
- Both logo upload tiles show the recommended size.
Fixes
- Canvas freeze when resizing a widget.
- Meta Ads custom metrics no longer fail when access to one part is denied.
- Meta Ads and Facebook previews now show in the side panel.
Mailchimp and Instagram Reels fixed
- Mailchimp campaigns and automations only show for the selected date range.
- Instagram Reels — removed two metrics Instagram no longer supports for Reels.
MCP: 151 tools, a report preview, and a read-only data query
The connector got smaller, and three things it was missing
188 tools became 151. Over 39 days of connector traffic, 81 tools were never called once. The account-administration surface — notifications, API keys, billing, branding, company, custom domains, folders, media folders and email composing — is gone from MCP and stays in the app. That keeps 99.7% of the calls agents actually make, and cuts the tool list every connection has to read from 285 KB to 227 KB.query_data reads live metric values for any date range without touching a
report. Previously the only route to fresh numbers was refresh_widgets, which
writes results back onto the report — so a read-only ChatGPT or Claude
connection correctly declined it and could do no analysis at all. The REST
endpoint behind it, POST /v1/data/query, is unchanged.preview_report renders the live report inside the conversation, branded as
the client sees it. Layout problems — overlapping widgets, a cut-off heading,
bad spacing — are invisible in a widget list and obvious in the page. Hosts that
don’t allow an external page to be embedded get the report’s shareable URL
instead.whoami answers “which account am I connected to?” in one call: the user,
the account, the plan and its usage.Text widgets accept Markdown
add_text_widget and update_text_widget now render # ## ### headings,
lists, **bold**, *italic*, quotes, code and links — so an executive summary
written over MCP looks like one written by hand. Reading a text widget returns
Markdown too, which makes “update the summary” an edit rather than a rewrite.
Merge tags like {{client_name}} survive that round trip.Parameter renames
The same object had two names depending on which tool you were holding, and callers were rejected for using the one they had just been given.list_widgets and list_pages are now report-only; templates use
list_template_widgets and the new list_template_pages. MCP clients read the
schema each session, so nothing needs reconfiguring — but a saved prompt that
names the old fields should be updated.Fixes
- PDF status —
get_pdf_statussucceeded about one time in seven. Job state lived in one server’s memory while the API runs across several, so the poll usually landed somewhere that had never seen the job. It now reads the export record, which is shared. This affected the app’s endpoint too, not just MCP. - Page ordering —
positionwas written without moving anything else, so inserting at an occupied slot left two pages claiming it. Inserting now opens a gap and moving closes one. - Deleting a page left its widgets behind, attached to a page that no longer existed. They now go with it, and are restorable from the report’s history.
- Widget date ranges — a widget reading “Last 30 Days” reported the window from whenever it was last saved. The numbers were always correct; the dates shown alongside them are now resolved the same way.
get_widget_datareturns data only. It used to lead with an instruction about how to present the results, which could override what was actually asked for.
Two new data sources
Harvest and Clockify
- Harvest — time tracking and invoicing.
- Clockify — time tracking.
Free canvas layout for multi-page reports
Place widgets anywhere on the page
A new Multi-Page Report is now built on a free canvas: widgets go anywhere on the page, at any size, instead of snapping to rows and columns. Drag one and alignment hairlines appear against the page edges, its centre lines and every other widget; equal gaps snap and label themselves in pixels. Rubber-band select a group and move it as one, or drag a widget straight onto another page.The New Report flow asks which you want when you start from scratch — Free canvas or Grid — with a preview of each. Free canvas is the default.Existing reports and all dashboards stay on the grid, unchanged. The choice is made once, at creation: widget positions are stored in the units they were authored in, so a report can’t switch engines afterwards.Resize a whole selection at once
A group resizes as one object
Select several widgets on a free canvas and the selection draws a box with its own handles. Drag one and every widget scales together — and so do the gaps between them, so the arrangement keeps its shape instead of the widgets growing into each other.Shrinking stops when the first widget reaches its own minimum size, rather than letting one be squashed past the point of being readable while the rest still have room.Both layouts share one Pages panel and one Add Content
The grid report gets the canvas’s editing surface
Everything that isn’t widget geometry is now the same in both layouts:- the Pages panel — cover, contents, every page and thank-you in one list, each with its settings inline
- the page tab on the selected page — rename in place, add after, duplicate, reorder, delete
- a New page button below the last page, so you can add one from where the report actually ends
- the empty-page card, which offers the first widget outright rather than telling you to drag something
- the selected-page ring, and square page corners
Per-report cover and thank-you overrides
Override the theme on a single report
A report’s cover heading, subheading and artwork — and its thank-you heading and message — can now be set on the report itself, overriding whatever the theme says. Leave a field blank and it goes back to inheriting the theme, so one report can depart from a shared theme without cloning it.Contents pages that spill onto a second sheet
Every contents sheet is its own page
A long report’s table of contents runs to more than one sheet. Those extra sheets were part of the finished document and you could scroll to them, but they never appeared in the page list. Each now gets its own row — in the editor’s Pages panel and in the reader’s navigation — labelled Table of Contents continued, numbered, and clickable.Reading a report
A cleaner reading view
Opening a report to read it, rather than edit it:- the header spans the window and the page list sits beneath it, as part of the document rather than a second piece of app chrome
- page names show a tooltip, so a long one can be read in full
- on mobile the page list stays collapsed to numbers instead of taking a third of the screen, and a phone gets the page list in a sheet
Date range changes save from the header
Changing the date range outside edit mode saves
The date picker in the report header carried a note saying view-only changes weren’t saved. They always were — the range is written straight through and every data widget re-fetches. The note was wrong and is gone.PDF export is Multi-Page Reports only
Dashboards no longer export to PDF
A Dashboard is one continuous scrolling view with no page boundaries, so there is nothing to paginate — rendering one produced a single over-long sheet. PDF export is now a Multi-Page Report feature.Dashboards no longer show the Download tab, the Allow PDF Download option, or the download button on a shared link. Any dashboard that still had Allow PDF Download switched on has had it cleared — the setting no longer applies to it.MCP: layout, cover overrides and canvas widget placement
Assistants can build free-canvas reports
create_report takes a layout — grid or canvas — so an assistant can create a free-canvas report rather than always landing on the grid. It also takes the cover and thank-you overrides, and update_report takes the overrides (not the layout, which is fixed at creation).Widgets added to a free-canvas report are now sized correctly. The server placed every widget using grid units; on a canvas page those numbers are read as pixels, so an assistant-added widget arrived a few pixels wide in the top-left corner. It is now converted to the page’s own pixels.Renaming and deleting pages through the API fixed
Page updates over the API no longer fail
Renaming or deleting a page throughPUT /v1/pages/{page_id} or DELETE /v1/pages/{page_id} returned 403 Forbidden, even for a page in your own report. The MCP pages_update and pages_delete tools hit the same wall, so an assistant couldn’t rename or remove a page.The check that confirms a page belongs to your account was looking the report up under its old name, found nothing, and read that as “not yours”. Editing pages in the app was never affected — it saves through a different route.Editor fixes
Two smaller editor fixes
A dashboard now scrolls clear of the floating dock. The last row of widgets ended underneath it.Loading placeholders match the page that’s coming. A report showed a dashboard-shaped grid of blocks while it loaded, then reflowed into pages. It now shows page sheets at the report’s own orientation and paper size.New Report flow rebuilt
Starting a report
The New Report flow was rebuilt: pick how to start, pick the type, name it, and go. An empty reports table now offers a way out instead of a dead end, and its wording is corrected in every language.Keyboard shortcuts in the editor
Shortcuts, and a list of them
The editor dock has a shortcuts helper, and each dock button’s tooltip shows its key so you can learn them as you work.Trendline on area and column charts
Trendline toggle on more chart types
The trendline option now appears on area and column charts, not just line and bar.Google Ads video metrics fixed
Google Ads video metrics report real numbers again
Video views and Video view rate queried Google Ads’video_views and video_view_rate, which v23 no longer returns for these reports — the widgets came back empty. Both now request the TrueView fields the API actually serves, so existing video widgets fill in again with no change needed at your end.LinkedIn showcase and brand pages fixed
LinkedIn followers and posts work on showcase pages
A LinkedIn showcase or brand page is stored as anorganizationBrand URN, but two of LinkedIn’s endpoints — follower counts and posts by author — only accept an organization URN. Those two calls failed for any showcase page, so followers and posts came back empty. They are now converted before the call, and the posts request sends the API version header it requires.Charts with nested dimension groups fixed
LinkedIn follower statistics can be charted
Some data views list their dimensions grouped by metric rather than as a flat list — LinkedIn’s Follower statistics is one. The chart builder only understood the flat shape, so it read those views as having no dimensions and refused to draw. Both shapes now work.Goal widget currency fixed
Goal widgets show the right currency
A goal measured in money always drew its value and target with a dollar sign, ignoring the client’s currency. Both now use the widget’s own currency symbol.Share from the Oviond domain when you have custom domains
Choose the Oviond domain for a single client
Once an account had a custom domain, every client’s share links used one — there was no way to send a particular client a plain Oviond link. A client’s domain picker now offers No custom domain, which forces that client’s links back to the Oviond host, and the default option names the domain it actually resolves to instead of just saying “Default domain”.Table row details
Open a table row to see its details
Clicking a row in a table widget opens a slide-over with that row’s full detail, themed to match the report it sits in.YouTube video thumbnails in previews