iso27001-mcp 0.8.8 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/dist/index.js +47 -2
- package/package.json +1 -2
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
**Turn Claude into an ISO 27001 compliance assistant** — controls, risk register, policies, evidence tracking, SoA generation, and full audit workflows in one local encrypted MCP server.
|
|
4
4
|
|
|
5
|
-
[](https://socket.dev/npm/package/iso27001-mcp/overview/0.9.1)
|
|
6
6
|
[](https://npmjs.com/package/iso27001-mcp)
|
|
7
7
|
[](https://npmjs.com/package/iso27001-mcp)
|
|
8
8
|
[](https://github.com/Sushegaad/MCP-Server-for-ISO27001/actions/workflows/ci.yml)
|
|
@@ -11,6 +11,10 @@
|
|
|
11
11
|
|
|
12
12
|
**[▶ Live Interactive Demo](https://sushegaad.github.io/MCP-Server-for-ISO27001/)**
|
|
13
13
|
|
|
14
|
+
**▶ Getting Started Video**
|
|
15
|
+
|
|
16
|
+
[](https://youtu.be/BGHYTYbL8wE)
|
|
17
|
+
|
|
14
18
|
---
|
|
15
19
|
|
|
16
20
|
## Why this exists
|
package/dist/index.js
CHANGED
|
@@ -23915,7 +23915,7 @@ var require_package = __commonJS({
|
|
|
23915
23915
|
"package.json"(exports2, module2) {
|
|
23916
23916
|
module2.exports = {
|
|
23917
23917
|
name: "iso27001-mcp",
|
|
23918
|
-
version: "0.
|
|
23918
|
+
version: "0.9.1",
|
|
23919
23919
|
mcpName: "io.github.Sushegaad/iso27001-mcp",
|
|
23920
23920
|
description: "ISO 27001 compliance workspace for Claude \u2014 controls, risks, policies, evidence, audits, and SoA in one local encrypted MCP server",
|
|
23921
23921
|
license: "MIT",
|
|
@@ -23965,7 +23965,6 @@ var require_package = __commonJS({
|
|
|
23965
23965
|
"dist"
|
|
23966
23966
|
],
|
|
23967
23967
|
scripts: {
|
|
23968
|
-
preinstall: `node -e "const v=process.versions.node.split('.').map(Number);if(v[0]<20||(v[0]===20&&v[1]<11)){process.stderr.write('\\nERROR: iso27001-mcp requires Node.js 20.11.0 or later.\\n Found: '+process.version+'\\n Install: https://nodejs.org (or use nvm / Volta)\\n\\n');process.exit(1)}"`,
|
|
23969
23968
|
build: "tsup",
|
|
23970
23969
|
postbuild: "rm -rf dist/seed && mkdir -p dist/seed && cp -r src/seed/policy-templates dist/seed/policy-templates && cp -r src/seed/procedure-templates dist/seed/procedure-templates && cp -r src/seed/evidence-templates dist/seed/evidence-templates && cp -r src/seed/partials dist/seed/partials",
|
|
23971
23970
|
prepack: "npm run build",
|
|
@@ -38145,6 +38144,7 @@ ${divider}
|
|
|
38145
38144
|
}
|
|
38146
38145
|
}
|
|
38147
38146
|
const configOk = isDesktopPlatform && configPath !== null;
|
|
38147
|
+
let mcpEntryPresent = false;
|
|
38148
38148
|
if (!isDesktopPlatform) {
|
|
38149
38149
|
check("iso27001-mcp entry", false, true, "skipped (not applicable on Linux \u2014 use Claude Code)");
|
|
38150
38150
|
record(false, true);
|
|
@@ -38167,6 +38167,7 @@ ${divider}
|
|
|
38167
38167
|
\u2192 Re-run: iso27001-mcp init (Node version may have changed)`;
|
|
38168
38168
|
}
|
|
38169
38169
|
}
|
|
38170
|
+
mcpEntryPresent = passed2;
|
|
38170
38171
|
check("iso27001-mcp entry", passed2, false, detail);
|
|
38171
38172
|
record(passed2);
|
|
38172
38173
|
} catch {
|
|
@@ -38174,6 +38175,50 @@ ${divider}
|
|
|
38174
38175
|
record(false);
|
|
38175
38176
|
}
|
|
38176
38177
|
}
|
|
38178
|
+
if (!dbOk) {
|
|
38179
|
+
check("Database writable", false, true, "skipped (database not accessible)");
|
|
38180
|
+
record(false, true);
|
|
38181
|
+
} else {
|
|
38182
|
+
try {
|
|
38183
|
+
const db = openDb(dbPath2);
|
|
38184
|
+
const { user_version } = db.prepare("PRAGMA user_version").get();
|
|
38185
|
+
db.prepare(`PRAGMA user_version = ${user_version}`).run();
|
|
38186
|
+
check("Database writable", true, false, "read-write test passed");
|
|
38187
|
+
record(true);
|
|
38188
|
+
} catch (err) {
|
|
38189
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
38190
|
+
check("Database writable", false, false, `read-write test failed: ${msg}`);
|
|
38191
|
+
record(false);
|
|
38192
|
+
}
|
|
38193
|
+
}
|
|
38194
|
+
if (!isDesktopPlatform) {
|
|
38195
|
+
check("Env vars in config", false, true, "skipped (not applicable on Linux)");
|
|
38196
|
+
record(false, true);
|
|
38197
|
+
} else if (!configOk || !mcpEntryPresent) {
|
|
38198
|
+
check("Env vars in config", false, true, "skipped (config entry not present)");
|
|
38199
|
+
record(false, true);
|
|
38200
|
+
} else {
|
|
38201
|
+
try {
|
|
38202
|
+
const raw = (0, import_node_fs4.readFileSync)(configPath, "utf8");
|
|
38203
|
+
const config = JSON.parse(raw);
|
|
38204
|
+
const env = config.mcpServers?.["iso27001-mcp"]?.env ?? {};
|
|
38205
|
+
const missing = [];
|
|
38206
|
+
if (!env["DB_ENCRYPTION_KEY"]) missing.push("DB_ENCRYPTION_KEY");
|
|
38207
|
+
if (!env["HMAC_SECRET"]) missing.push("HMAC_SECRET");
|
|
38208
|
+
if (!env["MCP_API_KEY"]) missing.push("MCP_API_KEY");
|
|
38209
|
+
const passed2 = missing.length === 0;
|
|
38210
|
+
check(
|
|
38211
|
+
"Env vars in config",
|
|
38212
|
+
passed2,
|
|
38213
|
+
false,
|
|
38214
|
+
passed2 ? "DB_ENCRYPTION_KEY, HMAC_SECRET, MCP_API_KEY all present" : `missing: ${missing.join(", ")} \u2014 re-run: iso27001-mcp init`
|
|
38215
|
+
);
|
|
38216
|
+
record(passed2);
|
|
38217
|
+
} catch {
|
|
38218
|
+
check("Env vars in config", false, false, "could not parse claude_desktop_config.json");
|
|
38219
|
+
record(false);
|
|
38220
|
+
}
|
|
38221
|
+
}
|
|
38177
38222
|
if (dbOpen) {
|
|
38178
38223
|
closeDb();
|
|
38179
38224
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iso27001-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.1",
|
|
4
4
|
"mcpName": "io.github.Sushegaad/iso27001-mcp",
|
|
5
5
|
"description": "ISO 27001 compliance workspace for Claude — controls, risks, policies, evidence, audits, and SoA in one local encrypted MCP server",
|
|
6
6
|
"license": "MIT",
|
|
@@ -50,7 +50,6 @@
|
|
|
50
50
|
"dist"
|
|
51
51
|
],
|
|
52
52
|
"scripts": {
|
|
53
|
-
"preinstall": "node -e \"const v=process.versions.node.split('.').map(Number);if(v[0]<20||(v[0]===20&&v[1]<11)){process.stderr.write('\\nERROR: iso27001-mcp requires Node.js 20.11.0 or later.\\n Found: '+process.version+'\\n Install: https://nodejs.org (or use nvm / Volta)\\n\\n');process.exit(1)}\"",
|
|
54
53
|
"build": "tsup",
|
|
55
54
|
"postbuild": "rm -rf dist/seed && mkdir -p dist/seed && cp -r src/seed/policy-templates dist/seed/policy-templates && cp -r src/seed/procedure-templates dist/seed/procedure-templates && cp -r src/seed/evidence-templates dist/seed/evidence-templates && cp -r src/seed/partials dist/seed/partials",
|
|
56
55
|
"prepack": "npm run build",
|