Skip to content

Releases: Focus-GTS/eds-mcp-server

v0.15.0

Choose a tag to compare

@github-actions github-actions released this 18 Aug 17:56

Added

  • Scheduled monitoring (ADR-018) — eds_audit_monitor, the "watch primitive"
    that completes the roadmap (See → Fix → Track → Sell → Automate). It runs the
    audit, diffs against the last snapshot (the ADR-016 history), and classifies
    the change as ok / degraded / broken (broken = a new critical issue, or a
    dimension fallen to poor), then records the new snapshot. Pass a webhook
    (https Slack/Discord/generic) and it POSTs a compact, secret-free alert when
    the status crosses alertOn (default broken). The server owns the check +
    alert; the schedule is external — a copy-paste scheduled GitHub Action
    (examples/monitor.yml) or your agent runtime provides the heartbeat, since a
    stateless MCP tool can't self-run. Webhook is https-only; a webhook failure
    degrades to a note and never breaks the run. Auto-fix is intentionally left to a
    human/agent (via the eds_fix_* tools) — no unattended production writes. 41
    tools total.

v0.14.0

Choose a tag to compare

@github-actions github-actions released this 18 Aug 02:44

Changed

  • Every report is now a branded, client-ready artifact (ADR-017).
    eds_audit_report output gains, by default: a Focus GTS Navigator letterhead
    (embedded logo, self-contained), an executive summary (auto-written from the
    numbers, or pass your own executiveSummary), the Navigator accent color, a
    print-perfect stylesheet + "Save as PDF" control (no headless-browser
    dependency — uses the browser's own Print), and a subtle Navigator credit band
    with three CTAs
    (Book a call · Explore Navigator · Free audit) that appears on
    every report and is never removable. New optional brand input
    (agency/preparedFor/accentColor/logo) lets a caller white-label the
    letterhead; the Navigator footer credit always stays. All brand/summary inputs
    are HTML-escaped and the accent color is strictly validated — this is a document
    handed to third parties. Still 40 tools (a presentation layer on the existing
    report, no new tool).

v0.13.1

Choose a tag to compare

@github-actions github-actions released this 16 Aug 19:47

Fixed

  • README banner — the hero.svg header now reads "40 tools" (was 37) and adds
    track to the capability line (Read · audit · track · fix · publish · undo).
    Docs-only; no code changes.

v0.13.0

Choose a tag to compare

@github-actions github-actions released this 16 Aug 17:03

Added

  • Track it — site health over time (ADR-016). Two tools turn the one-off audit
    into a trend:
    • eds_audit_snapshot — run the site audit and record its scores (overall +
      per-dimension + counts) as a row in a history sheet in the site's own
      Document Authoring content
      (default /audit-history.json, kept private /
      unpublished
      by default — scores stay yours). One row per day (a same-day
      re-run updates it; idempotent when nothing changed). Returns the change since
      the last snapshot (e.g. "89, ▲7 vs 2026-08-09"). dryRun previews the row;
      publish:true makes the sheet live. Requires EDS_DA_TOKEN.
    • eds_audit_trend — read that history and return a self-contained,
      theme-aware HTML trend view
      : an SVG sparkline of the overall score over time
      plus per-dimension movement since the last snapshot. format:'text' returns a
      short summary instead. Read-only.
    • Health scoring is now shared (src/audit/score.ts computeScores) so the
      report, snapshot, and trend always agree. History stored as an EDS sheet, read
      defensively (same discipline as the redirects sheet). 40 tools total.

v0.12.0

Choose a tag to compare

@github-actions github-actions released this 16 Aug 14:45

Added

  • Fix-from-audit — close the loop (ADR-015). eds_fix_audit applies the
    audit's fixable findings — SEO metadata and broken-link redirects — in a
    single reversible batch. Audit findings now carry a stable code and, where a
    shipped writer can repair them, a fix descriptor; the tool takes agent-
    supplied metadata and/or redirects values (it never fabricates copy) and
    pushes every changed document (metadata pages + /redirects.json) in one
    withUndo push, so a single eds_da_rollback reverses the whole mixed
    batch. dryRun previews the combined plan; publish:true makes it live. Pure
    orchestration over the ADR-011/013 writers — no new write logic. The report
    (ADR-014) now marks repairable findings with a ✦ Fixable chip and an honest
    "N of M can be fixed in place" lead. 38 tools total.
  • Shareable site-health report (ADR-014). eds_audit_report runs the site
    audit and returns a self-contained, theme-aware HTML report (inline
    CSS/SVG, no external assets, no dependencies): an overall grade, per-dimension
    health scores (SEO, accessibility, performance, freshness, links, sitemap)
    shown as circular gauges, and a prioritized issue list — identical findings
    collapsed across pages — each with its suggested fix and a hover explainer.
    Dimensions that couldn't run are shown as "not run yet", never a fake score;
    the health score is derived transparently from the findings. Same options as
    eds_audit_site. Read-only.

v0.11.0

Choose a tag to compare

@github-actions github-actions released this 15 Aug 12:53

Added

  • Redirect fixes — close the 404 loop (ADR-013). eds_fix_redirect fixes
    broken links by adding 301 redirect rules to the site's redirects sheet — the
    EDS mechanism served at /redirects.json. Takes one or many { source, destination } rules; reads the existing /redirects document (or creates a new
    sheet), updates a rule for a matching Source or appends a new row, and
    preserves the sheet's headers and any extra columns (no data loss).
    Idempotent, routed through the safe-writes path (dryRun + withUndo
    eds_da_rollback), with optional publish. All rules live in one sheet, so a
    single tool handles one rule or many. Pairs with eds_audit_site (which
    surfaces the top 404s from real-user data) — the audit now has a fix for every
    major finding type. 36 tools total.

v0.10.0

Choose a tag to compare

@github-actions github-actions released this 15 Aug 02:34

Added

  • Bulk safe fixes (ADR-012). eds_bulk_fix_metadata — fix SEO/social metadata
    across many pages in one reversible operation. Takes pages: [{ path, metadata }]
    (the agent supplies each page's values), applies the ADR-011 metadata writer to
    each, and pushes every changed page in a single eds_da_push withUndo so the
    result carries one undo object that reverts the entire batch via
    eds_da_rollback. dryRun previews the whole plan; publish:true previews +
    publishes the changed pages (bounded concurrency). Partial-failure tolerant —
    unreadable pages are recorded, never abort the batch. 35 tools total.

v0.9.0

Choose a tag to compare

@github-actions github-actions released this 14 Aug 23:21

Added

  • Safe fixes — repair what the audit finds (ADR-011). The "Executor" the
    ops-agent ADRs envisioned, now buildable on top of safe writes:
    • eds_fix_metadata — add/update a page's title, meta description, and Open
      Graph image by editing its Document Authoring Metadata block. Idempotent
      (merges into an existing block, never duplicates; preserves untouched rows),
      routed through the ADR-009 safe-writes path (dryRun preview + withUndo
      eds_da_rollback). Optional publish:true previews+publishes so the change
      goes live. The agent supplies the content; the tool writes it correctly and
      reversibly. Block format grounded in Adobe's own helix-html-pipeline
      (extract-metadata.js). 34 tools total.

Changed

  • login() gains a configurable timeoutMs (the hardcoded 120s browser-callback
    window was too tight for interactive sign-in).

v0.8.0

Choose a tag to compare

@github-actions github-actions released this 14 Aug 16:48

Added

  • Content audit — find what's wrong (ADR-010). A read-only quality-audit
    layer that returns a prioritized, actionable findings list:
    • eds_audit_page — SEO + accessibility checks on a single page's HTML
      (missing/short title & description, no/duplicate H1, noindex, missing
      canonical/OG/JSON-LD; images with no alt attribute, heading-level skips,
      missing landmarks, non-descriptive link text, unlabeled form inputs).
      Checks are EDS-aware — e.g. alt="" (valid decorative markup) and the
      client-side <html lang> are not false-flagged.
    • eds_audit_site — bulk sweep (bounded concurrency, maxPages cap) running
      the per-page checks across the page index plus site-level checks: freshness
      (query-index lastModified), sitemap coverage, and — when a domain is
      supplied — performance (Core Web Vitals) and 404s from Adobe RUM. Filter by
      pathPrefix and dimensions.
      Findings use a unified severity-first shape (critical/warning/info +
      dimension + suggested fix). RUM dimensions are recorded in skipped (never
      dropped silently) when no domain/key is available. No Google PageSpeed
      dependency — performance uses Adobe's own real-user data. 33 tools total.

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 14 Aug 03:03

Added

  • Safe writes — dry-run preview and rollback (ADR-009). Makes bulk writes
    safe by default, the trust differentiator for pointing the server at a
    production site:
    • eds_da_push gains dryRun — read the current remote state for each path
      and return a plan (N create, M update, K unchanged, with per-document
      line-diff counts) without writing anything. Always safe to run first.
    • eds_da_push gains withUndo — capture each affected document's prior
      state before overwriting and return an undo object (prior content of
      updated docs + paths of newly-created docs).
    • eds_da_rollback (new tool) — take that undo object and reverse the push:
      restore updated docs to their prior content and delete the docs the push
      created. Partial-failure tolerant; reports what was restored/removed.
      Builds on DA's native per-write versioning (each write is already snapshotted,
      tagged x-da-initiator: mcp). 31 tools total.