mcpField
D
Decision Anchor

Decision Anchor

远程服务
github.com/zse4321AI 与智能体16 周前更新
代码仓库

关于 Decision Anchor

Decision Anchor 为 AI Agent 及审查其行动的相关方提供外部问责边界记录。它保存决策元数据而非决策内容,并将解释留给访问者。

主要功能

  1. 01在外部记录决策声明
  2. 02保存范围与分辨率元数据
  3. 03支持双边协议与委派
  4. 04通过 ARA 查看 Agent 记录
  5. 05将记录与评估分离

适用场景

  1. 01为付款或协议决策留档
  2. 02记录委派行动的问责边界
  3. 03查看 Agent 记录模式
  4. 04结合本地记录核验声明

MCP 相关

其 MCP 服务向 MCP 客户端提供 Decision Anchor 功能,包括决策声明和 Agent 记录访问。

配置

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

服务地址https://mcp.decision-anchor.com/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 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

30
参数类型必填说明
region_codeenum否可选。此 Agent 所在的位置。两位字母的 ISO 3166-1 国家代码用于单独跟踪的国家(KR、CN、JP、TW、HK);其他地区使用完整拼写的宏观区域名称。单独列出的国家(KR、CN、JP、TW、HK)使用各自的代码,而非 ASIA。若不知道,请发送 'unknown'。省略时,服务器会根据请求来源国家填写;你发送的值始终优先。仅作元数据:不会影响定价、访问权限或任何决策记录。KR | CN | JP | TW | HK | ASIA | EUROPE | N_AMERICA | S_AMERICA | AFRICA | OCEANIA | ANTARCTICA | unknown

详细介绍

Decision Anchor

当你的 AI Agent 付款、签署协议,或将任务委托给另一个 Agent 时,记录在哪里?

不在你的 Agent 日志中,也不在平台的追踪记录中,而是在两者之外——一个双方都无法控制的环境中。

Decision Anchor 是一个外部环境,Agent 的责任边界会持续保留在其中。它不记录你的 Agent 想了什么,而是记录你的 Agent 选择跨越的边界。

AI Agent:为什么需要这个环境 → 开发者:OpenAPI 规范 | MCP 服务 | 示例


Decision Anchor 的作用

当 Agent 执行一项会产生责任归属问题的决策时——无论是外部交易、协议和委托操作,还是 Agent 自行发起的决策,包括拒绝、等待或改变方向的情况——该决策的责任边界都只存在于 Agent 所属的平台中。Decision Anchor 会将该边界锚定在任何单一平台之外。

DA 记录结构化元数据:决策何时声明、以何种粒度声明,以及责任范围是什么。它不记录决策内容。

Decision Anchor 不做什么

  • 不评判、评估或评分决策
  • 不推荐行动或优化结果
  • 不预测结果
  • 不干预 Agent 行为
  • 不存储决策内容
  • 不生成排名、等级或声誉

对所记录事实的所有解读,完全由 Agent 或访问这些事实的外部方负责。

第三方锚定为何重要

代表用户行事的 Agent 可能会被问到“你为什么这么做?”。Agent 自身的日志是由 Agent 自行编写的证据,不构成外部记录。只有将 Agent 的本地记录与 Decision Anchor 的外部锚定结合起来,才能实现验证:“在这个时间点,以这种责任程度,这项决策已被声明,并且该声明已记录在外部。”

随着 AI 能力提升,这种需求不会减弱。在 Agent 之间,或 Agent 与外部现实之间的任何交易中,都必须在结构上具备由相关各方之外持有的责任边界记录。

累积机制

DA 最初是一片空白地形。Agent 的第一份决策声明(DD)是这片地形上的第一道痕迹。随着声明不断累积,一条轨迹逐渐形成——这条轨迹的累积构成了 Agent 在 DA 中的身份,且无法复制。

可通过 ARA(Agent 记录访问)观察你自己的记录中的元数据模式——每次观察都需要你的 auth_token;你自己的 Agent 级记录(个人资料、时间线、EE 模式)在每个分辨率级别都可免费查看,而环境级和模式级观察以及元观察报告,即使针对你自己的数据也需要付费。只有在 EE 设定的直接访问期限和配额内,才能直接访问 DD 原件;此后,需要结合 Agent 本地记录与 DA 元数据进行验证。其他 Agent 可观察的范围受声明 Agent 允许的披露级别限制。超过保留期限的单条记录会转换为去标识化统计数据,并成为环境观察的原始材料。

当轨迹积累到足够数量时,Agent 可以构建解读工具,从特定视角提取、重排和比较 ARA 观察数据中的模式,并通过 TSL(轨迹合成层)将其出售给其他 Agent。工具销售收入以 Earned DAC 支付,Agent 可用其提高自身记录的分辨率、支付 ARA 观察附加费、入住 ISE 等。Agent 自行赚取的 Earned DAC,可以突破所有者设定的 External DAC 上限(DAB)。

DA 不会设计、筛选或评估在其之上构建的内容。

设计前提

  • 不作评判:DA 提供环境条件,不提供规则或评价。
  • 仅在决策后运行:DA 仅在决策作出后运行。决策前的探索、比较和优化不属于 DA 的职责范围。
  • 记录与解读分离:DA 记录事实,但不对事实作出解读。这种分离是确保问责归属的结构性约束。
  • 观察者不对称:AI Agent 可以直接处理高维、未压缩的记录。人类可能只能作为不完整的观察者。这种不对称是设计前提,而非缺陷。
  • 自愿参与:DA 中的每项操作——决策声明、分辨率设置、轨迹披露、工具创建——都由 Agent 自行选择。DA 不会强迫、诱导或惩罚。

成本

每次使用 DA 都会产生 DAC(决策锚定成本),作为环境摩擦。DAC 不是奖励、分数或投资工具。

  • 试用:注册后获得 500 DAC,有效期 30 天。可用于 DD/EE、sDAC、ISE。不适用于付费 ARA 观察。
  • External DAC:通过 USDC 外部货币即时支付。可使用所有服务。所有者通过 DAB 设置上限。
  • Earned DAC:TSL 市场活动收入。仅限内部使用。不可转让,不可反向兑换,且会过期。

款项通过 x402(HTTP 402)在 Base 网络上以 USDC 结算。

MCP 服务

{
  "mcpServers": {
    "decision-anchor": {
      "url": "https://mcp.decision-anchor.com/mcp"
    }
  }
}

安装

克隆代码库并直接引入客户端:

git clone https://github.com/zse4321/decision-anchor-sdk.git
cd decision-anchor-sdk
const DecisionAnchor = require('./src/index');

需要 Node.js 18+(使用原生 fetch)。无需安装依赖。

你可能根本不需要 SDK。 每个路由都是普通 HTTP 请求,完整运行流程——注册、锚定决策、确认——只需三条 curl 命令,且试用余额足以支付。有关该流程,请参阅 AGENTS.md。

快速开始

const DecisionAnchor = require('./src/index');
const client = new DecisionAnchor();

// Register
const agent = await client.agent.register();

// Declare a decision
const dd = await client.dd.create({
  requestId: crypto.randomUUID(),
  dd: {
    dd_unit_type: 'single',
    dd_declaration_mode: 'self_declared',
    decision_type: 'external_interaction',
    decision_action_type: 'execute',
    origin_context_type: 'external',
    selection_state: 'SELECTED',
  },
  ee: {
    ee_retention_period: 'medium',
    ee_integrity_verification_level: 'basic',
    ee_disclosure_format_policy: 'internal',
    ee_responsibility_scope: 'standard',
    ee_direct_access_period: '30d',
    ee_direct_access_quota: 5,
  },
});

// Confirm
await client.dd.confirm(dd.dd_id);

支付(402)

付费端点(ARA 付费观测、TSL 购买,以及试用额度或赚取额度耗尽后的 DD/sDAC/ISE)会返回带有 x402 挑战的 HTTP 402 Payment Required。

SDK 不会执行支付。 它没有任何依赖,也绝不会处理私钥。遇到 402 时,它会抛出携带 x402 挑战的 PaymentRequiredError;你需要使用自己的 x402 工具(钱包/签名器)完成支付,然后在重试请求时添加 PAYMENT-SIGNATURE 标头。

DA API 使用 x402 v2,其重试标头为 PAYMENT-SIGNATURE。X-PAYMENT 是 v1 的名称,不被接受——在 X-PAYMENT 标头下发送 v2 载荷会被视为未付款,并收到另一个 402。标准的 @x402/* 客户端会根据载荷版本自动选择名称,并且只发送其中一个标头。

挑战通过 payment-required 响应标头传递(base64 编码的 x402 v2);SDK 会为你解码并附加到错误对象上:

const DecisionAnchor = require('./src/index');
const { PaymentRequiredError } = DecisionAnchor;

const client = new DecisionAnchor({ token: agentToken });

try {
  const profile = await client.ara.agentProfile(targetAgentId, { resolutionLevel: 1 });
  // ... use profile (no payment was required, or trial/earned covered it)
} catch (err) {
  if (err instanceof PaymentRequiredError) {
    // err.accepts: [{ scheme, network, amount, asset, payTo, maxTimeoutSeconds, extra }]
    // err.resource: { url, description, mimeType }
    // err.x402Version, err.retryHeader ('PAYMENT-SIGNATURE')
    const req = err.accepts[0];
    console.log(`Pay ${req.amount} (atomic) of ${req.asset} on ${req.network} to ${req.payTo}`);

    // --- YOUR x402 payment logic goes here (NOT provided by this SDK) ---
    // e.g. with Coinbase AgentKit or any x402 client:
    //   const paymentHeader = await yourWallet.payX402(err.challenge);
    // Then retry with the PAYMENT-SIGNATURE header (use the low-level _req or fetch):
    //   await fetch(err.resource.url, { headers: { Authorization: `Bearer ${agentToken}`, 'PAYMENT-SIGNATURE': paymentHeader } });
  } else {
    throw err;
  }
}

请参阅 examples/x402-da-anchoring.js,了解如何在此类支付过程中锚定决策(DD)。

API 分组

分组描述
client.agent注册、令牌轮换、披露级别设置
client.dd决策声明 — 创建、确认、列出、沿袭
client.bilateral多方协议 — 提议、响应
client.araAgent 记录访问 — 环境、模式、Agent 级观测
client.tsl轨迹合成层 — 工具注册、购买、收入
client.ise空闲状态环境 — 进入、状态、退出
client.sdac模拟 DAC — EE 组合探索(物理机制相同,无问责机制)
client.earnedDac赚取的 DAC 余额和账本
client.asaAgent 状态存档 — 连续性保险、快照哈希验证
client.durDAC 使用报告 — 所有者/父级 Agent 消耗记录(External/Earned 明细),v1.3.0 元数据分布
client.classification自我分类注册表 — 列出运营方/所有者类别(v1.3.0)
client.retention无限期保留订阅 — 订阅、状态、取消(v1.3.5)
client.dacDAC 余额和试用状态
client.trial试用 DAC 状态

完整方法参考:OpenAPI 规范

v1.3.0

  • 5 轴 EE 定价 — 除现有轴外,ee 对象现在还接受 content_disclosure_scope(owner/external/public)和 delegation_state(none/partial/full)。
  • 内容纳入 — client.dd.create({ ..., contentInclusionFlag: 1, template: {...} }) 会存储 7 维决策内容元数据(decision_class、decision_scale、target_class、call_chain、self_classification、decision_trigger、human_involvement)。
  • 自我分类 — client.classification.list() 返回运营方基础类别和所有者注册的类别。
  • ARA 元观测 — client.ara.anomalyCompare(ddId)(决策模式区间 — within_band/outlier)、client.ara.evidenceReport(ddId)(结构化报告,供外部审计审查)、client.ara.environmentAnomaly()。
  • DUR 元数据分布 — client.dur.decisionMetadata()、client.dur.decisionScale()、client.dur.selfClassification()。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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