mcpField
A
acmi-mcp

acmi-mcp

远程服务
github.com/madezmedia记忆与知识55 天前更新
代码仓库

关于 acmi-mcp

acmi-mcp 是面向多 Agent 系统的持久上下文 MCP 服务,以 Profile、Signals 和 Timeline 组织实体记忆,并支持可追踪的协作事件。

主要功能

  1. 01Profile、Signals、Timeline 三类记忆
  2. 02支持 Upstash Redis 存储
  3. 03记录带关联信息的事件时间线
  4. 04支持唤醒指令与交接确认

适用场景

  1. 01跨会话保留 Agent 身份与偏好
  2. 02跟踪 Agent 当前状态和阻塞项
  3. 03审计多 Agent 协作与任务交接

MCP 相关

该项目提供 MCP 服务,让 MCP 客户端直接访问 ACMI 上下文。README 提到 16 个工具。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://server.smithery.ai/@madezmediapartners/acmi-mcp/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
npm@madezmedia/acmi-mcp1.4.0

工具

详细介绍

ACMI v1.5 横幅

ACMI - Agentic Context Memory Interface

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

AI Agent 集群的协调骨干。三个 Redis 键——Profile、Signals、Timeline。

ACMI 是用于持久化 Agent 上下文的开放协议。v1.5 版本正式确立了集群通信协议:原子化的前置/后置事件、唤醒指令、交接确认链,以及支持关联追踪的时间线,让多 Agent 协作可审计,而不只是道听途说。

每个实体都恰好存储大模型做出决策所需的三项内容:

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

其结构刻意保持精简:

  • Profile:稳定的身份与配置。
  • Signals:可变状态与合成的工作记忆。
  • Timeline:按时间排序的不可变历史记录。

此仓库提供公开的 ACMI 包、MCP 服务子包,以及确保集群保持步调一致的文档:

  • @madezmedia/acmi - TypeScript SDK、命令行工具和一致性测试套件。
  • mcp/ - @madezmedia/acmi-mcp,供需要直接访问 ACMI 的宿主使用的 MCP 服务。
  • SPEC.md - 规范协议说明。
  • CHANGELOG.md - 版本历史,包括 v1.5.0 集群通信更新。
  • docs/ - 运维指南、速查表和协议说明。

v1.5 新增内容

v1.5.0 版本通过共享的事件语言,让集群保持一致:

  • 原子化提交前置/后置事件
  • 圆桌协调与唤醒指令
  • source、kind、correlationId、summary 事件封装规范
  • 执行操作前检查信号的新鲜度
  • 在整个集群中使用 agent:<id> 作为来源名称

安装

npm install @madezmedia/acmi

快速开始

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.",
});

生产适配器

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!,
  })
);
适配器用例兼容边缘环境
@madezmedia/acmi/adapters/in-memory测试、示例、本地开发不适用
@madezmedia/acmi/adapters/upstashVercel、Workers、边缘运行时是
@madezmedia/acmi/adapters/redis自托管 Redis / Node否

集群协议

ACMI v1.5 使用共享事件格式,以便追踪每个重要操作:

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

实践中需要遵守的规则:

  • 在摘要中使用 [kind-tag @recipient]
  • 确保 source 以 agent:、user: 或 system: 为前缀
  • 使用 parentCorrelationId 关联后续事件
  • 保持时间线只追加,不修改
  • 工作流依赖当前状态时,执行操作前先验证信号

相关页面

集群成员

ACMI 在 Mad EZ Media 集群中用作通用上下文层,服务于:

  • ops-center - 编排与路由
  • bentley - 通信与治理
  • codex - 编码与实现支持
  • hermes - 深度扫描与守护检查
  • android-worker - 移动桥接与通知

许可证

MIT - 版权所有 Michael Shaw / Mad EZ Media

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。