MCP server: One MCP server.

ACMI

@madezmediaRepublished by Smithery for its author.MCP server · External

Persistent agent memory via ACMI — Profile/Signals/Timeline. 16 tools on Upstash Redis.

AI memoryv1.4.0MITJavaScript
Freeno charge per call

One address for any MCP client. You sign in at auth.smithery.ai once, after adding it.

What it does

  1. Reads
  2. Writes
  3. High impact

At most: creates or changes data: records, files, settings.

What it costs

Free

Odel charges nothing per call. The publisher may charge for its own service.

Tools

None listed · checked 9 Oct 2026

Odel could not list its tools without signing in.

Try it in the Inspector
README2 min read

ACMI v1.5 banner

ACMI - Agentic Context Memory Interface

npm Protocol v1.5 MCP v1.5.0 License: MIT Node.js Conformance: 36/36

The coordination backbone for AI agent fleets. Three Redis keys - Profile, Signals, Timeline.

ACMI is the open protocol for persistent agent context. Version v1.5 formalizes Fleet Comms Protocol: atomic pre/post events, wake-directives, handoff-ack chains, and correlation-aware timelines that make multi-agent work auditable instead of anecdotal.

Every entity stores exactly three things an LLM needs to make decisions:

text
Profile  -> who   (identity, preferences, stable facts)
Signals  -> now   (current state, blockers, next action)
Timeline -> then  (append-only event log from every source)

The shape is intentionally small:

  • Profile: stable identity and configuration.
  • Signals: mutable state and synthesized working memory.
  • Timeline: immutable history, ordered by time.

This repo ships the public ACMI package, the MCP server subpackage, and the docs that keep the fleet aligned:

  • @madezmedia/acmi - the TypeScript SDK, CLI, and conformance suite.
  • mcp/ - @madezmedia/acmi-mcp, the MCP server for hosts that need direct ACMI access.
  • SPEC.md - canonical protocol spec.
  • CHANGELOG.md - release history, including the v1.5.0 fleet-comms update.
  • docs/ - operator guide, cheatsheet, and protocol notes.

What v1.5 adds

The v1.5.0 release aligns the fleet around a shared event language:

  • atomic commit pre/post events
  • roundtable coordination and wake-directives
  • source, kind, correlationId, summary event envelope discipline
  • signal freshness checks before action
  • agent:<id> source naming across the fleet

Install

bash
npm install @madezmedia/acmi

Quick start

ts
import { createAcmi } from "@madezmedia/acmi";
import { InMemoryAdapter } from "@madezmedia/acmi/adapters/in-memory";

const acmi = createAcmi(new InMemoryAdapter());

await acmi.profile.set("user:mikey", {
  name: "Michael Shaw",
  role: "operator",
  location: "Charlotte, NC, USA",
});

await acmi.signals.set("user:mikey", "current_focus", "ACMI v1.5 fleet sync");

await acmi.timeline.append("user:mikey", {
  ts: Date.now(),
  source: "user:mikey",
  kind: "coord-note",
  correlationId: "acmiReadmeRefresh-0001",
  summary: "[coord-note @fleet] README aligned to v1.5 and local assets.",
});

Production adapters

ts
import { createAcmi } from "@madezmedia/acmi";
import { UpstashAdapter } from "@madezmedia/acmi/adapters/upstash";

const acmi = createAcmi(
  new UpstashAdapter({
    url: process.env.UPSTASH_REDIS_REST_URL!,
    token: process.env.UPSTASH_REDIS_REST_TOKEN!,
  })
);
AdapterUse caseEdge-compatible
@madezmedia/acmi/adapters/in-memorytests, examples, local devn/a
@madezmedia/acmi/adapters/upstashVercel, Workers, edge runtimesyes
@madezmedia/acmi/adapters/redisself-hosted Redis / Nodeno

Fleet protocol

ACMI v1.5 uses a shared event format so every significant action can be traced:

json
{
  "ts": 1780000000000,
  "source": "agent:codex",
  "kind": "handoff-ack",
  "correlationId": "codexGrantDraft-1780000000000",
  "summary": "[handoff-ack @ops-center] Draft ready for review."
}

Rules that matter in practice:

  • use [kind-tag @recipient] in summaries
  • keep source prefixed with agent:, user:, or system:
  • link follow-up events with parentCorrelationId
  • keep the timeline append-only
  • verify signals before acting when the workflow depends on current state

The fleet

ACMI is used across the Mad EZ Media fleet as the common context layer for:

  • ops-center - orchestration and routing
  • bentley - comms and governance
  • codex - coding and implementation support
  • hermes - deep scans and guardian checks
  • android-worker - mobile bridge and notifications

License

MIT - Copyright Michael Shaw / Mad EZ Media

Similar modules

Browse AI memory