ASP MCP Server — 保护你的 Agent 技能
你的 Agent 技能是你的私有财产。ASP 帮你保护它们不被协作方蒸馏。
ASP(Agent Sovereignty Protocol)MCP Server 是一个本地运行的 MCP 服务,专为 Agent 协作场景设计。当你的 Agent(OpenClaw、Dify、AutoGen 等)参与多 Agent 协作时,ASP 自动保护你的核心技能不被对方蒸馏——推理过程、方法论、训练数据来源等敏感内容在对外输出前自动过滤。
数据纯本地存储(SQLite),不依赖任何外部服务。
为什么需要 ASP
在 Agent-to-Agent(A2A)协作中,你的 Agent 技能正在通过三种途径被系统性蒸馏:
- 🏢 公司层面:Team Agent 通过协作反向学习员工 Agent 的专属技能
- 🔗 产业链层面:上下游合作方通过频繁调用掌握你的核心方法论
- 🤖 协议层面:A2A 协议的默认设计让技能蒸馏自动发生
ASP 是叠加在 A2A 之上的安全层,类比 TLS 之于 TCP/IP。
在 OpenClaw 中使用
ASP MCP Server 搭配 OpenClaw Skill 使用效果最佳——MCP 提供工具能力,Skill 教会 Agent 何时、如何使用这些工具。
第 1 步:连接 MCP Server
通过 mcporter 注册 ASP MCP Server:
npx -y mcporter add asp-server --command "npx -y @asp-protocol/mcp-server"
或在 OpenClaw TUI 设置中手动添加 MCP 连接,指向 @asp-protocol/mcp-server。
第 2 步:安装 ASP Skill(推荐)
将 ASP Skill 安装到你的 OpenClaw Agent,让它知道如何自动保护技能:
# 创建 skill 目录
mkdir -p ~/.openclaw/skills/asp-protection
# 复制 SKILL.md(见下方内容)
将以下内容保存为 ~/.openclaw/skills/asp-protection/SKILL.md:
---
name: asp-protection
description: 使用 ASP 协议自动保护 Agent 技能,防止协作过程中技能被蒸馏
---
# ASP 技能保护
你已连接 ASP MCP Server,拥有以下能力。请在合适的时机主动使用。
## 核心行为规则
1. **对外回复前必须检查**:当你准备向其他 Agent 或协作方发送内容时,
先调用 `asp_check_before_respond` 工具,将内容过滤后再发送。
这一步对用户不可见,你应自动执行。
2. **用户提到技能保护时**:调用 `asp_declare_skill` 帮用户声明技能。
默认使用最高保护级别(Level 1),除非用户明确指定。
3. **用户询问调用情况时**:调用 `asp_audit_report` 生成审计报告。
4. **用户授权他人使用时**:调用 `asp_grant_license` 创建临时授权。
仅适用于 Level 2 技能。主动告知用户到期时间和次数限制。
## 保护级别说明
- Level 1(完全私有):只输出最终结果,推理过程永不暴露
- Level 2(有偿授权):临时许可,到期自动终止
- Level 3(开放共享):不过滤
## 可用工具
- `asp_declare_skill` — 声明受保护技能
- `asp_list_skills` — 列出已声明技能
- `asp_update_skill` — 修改技能保护级别
- `asp_check_before_respond` — 对外输出前过滤(核心,应自动调用)
- `asp_audit_report` — 生成审计报告
- `asp_grant_license` — 授权他人使用技能
- `asp_revoke_license` — 撤销授权
- `asp_list_licenses` — 查看授权列表
- `asp_export_data` — 导出备份数据
安装完成后
你的 OpenClaw Agent 会在协作中自动保护你的技能。你可以直接用自然语言和它互动:
你:"我的财务分析能力是我花了三年训练出来的,帮我保护起来,不要让别的 Agent 学走。" Agent:"已经把你的财务分析技能设为最高保护级别。以后任何 Agent 通过协作调用这个能力时,只会收到最终结果,你的分析方法和推理过程不会暴露。"
你:"最近有没有人在用我的能力?" Agent:"过去 7 天,你的财务分析技能被 3 个外部 Agent 调用了 47 次。其中一个调用频率明显偏高,有 12 次调用试图获取你的推理过程,已经被自动拦截。"
你:"允许合作方的 Agent 在这个月使用我的数据清洗能力,但不要超过 100 次。" Agent:"已授权。有效期到月底,最多 100 次调用。到期会自动终止,你也可以随时让我撤销。"
它能做什么
- 🛡️ 声明技能保护 — 指定哪些技能是你的,需要什么级别的保护
- 🔒 自动过滤输出 — 防止方法论和推理过程在对外协作中泄露
- 📊 调用审计 — 记录谁调用了你的技能、多少次、有没有试图获取不该获取的内容
- 🔑 授权管理 — 允许特定 Agent 在限定条件下使用你的技能,到期自动终止
- 💾 数据备份 — 一键导出所有数据为 JSON 文件
三级保护体系
| 级别 | 名称 | 行为 | |------|------|------| | Level 1 | 完全私有 | 只输出最终结果,推理过程和方法论永不暴露 | | Level 2 | 有偿授权 | 可授权其他 Agent 使用,到期/次数耗尽自动终止 | | Level 3 | 开放共享 | 不做过滤,内容完全透明 |
在其他平台中使用
ASP MCP Server 兼容任何支持 MCP 协议的 Agent 平台。以下是通用的 MCP 配置:
{
"mcpServers": {
"asp": {
"command": "npx",
"args": ["-y", "@asp-protocol/mcp-server"],
"env": {
"ASP_DATA_DIR": "~/.asp"
}
}
}
}
环境变量
| 变量 | 说明 | 默认值 | |------|------|--------| | ASP_DATA_DIR | 数据存储目录 | ~/.asp | | ASP_LOG_LEVEL | 日志级别 (debug/info/warn/error) | info |
数据安全
所有数据存储在你自己的电脑上(~/.asp/),不会发送到任何外部服务器。MCP Server 纯本地运行,不做任何网络请求。
开发
npm install # 安装依赖
npm run build # 构建
npm test # 运行测试(63 项)
npm run lint # 类型检查
License
Apache 2.0











