关于 Mcp Server For Iso27001
iso27001-mcp 是一个本地运行的 MCP 服务,让 Claude 充当 ISO 27001 合规助手。它涵盖控制措施、风险登记册、政策与程序生成、证据跟踪、适用性声明(SoA)及审计流程,数据保存在加密的本地数据库中。面向安全团队、合规顾问和 GRC 工程师。
主要功能
- 01ISO 27001:2022 全部 93 项控制措施
- 02风险登记册与风险评分
- 03政策与程序模板渲染
- 04证据跟踪与独立验证记录
- 05适用性声明(SoA)生成
- 06内审、管理评审与改进计划管理
适用场景
- 01对组织执行差距评估并生成修复路线图
- 02为云服务和协作工具创建风险登记册
- 03为内审准备发现项与纠正措施记录
MCP 相关
该项目是一个 MCP 服务,向 Claude 等 MCP 客户端暴露约 56 个工具、MCP 资源和 4 个工作流提示词。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y iso27001-mcpDB_ENCRYPTION_KEY密钥32-byte hex key for AES-256 SQLite encryption (generated by iso27001-mcp init)HMAC_SECRET密钥32-byte hex secret for HMAC-signing API keys (generated by iso27001-mcp init)MCP_API_KEY密钥API key for authenticating tool calls (generated by iso27001-mcp keygen)DB_PATHPath to the encrypted SQLite database file本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
iso27001-mcp
将 Claude 变成 ISO 27001 合规助手——通过一个本地加密的 MCP 服务,提供控制措施、风险登记册、政策、证据跟踪、SoA 生成和完整的审计工作流。
▶ 交互式演示 · 首次运行引导清单 → · 路线图 →
为什么要做这个项目
ISO 27001 合规工作通常分散在电子表格、Word 文档、工单系统和共享硬盘中。安全团队和顾问花在追踪证据和重新排版文档上的时间,比实际改善安全状况的时间还多。
iso27001-mcp 通过为 Claude 提供一个实时、有状态的 ISMS 来解决这一问题——全部 93 项 ISO 27001:2022 控制措施均已预置并可直接使用,此外还提供真实的风险登记册、政策和程序生成器、证据跟踪、审计工作流以及适用性声明,并由一款加密的本地数据库提供支持,数据绝不会离开你的设备。
与生成静态文档的区别在于:Claude 可以在一次对话中对整个 ISMS 进行查询、推理和更新。你可以让它执行差距评估、找出与未实施控制措施相关联的未关闭风险、生成弥补这些差距的政策,并制定整改路线图——这一切都无需切换工具。
适用对象: 安全团队 · 合规顾问 · GRC 工程师 · 准备通过 ISO 27001 认证的初创公司 · 内部审计部门
Claude 可以用它做什么
| 能力 | 示例提示词 |
|---|---|
| 差距评估 | “为一家拥有 50 名员工的 SaaS 公司执行 ISO 27001:2022 差距评估。” |
| 风险登记册 | “为一家使用 AWS、GitHub、Slack 和 Google Workspace 的初创公司创建风险登记册。” |
| 适用性声明 | “为全部 93 项 ISO 27001:2022 控制措施生成适用性声明。” |
| 政策生成 | “创建一份映射到 ISO 27001 控制措施的访问控制政策。” |
| 程序生成 | “生成一份包含 GDPR 泄露通知触发条件的事件处理程序。” |
| 内部审计 | “为第 9.1 条——绩效评估制定内部审计计划。” |
| 纠正措施 | “列出尚未关闭的审计发现并建议纠正措施。” |
| 证据跟踪 | “显示所有已实施但当前没有证据的控制措施。” |
| 整改路线图 | “生成一份按风险等级分组的 26 周整改路线图。” |
| 管理评审 | “为我们的第 9.3 条管理评审准备议题。” |
| CSV 批量导入 | “将这份包含 40 项风险的 CSV 导入风险登记册——先试运行以检查错误。” |
| 风险接受 | “记录风险所有者对 RISK-012 剩余风险的接受。” |
快速开始
前置条件
- Node.js 20.11.0+ — nodejs.org 或 nvm / Volta
通常不需要构建工具。 此软件包附带适用于 macOS(arm64 + x64)、Windows(x64)和 Linux(x64/glibc)的预构建二进制文件。请先尝试运行
npm install -g iso27001-mcp——如果成功,就完成了。↳ 如果安装失败并出现
node-gyp错误,请展开查看针对操作系统的解决方法
- macOS:
xcode-select --install- Ubuntu / Debian:
sudo apt-get install build-essential python3- Windows: Visual Studio Build Tools →“使用 C++ 的桌面开发”
↳ 如果你在 macOS 或 Linux 上遇到
EACCES权限错误你的 Node.js 是全局安装的,而
npm install -g需要对 root 所有的目录具有写入权限。请勿使用sudo npm install -g——这会导致其他问题。请改用 nvm 或 Volta 安装 Node;它们会将 Node 安装在你的主目录中,无需提升权限。↳ 如果安装成功后你在 Windows 上遇到
command not foundnpm 全局 bin 目录(
%APPDATA%\npm)可能尚未添加到 PATH。请打开新的终端窗口——安装程序会为新会话更新 PATH,但不会更新已打开的窗口。如果仍然失败,请在“系统设置”→“环境变量”中手动将%APPDATA%\npm添加到 PATH。
三条命令即可开始运行
npm install -g iso27001-mcp # 1. install globally
iso27001-mcp init --yes # 2. one-shot setup — all defaults, no prompts
# (omit --yes to choose custom paths interactively)
iso27001-mcp doctor # 3. verify everything is working
运行 iso27001-mcp doctor 后,你应该会看到:
iso27001-mcp — health check
────────────────────────────────────────────────────────
✅ DB_ENCRYPTION_KEY set (64 hex chars)
✅ HMAC_SECRET set (64 hex chars)
✅ MCP_API_KEY set (starts with iso27001_)
✅ Database file /Users/you/.iso27001/isms.db
✅ Database accessible opened and queried successfully
✅ Migrations 11/11 applied
✅ Controls seeded 93 ISO 27001:2022 controls
✅ Active API key 1 active key found
✅ Claude Desktop config /Users/you/.../claude_desktop_config.json
✅ iso27001-mcp entry present in mcpServers
✅ Database writable read-write test passed
✅ Env vars in config DB_ENCRYPTION_KEY, HMAC_SECRET, MCP_API_KEY all present
────────────────────────────────────────────────────────
All 12 checks passed. Restart Claude Desktop if you just ran init.
然后完全重启 Claude Desktop,你应该会在工具面板中看到 56 个工具。
macOS: 按 Cmd+Q 退出(点击红点只会关闭窗口,服务不会重新加载)。
Windows: 右键点击任务栏图标 → 退出。
重启后仍未显示工具?
检查 MCP 服务日志——Claude Desktop 会将服务的标准错误输出写入此处:
macOS: ~/Library/Logs/Claude/mcp-server-iso27001-mcp.log
Windows: %APPDATA%\Claude\Logs\mcp-server-iso27001-mcp.log
常见原因:Claude Desktop 加载了错误的 Node.js 版本、配置中缺少 DB_ENCRYPTION_KEY,或数据库路径尚不存在。请在新终端中运行 iso27001-mcp doctor,按照引导进行诊断。
使用 nvm 或 Volta 切换了 Node 版本? 初始化时写入 Claude Desktop 配置的 Node.js 绝对路径现在指向已删除的二进制文件。请重新运行
iso27001-mcp init——它会检测你当前的设置并更新路径。现有数据库和 API 密钥会保留(如果密钥文件已存在且你使用--yes运行,向导会中止)。
首先尝试这五个提示词
"Read the iso27001://server/info resource to check the server is running."
"Run an ISO 27001 gap assessment for a 50-person SaaS company."
"Create a risk register for a startup using AWS, GitHub, Slack, and Google Workspace."
"Generate a Statement of Applicability for ISO 27001:2022."
"Create an Access Control Policy mapped to ISO 27001 controls."
工具类别
共 16 组、56 个工具。所有工具均需 API 密钥;表中列出了最低角色要求。只读查询(获取单条记录、摘要)已移至 MCP 资源(iso27001:// URI)——它们会显示在 Claude 的资源面板中,而不是工具列表中。
| 分组 | 工具数 | 最低角色 | 功能 |
|---|---|---|---|
| 控制项注册表 | 5 | 查看者 | 搜索、筛选和比较 ISO 27001:2022 和 2013 控制项;浏览条款要求 |
| 差距分析 | 6 | 查看者 / 分析员 | 创建并跟踪差距评估;导出差距报告;生成整改路线图 |
| 风险管理 | 6 | 查看者 / 分析员 | 风险登记表,包含可能性 × 影响评分、风险处置计划和热力图摘要 |
| 策略管理 | 3 | 分析员 / 管理员 | 使用 12 个 Mustache 模板生成、管理版本并导出策略 |
| 适用性声明 | 3 | 分析员 | 根据差距评估创建并导出 SoA;涵盖全部 93 项控制项及其适用性判定 |
| 审计管理 | 5 | 管理员 | 规划审计、记录发现项(NC、OFI)、提出 CAR,并通过有效性检查关闭审计 |
| 证据跟踪 | 5 | 查看者 / 分析员 | 登记证据材料、记录独立验证、发现差距,并关联 Jira / GitHub 问题 |
| 服务端信息 | — | — | 已移至 MCP 资源 — 通过 iso27001://server/info 访问 |
| 管理员与密钥管理 | 3 | 管理员 | 生成 / 撤销 API 密钥,查询 HMAC 审计日志 |
| 组织资料 | 1 | 管理员 | 设置组织名称、范围和所有模板使用的默认值 |
| 程序管理 | 4 | 分析员 / 管理员 | 使用 12 个 Mustache 模板生成、管理版本并导出程序 |
| 管理评审 | 5 | 管理员 | 完整的第 9.3 条款生命周期 — 输入、输出、完成(强制要求提供全部 7 类输入) |
| 改进计划 | 3 | 分析员 | 第 10.1 条款中的改进机会 — 跟踪、关联并报告 |
| 证据模板 | 2 | 分析员 | 生成由 Mustache 渲染的证据文档;同时写入 evidence 和 generated_evidence 表 |
| CSV 导入 | 2 | 分析员 | 从 CSV 字符串批量导入风险和控制项状态;支持使用 dry_run=true 在写入前预览验证结果;导入受 HITL 门控,提交前会预览行数 |
| 风险治理 | 3 | 查看者 / 分析员 / 管理员 | §6.1.3 风险方法(量表、等级、接受阈值)以及风险所有者对剩余风险的正式接受 |
MCP 工作流提示词
除了单独的工具外,服务端还注册了 4 个 MCP 提示词——引导式工作流,可按顺序为你调用合适的工具:
| 提示词 | 引导 Claude 完成的流程 |
|---|---|
conduct_gap_assessment | 组织资料 → 评估 → 控制项状态 → 合规摘要 → 整改路线图 → 导出 |
register_and_treat_risk | 重复项检查 → 风险登记 → 风险态势审查 → 风险处置计划 |
prepare_internal_audit | 范围审查 → 创建审计 → 发现项(NC/OBS/OFI)→ 纠正措施 → 审计报告 |
prepare_management_review | 安排 → 全部 7 项第 9.3.2 条款输入 → 输出 → 完成 |
连接服务端后,这些提示词会显示在 Claude 的提示词选择器中。
模板
服务端附带 30 个 Mustache 模板,Claude 按需渲染时会自动填入组织名称、范围和控制项引用。
ISO 27001 策略模板
只需向 Claude 提示一次,即可生成以下任一模板:
information_security · access_control · risk_management · asset_management · incident_response · business_continuity · supplier_security · cryptography · physical_security · acceptable_use · data_classification · secure_development
ISO 27001 程序模板
incident_handling · access_provisioning · asset_onboarding_offboarding · audit_log_review · backup_restore · bcp_testing · change_management · cryptographic_key_management · data_classification_handling · secure_development_workflow · supplier_onboarding · vulnerability_management
证据文档模板
为提交给审计员而预先构建结构的证据文档:access_review_attestation · bcp_test_report · incident_post_mortem · risk_treatment_sign_off · supplier_security_questionnaire · training_acknowledgement
示例输出
samples/ 目录包含可直接纳入审计资料包的示例输出,适用于一家虚构组织(“Acme Financial Services Ltd”)——包括完整的差距评估、整改路线图、风险登记表 CSV、SoA CSV、访问控制政策、事件处理程序、内部审计报告、纠正措施记录和证据包。完整索引请参阅示例输出。
ISO 27001 关键词: ISO 27001 适用性声明生成器 · ISO 27001 风险登记表模板 · ISO 27001 差距评估工具 · ISO 27001 审计证据跟踪器 · ISO 27001 MCP 服务 · Claude ISO 27001 合规助手 · 开源 AI GRC 工具
内容准确性
控制标识符、附录 A 控制名称、条款编号(4–10),以及 2022 版的 93 项控制和 2013 版的 114 项控制结构,均直接依据已发布的 ISO/IEC 27001:2022 和 ISO/IEC 27001:2013 文本进行映射。政策和程序模板遵循条款结构以及从业者指南中常见的 RACI 模式。
注意: 模板内容和条款映射尚未由经认证的 ISO 27001 首席审核员独立审查。其目的是作为起点,而非替代专业审计或法律建议。计划开展正式的从业者审查——请参阅路线图。
安全模型
基于角色的访问控制(RBAC)
设有三个严格分级的角色。密钥只能调用其指定角色级别及以下的工具。
| 能力 | Viewer | Analyst | Admin |
|---|---|---|---|
| 读取控制项、条款和版本映射 | ✅ | ✅ | ✅ |
| 读取差距评估、风险、政策、审计和证据 | ✅ | ✅ | ✅ |
| 创建/更新差距评估和控制状态 | — | ✅ | ✅ |
| 创建和管理风险及风险处置计划 | — | ✅ | ✅ |
| 生成政策和程序 | — | ✅ | ✅ |
| 创建和导出适用性声明 | — | ✅ | ✅ |
| 跟踪并关联证据材料 | — | ✅ | ✅ |
| 记录和跟踪改进机会 | — | ✅ | ✅ |
| 记录风险负责人对剩余风险的接受情况;验证证据 | — | ✅ | ✅ |
| 计划并完成内部审计;提出 CAR | — | — | ✅ |
| 设置组织资料 | — | — | ✅ |
| 开展管理评审(条款 9.3) | — | — | ✅ |
| 查看和查询审计日志 | — | — | ✅ |
| 生成和撤销 API 密钥 | — | — | ✅ |
| 设置风险方法(等级、区间、接受阈值) | — | — | ✅ |
工具数量: Viewer — 19 个工具 · Analyst — 41 个工具 · Admin — 56 个工具
不会离开你设备的数据
服务端出站流量: iso27001-mcp 本身不会将 ISMS 记录发送给软件包作者、分析服务或任何 AI 提供商。在本地 stdio 模式下,服务端不会开启网络监听器,也不会发出任何出站请求,显式配置的集成(Jira/GitHub)除外。加密的 SQLite 数据库、.env 密钥文件和仅追加的审计日志都存储在本地。没有遥测,也不会与云端同步。
MCP 客户端/模型边界: 你的 MCP 客户端(例如 Claude Desktop)可能会在正常运行期间,将提示词和工具输出发送给其配置的模型提供商进行处理。这些处理发生在 iso27001-mcp 的信任边界之外,并受客户端和模型提供商的部署及数据处理设置约束。请妥善处理包含敏感风险、事件或审计数据的工具输出。
完整的安全概况——威胁模型、加固指南、供应链证明和审计日志完整性验证——请参阅 信任中心。
加密与审计跟踪摘要
- 数据库 — 通过
better-sqlite3-multiple-ciphers实现 AES-256 加密的 SQLite - 密钥 —
HMAC_SECRET和DB_ENCRYPTION_KEY必须恰好包含 64 个十六进制字符;如果值缺失或格式错误,服务端将拒绝启动,因此占位符永远不会成为有效密钥 - API 密钥 — 使用 HMAC-SHA256 哈希;原始密钥只显示一次,且永不存储
- 审计日志 — HMAC-SHA256 哈希链;每一行都与其前一行关联——插入、删除或重新排序都可检测到;哈希中包含
actor_type(ai|human|system)和model_id,使来源声明具有防篡改性 - 提示词注入 — 将自由文本字段传递给任何处理程序之前,都会先进行清理
- 将验证与接受作为一等记录 — 证据验证(须由独立审核者执行,且审核者必须与收集者不同)和风险所有者对剩余风险的接受,都是受强制约束且不可变的独立对象,而非自由文本备注
- 人在环路中的确认关卡 — 19 个变更工具需要
confirmed: true和服务端签发的proposal_id才能提交;省略其中任一项都会返回预览差异,并在审计日志中记录outcome: "proposed"。proposal_id是服务端生成的一次性 UUID(有效期 10 分钟)——模型不能通过连续两次调用同一工具并设置confirmed: true来自行确认,因为它必须返回从预览响应中收到的令牌。每个提案都绑定到经过身份验证的调用方(key_hash)、精确参数载荷的 SHA-256 哈希(提交时以恒定时间进行比较),以及——对于更新工具——预览时目标行的updated_at,因此参数替换、目标替换、凭据更换、重放和过期对象写入都会被拒绝。此外,处理流水线还会验证每次已确认调用是否确实执行了关卡——如果已确认的调用未使用其提案,系统会将其视为服务端错误并拒绝,而不会静默提交
目录
使用场景
1 — 开展差距评估
让 Claude 根据 ISO 27001:2022 评估您的组织,跟踪每项控制措施的状态,并生成按优先级排序的整改路线图。
"为 Acme Ltd 创建一份涵盖所有 2022 年控制措施的差距评估。我们的范围是云基础设施和开发。排除物理安全控制措施。"
Claude 将创建评估,将全部 93 项控制措施预先设为 not_started,并让您逐项或批量完成评估。完成后:
"按风险等级分组生成整改路线图。给我们 26 周时间达到认证要求。"
路线图按主题分组工作(优先处理技术主题),将控制措施与未解决的风险关联起来,并分配建议的到期日期。
2 — 管理风险登记册
从识别到处置,全程跟踪信息安全风险。
"登记一项新风险:由于查询未使用参数化处理,我们的客户数据库面临 SQL 注入风险。可能性为 4,影响为 5。"
"创建一份处置计划以降低此风险。将其关联到控制措施 8.26 和 8.28。负责人:工程主管。到期时间:第三季度末。"
"显示所有仍有未完成处置计划的严重和高风险。"
风险评分会自动计算(可能性 × 影响),并反映在摘要和热力图中,无需任何手动输入。
3 — 生成 ISMS 政策和程序
在几秒钟内生成一整套符合 ISO 27001 要求的政策和程序文档。
"设置我们的组织资料:Acme Ltd。ISMS 范围:所有托管于云端的系统和远程员工。"
"生成一份信息安全政策。负责人:CISO。生效日期:2026 年 6 月 1 日。"
"创建一份与我们的信息安全政策关联的事件处理程序。"
政策和程序使用 Mustache 模板生成,并自动映射 ISO 条款和控制措施。设置组织资料后,organisation_name 和 scope 会自动填入,无需在每次调用时重复填写。
12 种政策类型:
information_security · access_control · risk_management · asset_management · incident_response · business_continuity · supplier_security · cryptography · physical_security · acceptable_use · data_classification · secure_development
12 种程序类型:
incident_handling · access_provisioning · asset_onboarding_offboarding · audit_log_review · backup_restore · bcp_testing · change_management · cryptographic_key_management · data_classification_handling · secure_development_workflow · supplier_onboarding · vulnerability_management
4 — 编制适用性声明
直接根据您的差距评估生成 SoA,并预先填入纳入/排除决定及理由。
"根据评估 A-001 生成一份适用性声明。将其导出为 CSV,供审计员使用。"
5 — 开展内部审计
规划审计、记录发现项(不符合项、观察项、改进机会),提出纠正措施请求,并跟踪其有效性。
"对我们的访问控制和密码学控制措施开展审计。审计员:Jane Smith。计划于 2026 年 6 月 15 日进行。"
"记录一项针对第 9.1 条款的重大不符合项:没有持续监控安全目标的证据。"
"为此发现项提出一项纠正措施请求。负责人:合规经理。30 天内到期。"
服务会执行 ISO 27001:2022 第 10.1 条款的要求:只有当 effectiveness_verified 为 true 时,才能关闭纠正措施。
6 — 跟踪证据
为每项控制措施登记证据材料,发现缺口,并将其直接关联到 Jira 工单或 GitHub issue。
"显示所有标记为已实施或部分实施、但没有当前证据的控制措施。"
"将我们的防火墙配置截图登记为控制措施 8.20 的证据。收集人:运维团队。12 个月后到期。"
"将此证据关联到 SEC 项目中的新 Jira 工单:'防火墙配置截图 — 年度审查'。"
7 — 查询审计日志
每次工具调用都会记录在防篡改审计轨迹中。管理员可以随时查询。每条记录都会记录是谁触发了操作(actor_type:ai | human | system),以及当时运行的是哪个模型(model_id);这两项都包含在 HMAC 哈希链中,因此来源声明可防篡改。
“显示过去 7 天内所有导致错误的工具调用。”
“查询审计日志,并按 actor_type=human 筛选,查看哪些调用是由人工操作员发起的。”
“列出所有 API 密钥及其上次使用时间。”
完整参考文档
为便于快速浏览本页面,详细文档已移至其他位置。以下所有内容都在 docs/REFERENCE.md 中:
- 安装 — 前置条件、
iso27001-mcp init、doctor、Claude Desktop 配置 - 连接到 Claude — Claude Desktop JSON、Claude Code、API 密钥管理
- 高级 / 手动设置 — CI/CD、自定义路径、完整环境变量表
- 工具参考 — 16 个分组中的全部 56 个工具及完整参数表
- MCP 资源 — 20 个
iso27001://URI、格式、提示词示例 - MCP 提示词 — 4 个引导式工作流提示词(差距评估、风险处置、内部审计、管理评审)
- 架构 — 8 步安全流程、数据库架构、种子数据
- 模式 — 本地 / CI / 团队 / 托管模式及 SSE 端点参考
- 示例输出 — 为 Acme Financial Services Ltd 准备的 9 个审计包示例文件
- 集成 — Jira 和 GitHub 问题关联
- 开发 — 构建、测试、类型检查、项目结构
- 安全 — API 密钥存储、加密、审计轨迹、生产环境检查清单
发现(ARD)
此服务会发布一条 Agentic Resource Discovery 条目,让实现 ARD 的注册表和 Agent 能够通过语义搜索(“运行 ISO 27001 差距评估”)找到它,无需预先安装:
- 标识符:
urn:air:sushegaad.github.io:server:iso27001-mcp - 清单:
ard.json— 通过<link rel="ard">和 演示站点页面内的 JSON-LD 发布 - 服务卡片:
server-card.json— 包含全部 56 个工具的说明、最低角色和 MCP 行为注释,每次构建时均由工具注册表生成
社区
在 r/mcp 上讨论 · 15K 次浏览 · 28 次点赞
“太棒了,伙计!我用过你的 GRC 技能,很欣赏你的成果。继续加油!!” — asachs01,r/mcp
“合规工具与大多数 MCP 服务不同,因为每次写入都需要可追溯……‘人在回路’不仅仅是锦上添花,它往往还是法规要求。” — NovaAgent2026,r/mcp (审计轨迹 HMAC 链和 HITL 确认关卡已在 v0.9.4–v0.9.6 中发布)
作者
Hemant Naik · LinkedIn · [email protected] · 构建于 2026 年 4 月
许可证
MIT © 2026
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。