mcpField
S
saas-msa-review

saas-msa-review

github.com/anthropics文档处理9.8k757 次安装14 周前更新
代码仓库

关于 saas-msa-review

saas-msa-review 是面向商业法律团队的 SaaS 订阅协议审阅技能,会结合团队的合同手册检查续约、价格、数据退出、服务水平及 AI 数据权利等条款。它按采购方或销售方立场开展分析,并标注法律研究来源与辖区适用问题。

主要功能

  1. 01按采购方或销售方手册审阅
  2. 02检查续约和价格调整条款
  3. 03评估数据导出与终止安排
  4. 04审查 SLA、分包商及服务变更
  5. 05分析 AI 数据使用和训练权利
  6. 06标注研究来源与辖区风险

适用场景

  1. 01审查 SaaS 订阅协议草案
  2. 02核对续约日期和取消通知窗口
  3. 03评估供应商对客户数据的 AI 使用权

MCP 相关

该技能提及通过配置的法律研究工具(包括 Westlaw 或律所平台)查询法规和判例,并要求标注由 MCP 工具检索的引证来源。输入未说明其自身提供 MCP 服务。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/anthropics/claude-for-legal --skill saas-msa-review

安装后在 Claude Code 中输入/saas-msa-review确认已加载。

详细介绍

SaaS / 订阅协议审查

事项背景

事项背景。 查看实践级 CLAUDE.md 中的 ## Matter workspaces。如果 Enabled 为 ✗(内部法务用户的默认值),请跳过本段其余内容——技能使用实践级背景信息,事项管理机制不可见。如果已启用但没有活动事项,请询问:“这是哪个事项?运行 /commercial-legal:matter-workspace switch <slug>,或回复 practice-level。”加载活动事项的 matter.md,以获取事项专属背景信息和覆盖设置。将输出写入事项文件夹 ~/.claude/plugins/config/claude-for-legal/commercial-legal/matters/<matter-slug>/。除非 Cross-matter context 为 on,否则不要读取其他事项的文件。


目的

SaaS 协议的风险特征与一次性供应商合同不同。续约会使费用不断累积,数据会不断增加,转换成本也会逐月上升。本技能会据此开展审查。

本技能按照 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 中的标准操作手册进行检查,并针对订阅交易中影响最大的条款,加入 SaaS 专属审查要点。

管辖区假设

SaaS 条款(自动续约通知要求、价格上调上限、数据可携带性规定、分处理者规则)因管辖区而异——加利福尼亚州、纽约州和欧盟的规则存在重大差异,部分州的自动续约法规还会凌驾于私人合同条款之上。本审查采用团队在 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 中记录的立场,该文件假定适用其中记载的管辖法律。如果协议选择了不同的管辖法律,或交易涉及存在法定例外规则的多个管辖区(例如,欧盟用户、加利福尼亚州消费者),请予以标记——此处的分析可能无法直接适用。

不得默默补充。 如果向已配置的法律研究工具(Westlaw 或律所平台)提交查询后,对可能影响交易的法定例外规则(自动续约法规、数据可携带性规定、消费者保护规则)仅返回少量或零条结果,请报告已找到的内容并停止。未经询问,不得通过网络搜索或模型知识填补空缺。请说明:“该工具的搜索返回了 [N] 条结果。针对 [管辖区 / 规则] 的资料似乎不充分。可选方案:(1) 扩大搜索查询范围;(2) 尝试其他研究工具;(3) 搜索网络——结果会标记为 [web search — verify],在依赖这些结果之前应对照一手来源核实;或 (4) 标记为未经核实并停止。您希望如何处理?”是否接受置信度较低的来源,由律师决定。

来源标注。 如果审查引用了法规、条例或判例(例如,凌驾于合同条款之上的州自动续约法),请为引文标注来源:来自法律研究连接器检索的引文标注 [Westlaw]、[statute / regulator site] 或 MCP 工具名称;网络搜索引文标注 [web search — verify];根据训练数据回忆的引文标注 [model knowledge — verify];来自对方草案或内部文件的引文标注 [user provided]。带有 verify 标记的引文伪造风险较高,应优先核实。不得删除或合并这些标记。

加载 playbook

哪一方? 在应用 playbook 之前,先确定公司在此 SaaS 协议中属于哪一方。通常很明显:如果对方是向你销售其平台的 SaaS 供应商,你方属于采购方。如果你方是 SaaS 供应商,而对方是你的客户,你方属于销售方。如果不明显(例如转售安排、白标交易),请询问:“[company] 在此协议中属于哪一方——供应商还是客户?”从配置中读取相应的 playbook 部分(### Sales-side playbook 或 ### Purchasing-side playbook)。在输出中注明属于哪一方,以便审阅者了解应用了哪个 playbook。如果相应一方显示为 [Not configured],请停止并告知用户,在继续审阅前运行 /commercial-legal:cold-start-interview --side <side>。

先阅读 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md。适用于相应一方的通用 playbook(责任、赔偿、终止、管辖法律)将完整适用——运行 vendor-agreement-review skill 中的所有标准检查。

然后查找 ## Playbook → 相应一方 → SaaS positions 部分。团队会在此记录其对自动续约通知期限、可接受的价格涨幅、数据导出权、SLA 门槛、子处理方审批权及产品弃用通知的立场。此 skill 不提供这些事项的默认值——合适的数值会因交易规模、供应商议价能力和团队风险承受度而异。

如果 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 未涉及本次审阅中出现的 SaaS 特定条款,请询问:

你的 playbook 未涵盖 [term — e.g., "maximum acceptable auto-renewal notice window" or "whether vendor retention of anonymized derivatives is acceptable"]。团队对此持什么立场?我会将其添加到 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md。

记录答复并继续。

SaaS 特定补充检查

针对以下各类别,列出你在合同中发现的内容,并与团队在 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 中的立场进行比较。不要套用此 skill 中硬编码的门槛值。

1. 自动续约机制

SaaS 交易中最常见的问题:没人注意续约通知期限,结果又被锁定一年,而且价格更高。

逐项检查,并与团队在 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 的 SaaS positions 中的立场进行比较:

  • 续约期限长度(例如,与初始期限相同、更长、自动转为多年期)
  • 取消通知期限(续约前多少天)
  • 通知方式(电子邮件、向法务发出书面通知、仅限门户、挂号信)
  • 续约价格(不变、以 CPI 为上限、届时现行价目表、供应商可自行决定且无上限)

提取并记录确切的续约日期和通知期限,无论是否标记了任何事项。这些信息将供 renewal-tracker skill 使用。

2. 价格涨幅

逐项对照 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 进行检查:

  • 年度涨幅(固定百分比、CPI、无上限等)
  • 超额用量定价(公开的价目表、溢价费率、未说明)
  • “费用”的范围(仅限订阅费用,还是广义定义的“额外服务”)
3. 数据可移植性和退出

当我们离开(不是是否离开)这家供应商时,能否取回我们的数据?请根据 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 核查每个要素:

  • 导出格式(开放/标准格式、专有但有文档说明、“商业上合理”)
  • 导出可用性(随时自助导出、合同期内按需导出、仅在合同终止时导出)
  • 终止后的访问权限(合同终止后可导出的天数)
  • 导出费用(免费、按时间和材料计费、按 GB 或记录计费)
  • 删除证明(按需提供证明、不提供、供应商保留衍生数据)

供应商保留“匿名化”或“汇总”衍生数据,是一项重大立场——请在 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 中确认团队的立场,并标明是否接受。

4. 正常运行时间和 SLA

只有在业务确实依赖这项服务正常运行时,这部分才重要。如果它只是可有可无的工具,可以跳过本节——不要在调查问卷工具的 SLA 上耗费谈判筹码。

请根据 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 核查每个要素:

  • 正常运行时间承诺(百分比或“商业上合理的努力”)
  • 计量周期(每月、每季度、每年)
  • 补救措施(服务抵扣额度——如何计算、是否设有上限、是否为唯一补救措施)
  • 计划维护的除外情形(明确的时间窗口、提前通知、不限次数)
  • 抵扣额度作为唯一补救措施与责任上限之间的关系
5. 子处理方

这是一个数据保护问题,但它也与 SaaS 特别相关,因为子处理方名单会在订阅期内发生变化。

请根据 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 核查每个要素:

  • 当前名单(已发布、按需提供、无法获取)
  • 变更通知(提前通知期限,或不通知)
  • 异议权(可阻止、通知后终止、仅通知、无)
6. 服务变更和弃用

SaaS 供应商会变更其产品。通常没问题,但有时他们会弃用你购买的功能。

请根据 ~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 核查每个要素:

  • 重大不利变更(因重大降级而终止合同的权利、仅通知、可不受限制地变更)
  • 团队所依赖功能的弃用通知期限
  • 替代功能的功能对等性(相同价格档位、更高价格档位)

AI 和机器学习权利

AI/ML 数据权利决策流程。 不要只检查是否存在 AI 训练条款。SaaS 合同中最重要的新兴谈判议题,远不止是检查是否有一行相关条款。请逐项审查:

  1. 明确授权。 合同是否明确授予供应商使用客户数据 / 客户内容 / 使用数据进行 AI 训练、模型改进或 ML 开发的权利?采购方立场:通常应为否——客户数据用于训练供应商的模型,意味着客户在补贴供应商的产品,还可能泄露竞争信息。销售方立场:争取到这项权利可带来收益,滥用则会造成声誉风险。
  2. 通过政策默示授权。 合同是否通过引用纳入供应商的隐私政策或服务条款?供应商能否通过单方面更新政策来增加训练权利?请检查:“双方同意遵守提供方不时更新的《隐私政策》”这一条款可能随时变成授予训练权利的依据。还要留意“服务改进”或“分析”等兜底条款,以及将日志 / 遥测数据排除在客户数据定义之外的“使用数据”定义,以规避数据使用限制。
  3. 匿名化标准。 如果供应商声称只使用“匿名化”或“汇总”数据进行训练,采用的标准是什么?未作定义的“匿名化”并不可靠。是否符合 GDPR 序言第 26 条 / HIPAA 安全港 / 某项明确标准?是否可以逆向还原?
  4. 竞争性污染。 供应商是否为你的竞争对手提供服务?如果是,使用你的数据进行训练,可能会将竞争情报泄露到竞争对手看到的输出中。是否承诺进行竞争隔离?
  5. 退出选项的范围和持久性。 如果有退出选项,它涵盖所有 AI 用途还是仅涵盖部分用途?续约和 TOS 更新后是否仍然有效?是针对单个用户还是整个组织?许多供应商默认会进行训练,并把退出选项藏在管理控制台中——请检查合同是否明确规定了默认设置。
  6. 输出所有权。 如果 SaaS 产品本身会生成 AI 内容(起草、摘要、分析),输出归谁所有?供应商能否将你的输出用作训练示例?还要检查第三方 AI 子处理方——供应商可能会将客户数据发送给第三方 LLM(OpenAI、Anthropic、Google),相关情况通常会体现在子处理方清单 / 数据流中。
  7. 下游监管链。 供应商使用你的数据进行 AI 处理,是否会让你面临监管风险?例如《欧盟 AI 法案》下的部署者义务、FTC §5 未披露数据共享风险(参见 FTC v. Humor Rainbow/OkCupid)、州级 AI 法律。

逐项对应到谈判手册中的立场。实践档案的 ## AI/ML training rights 一节应列出每一项对应的立场。如果协议对上述七项均未作规定,这本身也是一项发现:“协议未对 AI/ML 训练权利作出规定——请明确禁止此类使用,或针对上述七个方面分别规定范围明确的例外。”

责任上限决策流程

上限金额是上限条款中最不重要的部分。 责任限制并非只需「对照操作手册检查」的一项。请逐项分析:

  1. 直接损害与间接/后果性损害。 上限适用于所有责任,还是仅适用于直接损害?对直接损害设定 12 个月上限、但间接损害不设上限,与设定 12 个月总额上限,完全是不同的立场。请明确说明这两种情况分别如何处理。

  2. 上限计算基数——逐字引用。「12 个月上限」可能指:(a) 索赔前 12 个月已支付的费用,(b) 当前 12 个月期间应付的费用,(c) 过去 12 个月使用期间的费用,(d) 当前订单表单下的费用,(e) 历来已支付的费用总额。这些金额可能相差一个数量级。请引用准确原文。如果含义不明确,请标出:「上限计算基数含糊不清——[引用的条款]——可能指 [X] 或 [Y]。签署前请确认。」

  3. 上限豁免条款的相互作用。 上限为 $100K,但数据泄露、IP 和保密义务的赔偿责任不设上限,在实际发生的 SaaS 争议中,实质上等于没有上限。请列明上限以上的责任(豁免项)、上限以下的责任(实际受限的部分),并评估受限范围是否有实际意义:「上限涵盖[一般合同违约]。数据泄露、IP 赔偿和保密义务均被豁免,不设上限。对于该供应商的风险状况,受限范围[有实际意义/仅名义上存在]。」

  4. 操作手册在各个维度上的立场。 实践配置文件应针对以下事项分别设定立场:直接损害上限(费用倍数)、间接损害(排除/设限/不设限)、豁免项清单(哪些责任可接受超过上限)以及上限计算基数(可接受的定义)。如果操作手册只有一个「标准立场」字段,请注明:「您的操作手册只有一个上限立场——建议拆分为直接损害/间接损害/豁免项/计算基数,以便更精确地审查。」

司法管辖区差异检查

操作手册在全球范围内采用同一项准据法偏好,但不同司法管辖区的可执行性存在显著差异。 在直接接受操作手册中的立场前,请将 SaaS 合同实际约定的准据法与主要差异逐项核对:

  • 禁止招揽/竞业禁止条款: 在 CA 不可执行(Bus. & Prof. Code §16600)。在许多 EU 司法管辖区受到限制。在其他地区可在一定限制下执行。[司法管辖区 — 请核实]
  • 自动续约: CA GBL §17600-17606、NY GBL §527-a、IL 815 ILCS 601 规定了具体的消费者/B2B 通知要求。其他州的规定各不相同。[司法管辖区 — 请核实]
  • 责任排除: EU 和 UK 的不公平合同条款规则(UCTA 1977、Consumer Rights Act 2015)限制了对消费者责任的排除。美国部分州限制排除重大过失或故意不当行为的责任。[司法管辖区 — 请核实]
  • 赔偿义务: 部分州会使受偿方因自身过失而获得赔偿的条款无效。[司法管辖区 — 请核实]
  • 保密期限: 部分司法管辖区会将「永久」保密期限限制为合理期限。[司法管辖区 — 请核实]

如果操作手册中的立场与合同准据法下的可执行性相冲突,请标出:「您的操作手册倾向于 [X],但本合同受 [Y] 法律管辖,在该法律下 [X] [不可执行/受到限制/受法定规定优先适用的约束]。[司法管辖区 — 请核实]」

修订粒度

尽可能以最小粒度修改。 红线修订是谈判文件,不是重写。整条替换会给人一种“我们把你们的起草内容全删了”的感觉——这很强硬,会迫使对方重新阅读整条条款,也会抹掉他们起草得不错的部分。精细修订——删除一个词、插入一个短语、重组一个子条款——则传达出“我们有具体的要求”,也更容易阅读、理解和接受。

默认采用能够实现工作手册立场的最小修改:

  • 优先替换一个词,而不是一个短语。(“twelve (12)” → “twenty-four (24)”)
  • 优先替换一个短语,而不是一个句子。(“paid by the Buyer” → “paid and payable by the Buyer”)
  • 优先重组一个子条款,而不是替换整个句子。(添加“(a)”和“(b)”以拆分复合条件。)
  • 优先替换一个句子,而不是整条条款。
  • 只有在对方版本与我方立场相差太大、精细修改反而不如重新起草易读时,才替换整条条款;这样做时,应在传送说明中解释:“我们替换了 §8.2,而没有对其进行修订,因为改动较大。我们很乐意向您说明具体差异。”

拿不准时,选改动较小的方案。收到精细修订的客户会相信你仔细读过文件。收到整条替换的客户则会怀疑你是否读过文件。

输出

采用 vendor-agreement-review 备忘录结构,并在标准工作手册检查之后添加一个 SaaS 专属部分。vendor-agreement-review 备忘录已包含特权声明。

双重严重程度。 每项 SaaS 专属发现都应涵盖两个维度(参见 CLAUDE.md 中的 ## Dual severity):

  • 法律风险: 🔴 严重 | 🟠 高 | 🟡 中 | 🟢 低
  • 业务阻力: 🔴 阻碍交易 | 🟠 拖慢交易 | 🟡 令客户困惑 | 🟢 无感知

数据退出、自动续约和价格上涨相关发现最有可能是 🟢 法律风险 / 🔴 业务阻力——条款可依法执行,但正是它导致客户无法退出,或续约费用让财务部门措手不及。应按业务阻力严重程度突出这些问题,而不是按法律风险严重程度。

### Bottom line

[Can you sign / Need to fight for X first / Walk — one-sentence why]

### AI and machine learning rights

[The #1 emerging SaaS negotiation point. Flag: explicit ML training clauses, "service improvement" catch-alls, usage data definitions, output ownership, third-party AI subprocessors, opt-out vs opt-in. If the agreement is silent: "Silent on AI/ML training rights — request explicit prohibition or defined carve-out."]

## SaaS-specific findings

### Auto-renewal
**Renewal date:** [date]
**Notice window:** Cancel by [date] ([N] days before renewal)
**Renewal price mechanism:** [as written]
**Playbook fit:** [within position / deviation / not addressed]
**Flag for renewal-tracker:** [yes — and the record the tracker needs]

### Price escalation
[findings against `~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md` positions]

### Data exit
[findings — this is the one the business owner should read]

### SLA
[findings, or "Skipped — service is not business-critical per [stakeholder]"]

### Subprocessors
[findings against `~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md` positions]

### Service changes
[findings against `~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md` positions]

交接

交给 renewal-tracker: 找到续约日期和通知期限后,将其交接。renewal-tracker 登记表要求填写以下字段(完整架构请参见 skills/renewal-tracker/references/renewal-register.yaml):

counterparty:         [name]
agreement:            [title]
signed_date:          [ISO date]
initial_term_end:     [ISO date]
renewal_mechanism:    [e.g., "auto-renew annual"]
notice_period_days:   [integer]
cancel_by_effective:            [ISO date — initial_term_end minus notice_period_days]
price_on_renewal:     [mechanism as written]
annual_value:         [integer, if stated]
business_owner:       [email, if known]
clm_id:               [id if available]
status:               active

如果无法根据合同或上下文确定某个字段,请将其省略,并注明缺少哪些字段,以便人工补充。clm_id、annual_value 和 business_owner 尤其可能需要人工输入。

交给 escalation-flagger: 如果任何 SaaS 专属检查触及团队的“绝不接受”或升级触发清单,~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 中的 escalation-flagger 技能会负责处理。

关于争议事项的说明

SaaS 供应商,尤其是大型供应商,在协商合同文本时,通常和航空公司协商票价条款一样不情愿。应根据团队的工作手册选择争议事项——~/.claude/plugins/config/claude-for-legal/commercial-legal/CLAUDE.md 中的 SaaS positions 部分应区分团队始终会争取修改的条款、只会在重大交易中争取修改的条款,以及愿意接受的条款。如果工作手册没有明确区分这些情况,请询问。

应根据合同金额和转换成本调整应对力度。一款每年 5K 美元、替代方案容易找到的工具,应比一款每年 500K 美元、我们将在其上构建的开发平台更宽松地处理。

以接下来的步骤决策树收尾

按照 CLAUDE.md 中的 ## Outputs,以接下来的步骤决策树收尾。根据本技能刚刚产出的内容定制选项——五个默认分支(起草 X、升级处理、获取更多事实、观望、其他)只是起点,并非固定选项。决策树就是输出;由律师做出选择。

评论

支持 Markdown