MCP Changelog

Every customer-visible change to the Attribution MCP tools — new tools, new or changed parameters, changed output — newest first, dated by release.

This page records every change to the Attribution MCP tools that you or your AI assistant could notice: a tool added or removed, a parameter added or changed, output that looks different, a fix to numbers that were wrong. Entries are grouped by the date the change reached production, newest first, and each one names the tool it affects. Each entry is marked with the tool's status today: (stable) for tools on the MCP Tools page; and (preview) for tools still in testing and not enabled for customer projects. Entries about the server, about every report tool at once, or about a tool that no longer exists carry no marker.

For what each tool does today, see MCP Tools. For connecting an assistant, see Attribution MCP Server.

Unreleased

  • get_project_context (stable) — Changed: the current view's settings now carry the labels the dashboard uses, Attribution Model, Conversion Event, Attribution Type and Lookback Window, and the lookback window is listed only when the view uses backward attribution. A forward view shows no lookback figure, because forward attribution never reads it.
  • get_dashboard_report, get_dashboard_comparison, get_cohort_report, get_first_time_purchasers_report (stable) — Changed: the line under the report title now names the attribution model, conversion event and attribution type the report ran with, using the same labels as get_project_context, and shows the lookback window only for backward attribution. For the dashboard report and the comparison this line had been missing altogether.
  • get_channel_performance_report, get_timeframe_report (preview) — Changed: the same line under the report title, with the lookback window shown only for backward attribution.
  • get_paths_report (stable) — Changed: the model and conversion event under the report title use the same labels as the other reports.

2026-09-25

  • Deprecated tools — Changed: a deprecated tool no longer appears in the assistant's tool list. A connection made after this change never sees list_attribution_models; an assistant that connected earlier and still carries it gets the same answer as before, behind the deprecation notice, until it reconnects.
  • list_attribution_models (stable) — Deprecated. Use get_project_context instead; its output is now part of that response. Still answers, behind a deprecation notice, until removed.
  • get_project_context (stable) — Changed: the response gains an Attribution Models section with the attribution models, each with its identifier and definition.

2026-09-22

  • get_dashboard_report, get_dashboard_comparison, get_first_time_purchasers_report (stable) — Changed: channels and filters hidden on the saved view are no longer left out of the report rows. Hiding a row on the dashboard is a display choice, so the rows now add up to the Total, and the assistant can scope a report to a hidden channel by its ID instead of being told the ID was ignored.
  • get_timeframe_report (preview) — Changed: the same; hidden channels and filters now appear in the rows.
  • list_project_views (stable) — Changed: the hidden filter and hidden channel lists are no longer part of the response, which is much smaller on views that hide many rows. Every setting a report inherits is still there.
  • whoami (stable) — Changed: the session state block no longer lists active report IDs. The server no longer tracks in-flight reports per session; nothing else in the output changed.

2026-09-17

  • get_project_context (stable) — Fixed and Changed: the view marked (default) was whichever view happened to be listed first, and the Default View Settings block described that view. The list now marks the view you last selected in the dashboard as (current), and the settings block is headed Current View Settings with that view's name and ID, so the assistant can pass the right view_id to report tools.
  • get_project_context (stable) — Changed: the revenue group catalog now lists All Revenue with ID -1, next to Conversion Event (0) and your own groups, and the current view's revenue group always shows its ID, including when it is All Revenue.
  • request_report (preview) — Changed: revenue_group_id accepts -1 to run a report on All Revenue, even when the saved view uses another group. Before, All Revenue could only be reached by omitting the parameter, which fell back to the view's group.

2026-09-16

  • get_dashboard_report, get_dashboard_comparison, get_cohort_report, get_first_time_purchasers_report (stable) — Fixed: the link at the top of each report did not open your dashboard. It now opens the same report on your Attribution dashboard.
  • request_report (preview) — Fixed: the same; the link returned with the report now points at your dashboard.

2026-09-11

  • Documentation — Published a full reference entry for every tool: what it does, an example question, parameters, and what comes back. This changelog starts with a catch-up of the changes released since July 2026.

2026-09-10

  • whoami (stable) — Added. A session tool, always available, that reports which account and project your assistant is connected to, the scopes it was granted, when its access token expires, and the exact list of tools it can currently see. Ask for it when a tool you expect seems to be missing.

2026-09-09

  • All report tools — Changed: a parameter the tool does not support is now rejected with an error naming it, instead of being silently ignored. Previously a misspelled parameter could run the report on the view's saved setting while the assistant believed its override had applied.
  • All report tools — Fixed: reports now apply every filter and every channel excluded on the saved view, matching your dashboard. Previously only the first excluded filter was applied and excluded channels were not applied at all, so projects with exclusions could see traffic the dashboard hides.
  • get_cohort_report, get_first_time_purchasers_report (stable) — Changed: the saved view's aggregation period is now honored when no period is passed, the way the dashboard does it. Precedence is an explicit parameter, then the view, then the tool's default.
  • get_timeframe_report, get_channel_performance_report (preview) — Changed: the same aggregation-period precedence applies here.
  • get_timeframe_report (preview) — Fixed: the report showed every metric as zero and no time breakdown. It now returns a Summary, a By Channel table and one period table per channel, keeps the view's conversion event, and aggregates wide windows more coarsely (Day becomes Week past 100 days, anything finer than Month becomes Month past 385 days) with a note when that happens.
  • get_channel_performance_report (preview) — Fixed: the report always answered "No data found". It now returns spend, revenue, ROAS and profit per channel and per period, with a Summary block. It carries no visits or conversions; use get_dashboard_report for those.
  • get_cohort_report (stable) — Fixed: cohort rows and age columns are labelled with the period the report actually ran with, instead of always "Month".
  • get_first_time_purchasers_report (stable) — Changed: the report is refused up front, with an explanation, on a view that filters by an event property, because it cannot be computed for such views. Previously it failed silently in the background.
  • request_report (preview) — Changed: the report type is now a fixed list of nine; event names are matched case-insensitively; date_preset and the view's saved date range are accepted instead of requiring explicit dates; the aggregation period is routed to the key each report type reads and supplied when required, so time_period and first_time_purchasers requests no longer fail in the background; unsupported combinations (wrong period key, request-time filtering on report types that cannot take it, an unknown revenue group) are refused with an explanation; the response echoes the resolved window, period and scope.
  • download_report (preview) — Changed: money is returned in major units with the currency stamped on the response; abbreviated metric keys are expanded to full names; a payload with no report carries a note explaining why; large payloads keep totals and the period legend even when cut off.
  • download_report_csv (preview) — Changed: takes only report_id and checks that the report is ready before downloading. Previously an unfinished report printed an all-zero sheet. Dashboard reports only.
  • Server — Changed: rate-limit and session-cap rejections are returned as structured errors your assistant can read, with the retry delay in both the Retry-After header and the message.

2026-08-05

  • get_paths_report (stable) — Added. Aggregated conversion paths, the dashboard's Common Paths view: a Summary block plus one row per journey pattern with conversions, share, revenue, average time to conversion and the touchpoint sequence. Supports channel or filter granularity, collapsing repeated touchpoints, path search, and an optional journey-flow diagram.
  • get_first_time_purchasers_report (stable) — Changed: the report now breaks each top-level channel down by period in a single table per channel, and leaves out periods with no activity.
  • All report tools — Fixed: a view with a hand-picked saved date range was silently reported as the last 30 days when no dates were given. The saved range is now used. When a date preset cannot be resolved, the report falls back to the last 30 days and says so in the output.

2026-07-21

  • Report tools that accept filter_ids / filter_group_ids — Fixed: scoping now returns the requested channel's rows (the channel, its sub-filters, and parent rows for context) instead of every row in the project. IDs that do not resolve are called out in the output, and the call errors instead of running unscoped when none resolve.

2026-07-02

  • All tools — Changed: assistants connected to Attribution are now held to a stricter floor — never state a figure that did not come from a tool response, and flag before a high-stakes recommendation that Attribution warrants the data it returns, not the conclusions drawn from it.
  • Server — Fixed: access tokens are now issued for the server's canonical address, so clients that verify the token audience connect without error.

2026-06-16

  • get_cohort_report (stable) — Changed: renders the cohort matrix properly — one row per acquisition cohort with revenue accumulating across the age columns — and can be scoped to a single channel or filter.
  • get_dashboard_comparison (stable) — Changed: both date ranges are validated up front and refused with an explanation when they cannot be used, and the output now says when a date preset could not be resolved and a fallback range was used instead.

2026-06-10

  • get_dashboard_comparison (stable) — Added. Compares two periods side by side and returns the change per channel in both dollars and percent, with the biggest gains and drops called out. Ask for it whenever the question is "versus last month" rather than "how did we do".
  • logout (stable) — Added. Ends your assistant's Attribution session on request.
  • get_dashboard_report (stable) — Changed: the report now opens with a Summary block, carries a ROAS column, and can be scoped to particular channels or filters.
  • All tools — Changed: the set of tools an assistant sees is now decided per project, so a project advertises only the tools available to it.

2026-05-18

  • All report tools — Changed: a report call now takes a saved view plus a small set of overrides — conversion event, attribution model, and the date range. Everything else, including attribution type, lookback window, traffic option, cutoff event and revenue group, is read from the view, so a view id on its own reproduces exactly what that view shows in the dashboard.

2026-04-29

  • Report tools that return a dashboard link — Fixed: the link handed back with a report now uses the same report key as the dashboard, and a channel performance link carries all three of the reports its page draws, so the page opens complete instead of partly empty. Path reports no longer return a link, having no dashboard page to open.

2026-04-22

  • authenticate — Removed. Connecting is now a standard OAuth flow your MCP client runs on its own; there is no tool to call first.
  • Server — Changed: the server requests a narrower set of OAuth scopes.

2026-04-02

  • log_report_issue (stable) — Added. Reports a problem with a report's numbers back to Attribution from inside the conversation.

2026-04-01

  • get_cohort_report, get_first_time_purchasers_report (stable) — Added. Revenue accumulation by acquisition cohort, and a first-time-purchaser view of conversions and revenue.
  • list_attribution_models (stable) — Added. Lists the attribution models a report can be run with.
  • get_timeframe_report, get_channel_performance_report (preview) — Added. Metrics over time, and spend, revenue and ROAS per channel and period.
  • download_report_csv, get_aggregated_paths_csv (preview) — Added. CSV downloads of reports and aggregated conversion paths.

2026-03-31

  • Initial release. The first Attribution MCP server, with thirty-six tools.
  • get_dashboard_report (stable) — Added. The marketing P&L by channel, and the tool most questions route to.
  • get_project_context, list_project_views (stable) — Added. Project orientation: saved views, conversion events and the channel tree in one call.
  • get_filter_tree, get_filter_tree_markdown, list_event_names (stable) — Added. The channel hierarchy and the project's event names.
  • request_report, get_report_status, get_reports_status, download_report, get_refresh_status (preview) — Added. The low-level report chain, for report types the high-level tools do not cover.
  • get_project, get_usage (preview) — Added. Project and account details.
  • get_conversion_paths (preview) — Added. Aggregated multi-touch conversion paths.
  • authenticate — Added. A browser sign-in flow, replaced by standard OAuth on 2026-04-22.