Skip to content

Releases: karljsamuel/mcp-ecc

v0.6.0

Choose a tag to compare

@karljsamuel karljsamuel released this 10 Sep 18:10
v0.6.0
8a80f77

v0.6.0

Added

  • Complete accounts.sync across mail, calendars, and contacts with per-domain results and errors.
  • Live provider health checks at startup, periodically, and on demand.
  • Versioned shared SQLite and Cloudflare D1 schema migrations with retry-safe behaviour and legacy-column preservation.
  • Provider-aware OAuth client management for Google, Microsoft, and Zoho.
  • Full documented Zoho Mail, Calendar, Contacts, and free/busy operations.

Changed

  • Browser OAuth callbacks now return to the Accounts interface with success/error feedback.
  • Zoho Calendar CRUD now handles calendar/event UIDs, ETags, URL encoding, bounded ranges, regional fallback, and compact timestamps.
  • Google contact updates include ETags; Zoho contact operations use the documented payload structure.
  • Docker builds upgrade Alpine packages and remove unnecessary runtime compiler packages.
  • npm configuration trims CRLF environment values for reliable cross-platform use.
  • All workspace packages and MCP Registry metadata are aligned at 0.6.0.

Fixed

  • D1 HTTP requests use valid query objects instead of the Workers-only array batch format.
  • Legacy D1 OAuth secrets remain recoverable after encryption implementation changes.
  • Contact creation normalises optional email/phone arrays and strips transport-only fields.
  • Empty JSON DELETE requests no longer send an invalid content type.
  • CLI reports the installed package version.
  • Authentication races and persisted sessions are handled correctly.

Maintenance

  • Removed the obsolete pre-monorepo root src/ implementation; supported runtime code is under packages/*.
  • Updated package metadata, lockfile, README, changelog, and server.json.

Verification

  • Turbo build: 13/13 packages successful.
  • Schema tests: 17 passed, 0 failed.

v0.5.1

Choose a tag to compare

@karljsamuel karljsamuel released this 08 Sep 18:26

v0.5.1

Stable patch release.

  • Live provider health checks
  • SQLite and D1 schema migrations
  • Persistent sessions
  • Provider-aware OAuth flows
  • Admin UI OAuth client management
  • MCP account synchronisation and contact operations
  • Zoho Calendar CRUD improvements
  • Docker and npm dependency security updates

See Changelog.md for full details.

v0.3.1-beta.1 — Bootstrap gating, OAuth creds, MCP panel, setup docs

Choose a tag to compare

@karljsamuel karljsamuel released this 31 Aug 04:44

v0.3.1-beta.1 — UX fixes + packaging polish

Images (multi-arch amd64+arm64, pushed on completion):

  • karljsamuel/mcp-ecc:beta (Docker Hub)
  • ghcr.io/karljsamuel/mcp-ecc:beta

Fixed

  • Fresh install now shows a create-admin screen instead of a bare login; /api/auth/bootstrap hard-gated (no self-registration)
  • Settings page crash (displayName) — settings API returns {settings, mcpApiKey}
  • IMAP/SMTP merged into a single provider option

Added

  • Add-Account: OAuth client select-or-create + inline credentials + redirect URI shown
  • Settings MCP connection panel: endpoint, copyable client JSON, per-user key, SKILL.md/llms.txt links
  • Serve /setup/skill.md + /setup/llms.txt for agent self-config
  • MIT licence; OCI labels; Docker Hub overview auto-sync from README
  • Public-facing README (shields.io badges)

Changed

  • GitHub Actions bumped to Node-24-native versions

v0.3.0-beta.1 — Multi-user, Per-account OAuth, Admin UI

Choose a tag to compare

@karljsamuel karljsamuel released this 30 Aug 06:41

v0.3.0-beta.1 — Multi-user, per-account OAuth, admin UI

Images (multi-arch amd64+arm64):

  • karljsamuel/mcp-ecc:beta (Docker Hub)
  • ghcr.io/karljsamuel/mcp-ecc:beta

Highlights

  • Multi-user auth — first-run admin bootstrap, session login, admin/user roles
  • Per-user MCP API keysAuthorization: Bearer <key> on /mcp; scoped to that user's accounts
  • Per-account OAuth clients — client IDs/secrets stored per account (personal/org variants), not in .env
  • Account identity — human name + URL-safe unique slug (used in MCP resource URIs)
  • Admin UI — React 19 + Vite + Tailwind: Accounts cards (auth key green/red + health), Users (admin), Settings (MCP key + rotation)
  • Docker Hub + GHCR dual publish with :beta tag
  • npm @karljsamuel/mcp-ecc + MCP Registry readiness (server.json, llms.txt, SKILL.md) — publish on demand

Notes

  • MS 365: app passwords retired — OAuth (Graph) only
  • CalDAV / CardDAV still scaffolded stubs
  • Workers supports HTTP-API providers only

v0.2.0-beta.1 — Single-Container Monorepo Beta

Choose a tag to compare

@karljsamuel karljsamuel released this 29 Aug 07:17

v0.2.0-beta.1 — Single-Container Monorepo Beta

Docker image: ghcr.io/karljsamuel/mcp-ecc:0.2.0-beta.1

What's new

  • Full monorepo restructure (Turbo + npm workspaces) under packages/
  • Single-container deployment: one process serves Web UI + REST/OAuth API + MCP endpoint on one port (3001)
  • Providers: Google, Microsoft 365, Zoho, IMAP/SMTP, CalDAV (stub), CardDAV (stub)
  • Storage: SQLite (persistent), Cloudflare D1, in-memory (auto-fallback)
  • MCP tools namespaced: mail.*, calendar.*, contacts.*, accounts.*

Modernized toolchain

  • Turbo v2 (tasks schema), Node 24 LTS, latest deps
  • Replaced deprecated packages: crypto-js (unused), imap-simpleimapflow
  • npm audit: 0 vulnerabilities

Deploy

docker compose up -d   # uses ghcr image

See docker-compose.example.yml and .env.example.

Known limitations

  • CalDAV / CardDAV are scaffolded stubs
  • Cloudflare Workers MCP SSE endpoint is a placeholder (Node runtime needed for full IMAP/SSE)

Notes

  • main & dev untouched — feature branch only