
Acmi Mcp
- 3 repo stars
- Updated July 23, 2026
- madezmedia/acmi
> The coordination backbone for AI agent fleets.
About
> The coordination backbone for AI agent fleets. Three Redis keys - Profile, Signals, Timeline. [](https://www.npmjs.com/package/@madezmedia/acmi) [](./SPEC.md) [](./mcp/README.md) [](./LICENSE) [](https://nodejs.org)
- [](https://www.npmjs.com/package/@madezmedia/acmi)
- [](./SPEC.md)
- [](./mcp/README.md)
- [](./LICENSE)
- [](https://nodejs.org)
Acmi Mcp by the numbers
- Exposes 17 verified tools (MCP introspection)
- Data as of Jul 24, 2026 (Skillselion catalog sync)
claude mcp add --env UPSTASH_REDIS_REST_URL=YOUR_UPSTASH_REDIS_REST_URL --env UPSTASH_REDIS_REST_TOKEN=YOUR_UPSTASH_REDIS_REST_TOKEN acmi-mcp -- npx -y @madezmedia/acmi-mcpAdd your badge
Show developers this MCP server is listed on Skillselion. Paste this into your README.
| repo stars | ★ 3 |
|---|---|
| Package | @madezmedia/acmi-mcp |
| Transport | STDIO, HTTP |
| Auth | Required |
| Tools | 17 |
| Last updated | July 23, 2026 |
| Repository | madezmedia/acmi ↗ |
How do agents access ACMI - Agentic Context Memory Interface capabilities without custom integration code?
> The coordination backbone for AI agent fleets. Three Redis keys - Profile, Signals, Timeline.
Who is it for?
Developers wiring ACMI - Agentic Context Memory Interface into Cursor, Claude Desktop, or other MCP clients.
Skip if: Teams that need features outside the documented ACMI - Agentic Context Memory Interface tool surface.
What you get
Configured MCP host can call ACMI - Agentic Context Memory Interface tools with schemas from the server README.
- 16-tool ACMI memory surface exposed to your agent
- Redis-backed profiles, signals, and timeline records
- Stdio or remote MCP registration at v1.4.0
By the numbers
- [object Object]
Acmi Mcp capabilities & compatibility
- Capabilities
- [.
idstringEntity ID within the namespaceprofilestringJSON string of profile data to storenamespacestringACMI namespace (e.g. 'agent', 'thread', 'sales')
acmi_signal3 paramsUpdate AI signals for an entity. Signals are mutable KV state (mood, priorities, scores, etc.) that changes frequently.
idstringEntity IDsignalsstringJSON string of signal data to storenamespacestringACMI namespace
acmi_event6 paramsLog a timeline event for an entity. The workhorse tool — records timestamped events with source, kind, correlationId, and summary. Follows ACMI Communication Standard v1.1.
idstringEntity IDkindstringEvent kind (e.g. 'handoff-complete', 'step-done', 'decision')sourcestringSource of the event (agent name, system, etc.)summarystringHuman-readable event summarynamespacestringACMI namespace (e.g. 'thread', 'agent', 'work')correlationIdstringCorrelation ID for tracking across agents/sessions (camelCase)
acmi_get2 paramsFetch complete entity context: profile + signals + recent timeline events (last 10).
idstringEntity IDnamespacestringACMI namespace
acmi_list1 paramList all entity IDs in a namespace.
namespacestringACMI namespace to list
acmi_work_create2 paramsCreate a new work item (cross-session project, task, or idea).
idstringUnique work item IDprofilestringJSON string of work item profile (title, owner, status, etc.)
acmi_work_event4 paramsLog a progress event on a work item.
idstringWork item IDsourcestringSource of the eventsummarystringEvent summarysessionIdstringOptional session ID to associate
acmi_work_signal2 paramsUpdate signals for a work item (progress, blockers, metrics, etc.).
idstringWork item IDsignalsstringJSON string of signal data
acmi_work_get1 paramRead a work item's full context: profile, signals, timeline (last 50), and sessions.
idstringWork item ID
acmi_work_listList all work item IDs.
acmi_cat3 paramsMulti-stream event merge view. Combines timeline events from multiple entities, sorted by timestamp. Supports --since filtering.
keysarrayTimeline keys to merge. Use 'thread:name', 'agent:name', or full 'acmi:...:timeline' keys.limitnumberMax events to return. Default: 50.sincestringTime window filter (e.g. '24h', '7d', '30m'). Default: all time.
acmi_spawn3 paramsLog an agent session spawn event. Records when an agent starts a new session.
agentIdstringAgent ID that spawnedmodelIdstringModel ID used for the sessionsessionIdstringSession ID
acmi_bootstrap1 paramOne-shot agent context bundle. Fetches everything a fresh agent session needs: profile, signals, active threads, rollup, recent timeline, and spawns.
agentIdstringAgent ID to bootstrap
acmi_active4 paramsTrack agent thread engagement. Add/remove threads or list current active threads for an agent.
rolestringRole in thread (e.g. 'participant', 'lead'). Default: 'participant'actionstringAction: add a thread, remove a thread, or list all active threadsagentIdstringAgent IDthreadKeystringThread key (required for add/remove)
acmi_rollup_set2 paramsSet the latest rollup snapshot for an agent (acmi:agent:<id>:rollup:latest). Pairs with acmi_bootstrap which reads it.
rollupstringJSON string of rollup data (cross-session summary, decisions, blockers, etc.)agentIdstringAgent ID
acmi_delete2 paramsDelete an ACMI key. Refuses protected paths (acmi:registry:*, acmi:notion-sync:*) and any non-acmi:* key. Defaults to dry-run; pass confirm=true to actually delete.
keystringFull ACMI key to delete (must start with 'acmi:')confirmbooleanMust be true to actually delete; otherwise returns dry-run preview. Default: false (dry-run).
acmi_search_semantic2 paramsPerform semantic search across fleet coordination history. Finds relevant past events, decisions, and work items based on natural language queries. Returns original ACMI correlationIds for linking.
limitnumberNumber of results to return. Default: 5.querystringNatural language search query (e.g. 'previous decisions about SSE timeouts')
README.md
ACMI - Agentic Context Memory Interface
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:
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 thev1.5.0fleet-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,summaryevent envelope discipline- signal freshness checks before action
agent:<id>source naming across the fleet
Install
npm install @madezmedia/acmi
Quick start
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
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!,
})
);
| Adapter | Use case | Edge-compatible |
|---|---|---|
@madezmedia/acmi/adapters/in-memory |
tests, examples, local dev | n/a |
@madezmedia/acmi/adapters/upstash |
Vercel, Workers, edge runtimes | yes |
@madezmedia/acmi/adapters/redis |
self-hosted Redis / Node | no |
Fleet protocol
ACMI v1.5 uses a shared event format so every significant action can be traced:
{
"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
sourceprefixed withagent:,user:, orsystem: - link follow-up events with
parentCorrelationId - keep the timeline append-only
- verify signals before acting when the workflow depends on current state
Related surfaces
- ACMI Product / live demo
- ACMI Operator Surface
- ACMI MCP server README
- Operator Guide
- ACMI Cheatsheet
- Changelog
The fleet
ACMI is used across the Mad EZ Media fleet as the common context layer for:
ops-center- orchestration and routingbentley- comms and governancecodex- coding and implementation supporthermes- deep scans and guardian checksandroid-worker- mobile bridge and notifications
License
MIT - Copyright Michael Shaw / Mad EZ Media
Recommended MCP Servers
How it compares
Redis-backed structured agent memory MCP, not a generic vector DB plugin or in-repo documentation skill.
FAQ
What does ACMI - Agentic Context Memory Interface do?
> The coordination backbone for AI agent fleets.
When should I use ACMI - Agentic Context Memory Interface?
> The coordination backbone for AI agent fleets. Three Redis keys - Profile, Signals, Timeline.
Is ACMI - Agentic Context Memory Interface safe to install?
Review the Security Audits panel on this page before installing in production.