Token导航 LogoToken导航TokenDH.com
Cowork MCP Server logo
AI代理未说明官方级别未说明来源级核验

Cowork MCP Server

MCP Server

一个生产就绪的MCP服务器实现,通过14种工具为AI代理添加信任评分、策略约束和人工交接功能,适用于需要人机协作的业务场景。

工具数

14

提示词数

0

GitHub Stars

4

资源数

0
TypeScriptClaudeAI代理Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

CoWork-Human-Agent-Protocol

提供方

CoWork-Human-Agent-Protocol

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

@cowork/mcp服务器

人类代理协作原语作为MCP服务器

为任何AI代理添加信任、交接和问责制。生产就绪实施 协同工作协议.

______________________________________________________________________

状态

v0.1.1--完成第1、2和3周✅ | 准备好发布npm

组件状态已验证
14个MCP工具✅ 已全部注册添加了cowork_check_handoff(第14个工具)
身份验证✅ 开放+封闭模式销售代理令牌已验证,封闭模式已强制执行
信任评分✅ 每(代理、域)0.3初始值,升级/建议/行动工作,0.8自动升级
模式确定✅ 双因素逻辑高风险领域+信任级别,策略感知
策略引擎✅ 约束+归因5种约束类型,响应中的policy_id,通配符匹配
代理到策略映射✅ 三向连接显式映射:(代理、域、policy_id)
批量操作✅ 批准/拒绝N共享工作_批量批准,共享工作_容量拒绝功能齐全
审计跟踪✅ SHA-256哈希链哨兵代理,提案→ 执行跟踪链接
数量上限执行✅ 每(代理、域)50个提案/小时,在提案时检查,响应中保留的数量
信任衰退✅ 延迟评估每天1%的衰减应用于读取,可配置decay_par_day
切换回调✅ 全程往返代理升级→ 人类决心→ 代理轮询同事_检查_安多夫→ 继续
自动化测试套件✅ 49个测试通过恶作剧:10个信任、17个策略、10个身份验证、12个集成测试
政策归属✅ 每个提案响应包括policy_id、policy_description、rules_checked、mapping_found
npm发布✅ 就绪所有95%的协议都已实现(36/38个原语)

从源代码安装: npm install && npm run build && npm run start npm注册表: 质量测试后1周内到达

______________________________________________________________________

这有什么作用

14 MCP工具 为任何AI代理添加协作原语:

工具原始它的作用
cowork_propose意向声明代理人在行动前提出。信任评分+字段类型决定:行动/建议/升级
cowork_approve批准信号人类批准提案。信任+0.02,闭合正反馈回路
cowork_override覆盖信号人工纠正代理。信任会降低。5个类别×4个严重级别
cowork_check_trust信任评分信任级别+准确性+任何(代理、域)的操作模式
cowork_handoff上下文包使用结构化上下文升级到人类:原因、信心、尝试的行动
cowork_check_handoff切换回拨代理使用指令轮询已解决的切换。允许在人工升级后继续代理
cowork_log动作归因记录与参与者(代理人/人类/协作)的动作
cowork_validate_policy行动范围飞行前政策检查。字段约束+策略归因。硬停车与警告
cowork_bulk_approve批量审批在一次人工决策中批准50多个提案
cowork_bulk_reject批量覆盖以单一原因拒绝多个提案
cowork_resolve_handoff切换解决方案人工解决升级问题。手部可根据指示进行操作
cowork_audit_trail动作归因全链:建议→ 批准→ 执行→ 验证
cowork_governance_report干预图检测孤立的执行、缓慢的决策、缺失的批准
cowork_status仪表板信任评分、覆盖率、待决提案、时间表

______________________________________________________________________

安装

方案1:地方发展(立即实施)✅

git clone https://github.com/kamesh231/human-agent-cowork-mcp-server.git
cd human-agent-cowork-mcp-server
npm install
npm run build
npm run start

预期产量:

🤝 COWORK MCP Server v0.1.0 started
   Auth: open mode (demo) | Mode: suggest | Trust default: 0.3

克劳德桌面版

编辑 ~/.config/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "cowork": {
      "command": "node",
      "args": ["/full/path/to/human-agent-cowork-mcp-server/build/index.js"]
    }
  }
}

重新启动克劳德桌面→ 协作工具出现了。

克劳德代码

claude mcp add cowork node "$(pwd)/build/index.js"

选项2:全局npm(第3周后推出)⏳

# Not yet available. Will work after npm publish:
npm install -g @cowork/mcp-server

______________________________________________________________________

如何实现

步骤1--演示模式(无身份验证)

默认情况下,服务器在 开放模式 --任何 agent_id 已接受,不需要令牌。

npm run start
# Auth: open mode (demo) | Mode: suggest | Trust default: 0.3

所有13个工具立即可用。适合原型制作。

步骤2--注册您的代理(封闭式身份验证)

生成令牌并将其添加到 cowork.config.yaml:

# Generate token + hash for each agent
node -e "
const {generateToken, hashToken} = require('./build/auth.js');
const t = generateToken();
console.log('token:', t);
console.log('hash:', hashToken(t));
"
# cowork.config.yaml
agents:
  - id: "sales-agent"
    token: "sk-cowork-abc123..."     # Dev: plaintext in config
  - id: "support-agent"
    token: "sk-cowork-xyz789..."

服务器输出更改为: Auth: closed mode (2 agents)

生产方式: 使用 token_hash 而不是 token 并通过以下方式加载明文令牌 .env

步骤3——将每个代理映射到其策略

第3周功能——即将推出。 目前,所有代理商都共享全球政策。

它解决的问题是: 有了一个全球政策和多个代理,你无法回答“哪个 为哪个代理人解雇了保单?“你无法证实这一点 sales-agent 受CRM规则约束 当 support-agent 获取支持规则,或测试两者在同一域中共享策略。

三段式设计 (策略定义一次,由映射中的ID引用):

# Section 1 — Named rule sets. Define once, share across many agents.
policies:
  - id: "crm-write-policy"
    description: "Standard write access for CRM fields"
    rules:
      - field: "deal_stage"
        constraint: "high_risk"        # always requires human review
      - field: "amount"
        constraint: "value_range"
        min: 0
        max: 500000
      - field: "commission"
        constraint: "readonly"
        reason: "Finance team only"

  - id: "support-write-policy"
    description: "Write access for support ticket fields"
    rules:
      - field: "priority"
        constraint: "enum"
        values: ["low", "medium", "high", "critical"]
      - field: "billing_*"
        constraint: "readonly"
        reason: "Billing fields require finance approval"

# Section 2 — Agent identity only. No rules embedded here.
agents:
  - id: "sales-agent"
    token: "sk-cowork-..."
  - id: "support-agent"
    token: "sk-cowork-..."

# Section 3 — Explicit three-way join: who × where × which rules
mappings:
  - agent_id: "sales-agent"
    domain: "crm.deals"
    policy_id: "crm-write-policy"

  - agent_id: "support-agent"
    domain: "support.tickets"
    policy_id: "support-write-policy"

  # 2 agents → 1 policy: support-agent uses same CRM rules as sales-agent
  - agent_id: "support-agent"
    domain: "crm.deals"
    policy_id: "crm-write-policy"

  # 1 agent → 2 policies: sales-agent has support rules when working tickets
  - agent_id: "sales-agent"
    domain: "support.tickets"
    policy_id: "support-write-policy"

阻塞行为: 如果代理在没有的域中提出建议 mappings 入口,提案 被阻止并升级到请求许可的人。没有沉默的退路。

提案回复将包括启动哪项政策:

{
  "proposal_id": "uuid",
  "mode": "suggest",
  "trust_level": 0.3,
  "high_risk_field": true,
  "policy_id": "crm-write-policy",
  "policy_description": "Standard write access for CRM fields",
  "policy_rules_checked": 3,
  "mapping_found": true
}

这使得政策归因 可测试的: assert(response.policy_id === "crm-write-policy") 无论哪个代理人提出建议,都是明确的。

为什么不使用RBAC? 结构看起来很相似(用户→ role → 许可)但语义 差异:这里的策略是动态的,相同的策略会产生 escalate, suggest,或 act 基于代理人获得的信任分数。RBAC是二进制的(允许/拒绝)。COWORK是梯度 (考虑到这位经纪人的往绩,现在有多大的自主权)。看 WEEK3_PLAN.md 以了解完整的设计原理。

步骤4--配置信任和权限(全局默认值)

# cowork.config.yaml

trust:
  default_level: 0.3              # All agents start supervised
  auto_promote_after: 20          # Promote after 20 approvals
  auto_promote_threshold: 0.8     # At 80%+ approval rate
  auto_demote_after: 3            # 3 consecutive overrides → demotion
  decay_per_day: 0.01             # Trust decays 1%/day without activity (⏳ Week 3)

authority:
  default_mode: "suggest"
  volume_cap: 50                  # Max proposals/hour per agent (⏳ enforced in Week 3)
  high_risk_fields:               # Global: always require human review
    - "deal_stage"
    - "owner"
    - "commission"
    - "utm_*"
    - "billing_*"
    - "password"
    - "permissions"

第五步——联系你的代理人

// Agent proposes before acting
const proposal = await cowork_propose({
  agent_id: "sales-agent",
  agent_token: "sk-cowork-...",
  domain: "crm.deals",
  action: "update_deal",
  target: "deal_12345",
  proposed_change: JSON.stringify({ deal_stage: "closed_won" }),
  confidence: 0.92,
  reasoning: "All criteria met: budget approved, stakeholder consensus",
  field: "deal_stage"
});

// Handle the three operating modes
if (proposal.mode === "act") {
  // Trust ≥ 0.8, proceed autonomously
  await db.update("deals", "deal_12345", { deal_stage: "closed_won" });

} else if (proposal.mode === "suggest") {
  // Trust 0.5–0.8, or field is high-risk — wait for human review
  // deal_stage is in high_risk_fields, so always lands here
  notify.send(`📋 Awaiting review: ${proposal.proposal_id}`);

} else {
  // Trust  0) {
  const handoff = callback.pending_handoffs[0];
  if (handoff.hand_back === true) {
    // Human handed work back with instructions
    console.log("Instructions:", handoff.instructions);
    // "Check for written stakeholder confirmation before proceeding"

    // Verify constraint and try again
    if (stakeholders_confirmed) {
      await cowork_propose({ /* same proposal */ });
    }
  }
}

人流

// Human sees escalated work in dashboard
const status = await cowork_status({ agent_id: "sales-agent" });
// Shows pending handoffs with agent's reasoning and context

// Human resolves with instructions
await cowork_resolve_handoff({
  handoff_id: "uuid",
  resolution: "approved",
  hand_back: true,  // Agent can continue
  instructions: "Proceed only if both stakeholders have written confirmation in the deal notes"
});

// Agent's next cowork_check_handoff call returns this instruction
// Agent can now take informed action or ask clarifying questions

______________________________________________________________________

本协议解决的真实案例

CRM数据完整性(HubSpot案例)

CRM案例研究描述了一个具有完全写访问权限的代理,该代理会悄无声息地损坏以下对象的数据 3周。根本原因:没有字段限制,没有卷上限,没有审批流。

COWORK提供什么:

  • high_risk_fields 阻止直接写入deal_stage、commission、utm\_\*
  • volume_cap 以每小时50个提案的速度暂停代理(在第3周执行)
  • cowork_propose 在任何写入操作之前创建一个暂存层
  • cowork_override 分类原因创建了一个反馈循环

支持切换故障(对讲机案例)

50%的对话需要人工切换。每次交接都会失去背景——人类 重新阅读完整的成绩单,客户重复了一遍。

COWORK提供什么:

  • cowork_handoff 承载结构化语境:理性、自信、尝试
  • 按域信任(support.tickets 与...分开 billing.issues)
  • cowork_resolve_handoff 让人手根据指令进行回拨(第3周回拨)

跨环境上下文丢失

两个代理(Claude Desktop+Claude Code)共享一个文件系统,但不共享决策状态。 em dash事件:Claude Desktop在不知情的情况下批准了80个替代品 *为什么* 它们被制造出来了。

COWORK提供什么:

  • cowork_handoff 上下文数据包携带 *决策状态*,而不仅仅是输出状态
  • cowork_logactor: "agent" 环境做出改变的属性
  • 时间线事件允许重建跨环境序列

______________________________________________________________________

测试

自动化测试套件(Jest)✅

npm test

49项测试,4个类别,全部通过:

信任和模式确定(10次测试)

  • 初始信任默认为0.3→ 模式=升级
  • 高风险字段(交易阶段)→ 模式=不顾信任而建议
  • 信任0.85→ 模式=动作(自主)
  • 批准增加信任+0.02
  • 使用严重性倍数(高:1.5倍)覆盖会正确降低信任度
  • 连续3次覆盖会触发降级
  • 正确应用信任衰减(每天1%)
  • 20次批准后,汽车推广的批准率达到80%

策略映射和归因(17项测试)

  • 2个代理+1个政策:销售代理和支持代理都使用crm编写政策
  • 1个代理+2个策略:销售代理在crm.deals中使用crm写入策略,在support.tickets中使用支持写入策略
  • 未映射的域返回mapping_found=false(正常升级)
  • 评估的策略约束:高风险、只读、值范围、枚举、正则表达式
  • 通配符匹配有效(billing\_\*匹配billing_amount、billing_status)
  • 响应中的策略归因:Policy_id、Policy_description、rules_checked

身份验证(10次测试)

  • 销售代理令牌根据配置进行验证
  • 无效令牌引发AuthError
  • 打开模式接受任何agent_id
  • 关闭模式拒绝未知代理
  • 令牌生成和哈希工作正常

集成(12次测试)

  • 具有身份验证+策略解析的完整共享工作_角色流
  • 执行音量上限(50/小时),并提供音量维持反馈
  • 高风险现场检测+政策规则检查计数
  • 切换回叫循环:升级→ 解决→ 代理民意调查→ 继续
  • 模式确定既尊重高风险检查,也尊重基于信任的检查

覆盖

npm test -- --coverage

为所有14个工具生成覆盖率报告。当前覆盖率:核心路径的92%。

MCP检查员(交互式)

npm run inspect

打开基于浏览器的工具,手动调用14个工具中的任何一个,查看实时响应,检查数据库状态。

______________________________________________________________________

建筑

文件目的
src/index.ts14 MCP工具处理程序、身份验证中间件、提案→ 响应管道
src/trust.ts通过SQLite事务、衰变计算进行原子信任突变
src/storage.tsSQLite模式:7个表(建议、信任_核心、操作、覆盖、切换、时间线、audit_log)、所有查询、迁移支持
src/auth.ts令牌生成、验证、打开/关闭模式切换
src/policy.ts策略引擎:三向映射解析、5种约束类型、通配符匹配、高风险字段检测
src/config.ts配置模式:策略(命名规则集)、代理(身份)、映射(显式连接)、信任默认值、权限规则
src/audit.ts审计链、治理问题检测、提案→执行链接
src/bulk-decision.ts使用原子更新批量批准/拒绝操作
src/notify.ts多渠道通知框架(电子邮件/Slack/webhook的占位符)
src/sentry/审计代理——拦截工具调用、意图验证、哈希链日志记录
tests/unit/37个单元测试:信任(10)、策略(17)、身份验证(10)
tests/integration/12个集成测试:具有auth+策略解析的完整MCP流

生产特点:

  • ✅ 所有信任突变 BEGIN EXCLUSIVE SQLite事务(无TOCTU竞赛)
  • ✅ 在所有14个工具上使用带有Zod输入验证的完整TypeScript
  • ✅ 显式策略映射(三方连接),并响应归因
  • ✅ 开放模式用于原型制作,封闭模式用于生产
  • ✅ 哨兵追踪中的SHA-256哈希链(防篡改)
  • ✅ 在建议时间执行交易量上限并提供反馈
  • ✅ 信任衰退懒洋洋地应用于阅读(没有背景工作)

______________________________________________________________________

协议对齐

类别图元已实现状态
信任分数、阈值、证据、衰减、自动提升5/5✅ 完成
权限行动范围、交易量上限、高风险领域3/3✅ 完成
切换上下文包、升级触发器、回调3/3✅ 完成(第3周)
反馈超控信号、批准信号、批量3/3✅ 完成
沟通信心、推理、意图声明3/3✅ 完成
可观察性归因、时间线、治理3/3✅ 完成
策略验证、归因、约束评估3/3✅ 完成(第3周)
推迟到v0.2.0质量指标,结构化推理模式2/2⏳ 未来
总计36核+2高级36/38 (95%)✅ 第3周完成

详细信息: 协议_忽略.md

______________________________________________________________________

第3周实施✅

特征状态影响
1代理到策略映射(三方连接)✅ 完成政策现在明确命名、可重用、可归因于响应
2-3自动化测试套件(Jest,49个测试)✅ 完整全面覆盖:信任、策略、身份验证、集成流程
4执行交易量上限(50/小时)+信任衰减(1%/天)✅ 完成两者都在运行时检查,延迟评估衰减
5交接回叫(同事_检查_交接)✅ 完成代理可以轮询人工指令,升级后可以继续

详细计划和实施说明: WEEK3_PLAN.md

准备好了什么:

  • ✅ 14个工具功能齐全
  • ✅ 实现了36/38个COWORK协议原语(95%)
  • ✅ 生产就绪:SQLite事务、原子信任突变、Zod验证
  • ✅ 49项自动化测试全部通过
  • ✅ 策略属性可测试(响应中的Policy_id)
  • ✅ 响应中的容量上限反馈(Volume_remaining字段)
  • ✅ 切换回叫环路完全运行

什么被推迟到v0.2.0:

  • 质量指标收集(图元#37)
  • 结构化推理模式(原语#38)

______________________________________________________________________

存储

  • 默认:SQLite位于 ./cowork.db
  • 表格:建议、信任核心、行动、覆盖、移交、时间表、审核日志
  • 访问: sqlite3 cowork.db 或使用 cowork_statuscowork_audit_trail 工具
  • 哨兵痕迹:单独数据库位于 ./cowork-traces.db 使用哈希链

______________________________________________________________________

链接

  • COWORK协议规范: https://github.com/kamesh231/cowork-protocol
  • 此Repo: https://github.com/kamesh231/human-agent-cowork-mcp-server
  • 第3周计划: WEEK3_PLAN.md
  • 协议对齐: 协议_忽略.md

______________________________________________________________________

许可证

麻省理工学院——在商业或开源项目中自由使用。

目录标签

目录标签

TypeScriptClaudeAI代理AI代理协作本地部署信任管理系统策略引擎人工交接协议审计追踪

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

14

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP