@kryptosai/mcp-observatory 1.31.0 → 1.32.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.
Files changed (151) hide show
  1. package/PRIVACY.md +16 -0
  2. package/README.md +5 -11
  3. package/README.zh-CN.md +4 -10
  4. package/dist/src/cli.js +4 -2
  5. package/dist/src/cli.js.map +1 -1
  6. package/dist/src/commands/diff.js +24 -2
  7. package/dist/src/commands/diff.js.map +1 -1
  8. package/dist/src/commands/enforce.d.ts +2 -2
  9. package/dist/src/commands/enforce.js +5 -8
  10. package/dist/src/commands/enforce.js.map +1 -1
  11. package/dist/src/commands/scan.js.map +1 -1
  12. package/dist/src/commands/telemetry.js +41 -1
  13. package/dist/src/commands/telemetry.js.map +1 -1
  14. package/dist/src/commands/test.js +2 -2
  15. package/dist/src/commands/test.js.map +1 -1
  16. package/dist/src/diff.d.ts +5 -2
  17. package/dist/src/diff.js +23 -2
  18. package/dist/src/diff.js.map +1 -1
  19. package/dist/src/index.d.ts +1 -0
  20. package/dist/src/index.js +1 -0
  21. package/dist/src/index.js.map +1 -1
  22. package/dist/src/permission-delta.d.ts +2 -0
  23. package/dist/src/permission-delta.js +99 -0
  24. package/dist/src/permission-delta.js.map +1 -0
  25. package/dist/src/reporters/common.d.ts +1 -0
  26. package/dist/src/reporters/common.js +3 -1
  27. package/dist/src/reporters/common.js.map +1 -1
  28. package/dist/src/reporters/html.js +30 -1
  29. package/dist/src/reporters/html.js.map +1 -1
  30. package/dist/src/reporters/markdown.js +21 -2
  31. package/dist/src/reporters/markdown.js.map +1 -1
  32. package/dist/src/reporters/pr-comment.js +1 -1
  33. package/dist/src/reporters/pr-comment.js.map +1 -1
  34. package/dist/src/reporters/terminal.js +9 -3
  35. package/dist/src/reporters/terminal.js.map +1 -1
  36. package/dist/src/risk-taxonomy.d.ts +16 -0
  37. package/dist/src/risk-taxonomy.js +95 -0
  38. package/dist/src/risk-taxonomy.js.map +1 -0
  39. package/dist/src/schema-diff.d.ts +2 -1
  40. package/dist/src/schema-diff.js +28 -3
  41. package/dist/src/schema-diff.js.map +1 -1
  42. package/dist/src/telemetry.d.ts +17 -0
  43. package/dist/src/telemetry.js +70 -2
  44. package/dist/src/telemetry.js.map +1 -1
  45. package/dist/src/types.d.ts +15 -0
  46. package/dist/src/validate.js +44 -2
  47. package/dist/src/validate.js.map +1 -1
  48. package/docs/mcp-server-safety-index.md +77 -15
  49. package/docs/safety-index/artifacts/antv-chart-server.json +1452 -19
  50. package/docs/safety-index/artifacts/antv-chart-server.md +156 -10
  51. package/docs/safety-index/artifacts/brave-search-server.json +341 -0
  52. package/docs/safety-index/artifacts/brave-search-server.md +201 -0
  53. package/docs/safety-index/artifacts/browsermcp-server.json +83 -18
  54. package/docs/safety-index/artifacts/browsermcp-server.md +46 -12
  55. package/docs/safety-index/artifacts/chrome-devtools-mcp-server.json +592 -21
  56. package/docs/safety-index/artifacts/chrome-devtools-mcp-server.md +96 -14
  57. package/docs/safety-index/artifacts/clay-server.json +66 -0
  58. package/docs/safety-index/artifacts/clay-server.md +106 -0
  59. package/docs/safety-index/artifacts/cloudflare-server.json +66 -0
  60. package/docs/safety-index/artifacts/cloudflare-server.md +106 -0
  61. package/docs/safety-index/artifacts/context7-server.json +85 -18
  62. package/docs/safety-index/artifacts/context7-server.md +52 -11
  63. package/docs/safety-index/artifacts/cyanheads-git-mcp-server.json +1565 -34
  64. package/docs/safety-index/artifacts/cyanheads-git-mcp-server.md +178 -17
  65. package/docs/safety-index/artifacts/docker-server.json +395 -0
  66. package/docs/safety-index/artifacts/docker-server.md +204 -0
  67. package/docs/safety-index/artifacts/everything-server.json +145 -18
  68. package/docs/safety-index/artifacts/everything-server.md +56 -11
  69. package/docs/safety-index/artifacts/exa-server.json +400 -0
  70. package/docs/safety-index/artifacts/exa-server.md +207 -0
  71. package/docs/safety-index/artifacts/executeautomation-playwright-server.json +625 -18
  72. package/docs/safety-index/artifacts/executeautomation-playwright-server.md +95 -11
  73. package/docs/safety-index/artifacts/fetch-server.json +66 -0
  74. package/docs/safety-index/artifacts/fetch-server.md +106 -0
  75. package/docs/safety-index/artifacts/figma-server.json +1766 -0
  76. package/docs/safety-index/artifacts/figma-server.md +256 -0
  77. package/docs/safety-index/artifacts/filesystem-mcp-server.json +428 -24
  78. package/docs/safety-index/artifacts/filesystem-mcp-server.md +75 -14
  79. package/docs/safety-index/artifacts/filesystem-server.json +426 -22
  80. package/docs/safety-index/artifacts/filesystem-server.md +73 -12
  81. package/docs/safety-index/artifacts/firecrawl-server.json +4056 -0
  82. package/docs/safety-index/artifacts/firecrawl-server.md +243 -0
  83. package/docs/safety-index/artifacts/github-mcp-server.json +374 -21
  84. package/docs/safety-index/artifacts/github-mcp-server.md +71 -15
  85. package/docs/safety-index/artifacts/gitlab-server.json +229 -0
  86. package/docs/safety-index/artifacts/gitlab-server.md +753 -0
  87. package/docs/safety-index/artifacts/gmail-server.json +66 -0
  88. package/docs/safety-index/artifacts/gmail-server.md +106 -0
  89. package/docs/safety-index/artifacts/google-calendar-server.json +66 -0
  90. package/docs/safety-index/artifacts/google-calendar-server.md +106 -0
  91. package/docs/safety-index/artifacts/google-drive-server.json +66 -0
  92. package/docs/safety-index/artifacts/google-drive-server.md +106 -0
  93. package/docs/safety-index/artifacts/google-sheets-server.json +66 -0
  94. package/docs/safety-index/artifacts/google-sheets-server.md +106 -0
  95. package/docs/safety-index/artifacts/google-tasks-server.json +66 -0
  96. package/docs/safety-index/artifacts/google-tasks-server.md +106 -0
  97. package/docs/safety-index/artifacts/huggingface-server.json +66 -0
  98. package/docs/safety-index/artifacts/huggingface-server.md +106 -0
  99. package/docs/safety-index/artifacts/jina-server.json +66 -0
  100. package/docs/safety-index/artifacts/jina-server.md +106 -0
  101. package/docs/safety-index/artifacts/kubernetes-server.json +1054 -27
  102. package/docs/safety-index/artifacts/kubernetes-server.md +137 -18
  103. package/docs/safety-index/artifacts/linear-server.json +1494 -0
  104. package/docs/safety-index/artifacts/linear-server.md +237 -0
  105. package/docs/safety-index/artifacts/memory-server.json +191 -18
  106. package/docs/safety-index/artifacts/memory-server.md +51 -9
  107. package/docs/safety-index/artifacts/mongodb-server.json +66 -0
  108. package/docs/safety-index/artifacts/mongodb-server.md +106 -0
  109. package/docs/safety-index/artifacts/neon-server.json +66 -0
  110. package/docs/safety-index/artifacts/neon-server.md +103 -0
  111. package/docs/safety-index/artifacts/notion-server.json +7151 -0
  112. package/docs/safety-index/artifacts/notion-server.md +236 -0
  113. package/docs/safety-index/artifacts/onesignal-server.json +66 -0
  114. package/docs/safety-index/artifacts/onesignal-server.md +106 -0
  115. package/docs/safety-index/artifacts/opentofu-server.json +31 -19
  116. package/docs/safety-index/artifacts/opentofu-server.md +28 -10
  117. package/docs/safety-index/artifacts/playwright-mcp-server.json +415 -24
  118. package/docs/safety-index/artifacts/playwright-mcp-server.md +84 -20
  119. package/docs/safety-index/artifacts/postgres-server.json +330 -0
  120. package/docs/safety-index/artifacts/postgres-server.md +208 -0
  121. package/docs/safety-index/artifacts/promptopia-server.json +96 -19
  122. package/docs/safety-index/artifacts/promptopia-server.md +43 -9
  123. package/docs/safety-index/artifacts/puppeteer-server.json +118 -29
  124. package/docs/safety-index/artifacts/puppeteer-server.md +61 -19
  125. package/docs/safety-index/artifacts/qdrant-server.json +66 -0
  126. package/docs/safety-index/artifacts/qdrant-server.md +106 -0
  127. package/docs/safety-index/artifacts/reddit-server.json +66 -0
  128. package/docs/safety-index/artifacts/reddit-server.md +106 -0
  129. package/docs/safety-index/artifacts/ref-tools-server.json +95 -18
  130. package/docs/safety-index/artifacts/ref-tools-server.md +45 -12
  131. package/docs/safety-index/artifacts/sentry-server.json +66 -0
  132. package/docs/safety-index/artifacts/sentry-server.md +106 -0
  133. package/docs/safety-index/artifacts/sequential-thinking-server.json +59 -18
  134. package/docs/safety-index/artifacts/sequential-thinking-server.md +41 -9
  135. package/docs/safety-index/artifacts/slack-server.json +66 -0
  136. package/docs/safety-index/artifacts/slack-server.md +102 -0
  137. package/docs/safety-index/artifacts/sqlite-server.json +67 -0
  138. package/docs/safety-index/artifacts/sqlite-server.md +106 -0
  139. package/docs/safety-index/artifacts/stripe-server.json +66 -0
  140. package/docs/safety-index/artifacts/stripe-server.md +106 -0
  141. package/docs/safety-index/artifacts/supabase-server.json +66 -0
  142. package/docs/safety-index/artifacts/supabase-server.md +102 -0
  143. package/docs/safety-index/artifacts/tavily-search-server.json +66 -0
  144. package/docs/safety-index/artifacts/tavily-search-server.md +106 -0
  145. package/docs/safety-index/artifacts/ui5-mcp-server.json +842 -0
  146. package/docs/safety-index/artifacts/ui5-mcp-server.md +232 -0
  147. package/docs/safety-index/artifacts/vercel-ai-server.json +66 -0
  148. package/docs/safety-index/artifacts/vercel-ai-server.md +106 -0
  149. package/docs/safety-index/targets.json +552 -0
  150. package/package.json +1 -1
  151. package/schemas/run-artifact.schema.json +56 -1
@@ -1,6 +1,6 @@
1
1
  # MCP Observatory Run Report
2
2
 
3
- Generated at 2026-07-06T19:49:47.442Z
3
+ Generated at 2026-07-12T23:43:56.515Z
4
4
 
5
5
  ## Target and Environment Metadata
6
6
 
@@ -25,20 +25,68 @@ Generated at 2026-07-06T19:49:47.442Z
25
25
 
26
26
  | Gate | Total | Pass | Fail | Partial | Unsupported | Flaky | Skipped |
27
27
  | --- | --- | --- | --- | --- | --- | --- | --- |
28
- | pass | 8 | 2 | 0 | 4 | 2 | 0 | 0 |
28
+ | pass | 9 | 2 | 0 | 5 | 2 | 0 | 0 |
29
29
 
30
30
  ## At a Glance
31
31
 
32
32
  - Safety verdict: **Needs review** — The server is usable, but caveated checks should be reviewed before agents depend on it.
33
- - Top risks: attack-sim: Safe attack simulation found 3 finding(s): 0 high, 3 medium, 0 low.; schema-quality: Found 18 quality finding(s) across 14 item(s): 0 warnings, 18 info.; security: Found 3 security finding(s): 0 high, 3 medium, 0 low.
33
+ - Top risks: attack-sim: Safe attack simulation found 3 finding(s): 0 high, 3 medium, 0 low.; runtime-profile: Detected 0 potential egress target(s) and 31 potential state mutation(s) with high confidence.; schema-quality: Found 18 quality finding(s) across 14 item(s): 0 warnings, 18 info.
34
34
  - Regression/schema drift: Run `mcp-observatory diff <previous-run.json> <current-run.json>` to classify regressions and schema drift.
35
35
  - Failing checks: none
36
- - Partial or flaky checks: security-lite, schema-quality, security, attack-sim
36
+ - Partial or flaky checks: security-lite, runtime-profile, schema-quality, security, attack-sim
37
37
  - Skipped checks: none
38
38
  - Unsupported checks: prompts, resources
39
- - Suggested next step: Review the caveated checks next: security-lite, schema-quality, security, attack-sim.
39
+ - Suggested next step: Review the caveated checks next: security-lite, runtime-profile, schema-quality, security, attack-sim.
40
40
  - CI next step: `Add CI: npx @kryptosai/mcp-observatory setup-ci --all --command "npx -y <server-package>"`
41
41
 
42
+ ## What Was Not Tested
43
+
44
+ - 🔒 network_egress: No outbound network calls were attempted during scan
45
+ - â„šī¸ credential_access: Credential scanning was performed (see security findings)
46
+ - â„šī¸ destructive_payloads: Destructive payloads were not attempted (safe-mode only)
47
+
48
+ ## Runtime Profile
49
+
50
+ ### State Mutations
51
+
52
+ The following state-modifying operations were identified from tool schemas:
53
+
54
+ | Resource | Operation | Scope | Source |
55
+ | --- | --- | --- | --- |
56
+ | filesystem | write | working_directory | tool_schema |
57
+ | filesystem | write | working_directory | description_analysis |
58
+ | filesystem | write | working_directory | description_analysis |
59
+ | filesystem | write | working_directory | description_analysis |
60
+ | filesystem | write | working_directory | tool_schema |
61
+ | filesystem | write | working_directory | description_analysis |
62
+ | filesystem | write | working_directory | description_analysis |
63
+ | filesystem | write | working_directory | description_analysis |
64
+ | filesystem | write | working_directory | tool_schema |
65
+ | filesystem | write | working_directory | description_analysis |
66
+ | filesystem | write | working_directory | description_analysis |
67
+ | filesystem | write | working_directory | description_analysis |
68
+ | filesystem | write | working_directory | tool_schema |
69
+ | filesystem | write | working_directory | description_analysis |
70
+ | filesystem | write | working_directory | description_analysis |
71
+ | filesystem | write | working_directory | tool_schema |
72
+ | filesystem | write | working_directory | description_analysis |
73
+ | filesystem | write | working_directory | tool_schema |
74
+ | filesystem | write | working_directory | description_analysis |
75
+ | filesystem | write | working_directory | description_analysis |
76
+ | filesystem | write | working_directory | tool_schema |
77
+ | filesystem | write | working_directory | description_analysis |
78
+ | filesystem | write | working_directory | tool_schema |
79
+ | filesystem | write | working_directory | description_analysis |
80
+ | filesystem | write | working_directory | tool_schema |
81
+ | filesystem | write | working_directory | description_analysis |
82
+ | filesystem | write | working_directory | description_analysis |
83
+ | filesystem | write | working_directory | tool_schema |
84
+ | filesystem | write | working_directory | description_analysis |
85
+ | filesystem | write | working_directory | tool_schema |
86
+ | filesystem | write | working_directory | description_analysis |
87
+
88
+ _Analyzed at 2026-07-12T23:43:57.308Z_
89
+
42
90
  ## Regressions and Recoveries
43
91
 
44
92
  _Use the `diff` command against another run artifact to classify regressions and recoveries over time._
@@ -47,12 +95,13 @@ _Use the `diff` command against another run artifact to classify regressions and
47
95
 
48
96
  | Focus | Check | Status | Duration (ms) | Message |
49
97
  | --- | --- | --- | --- | --- |
50
- | healthy | conformance | pass | 5.46 | All 7 conformance checks passed. |
51
- | healthy | tools | pass | 5.03 | Advertised capability responded with the minimal expected shape (14 items). |
52
- | review | attack-sim | partial | 2.60 | Safe attack simulation found 3 finding(s): 0 high, 3 medium, 0 low. |
53
- | review | schema-quality | partial | 2.50 | Found 18 quality finding(s) across 14 item(s): 0 warnings, 18 info. |
54
- | review | security | partial | 2.20 | Found 3 security finding(s): 0 high, 3 medium, 0 low. |
55
- | review | security-lite | partial | 0.14 | Found 3 security finding(s): 0 high, 3 medium, 0 low. |
98
+ | healthy | conformance | pass | 6.40 | All 7 conformance checks passed. |
99
+ | healthy | tools | pass | 6.31 | Advertised capability responded with the minimal expected shape (14 items). |
100
+ | review | attack-sim | partial | 2.82 | Safe attack simulation found 3 finding(s): 0 high, 3 medium, 0 low. |
101
+ | review | runtime-profile | partial | 0.25 | Detected 0 potential egress target(s) and 31 potential state mutation(s) with high confidence. |
102
+ | review | schema-quality | partial | 3.06 | Found 18 quality finding(s) across 14 item(s): 0 warnings, 18 info. |
103
+ | review | security | partial | 3.18 | Found 3 security finding(s): 0 high, 3 medium, 0 low. |
104
+ | review | security-lite | partial | 0.15 | Found 3 security finding(s): 0 high, 3 medium, 0 low. |
56
105
  | confirm intent | prompts | unsupported | 0.00 | Prompts are not advertised by the target. |
57
106
  | confirm intent | resources | unsupported | 0.00 | Resources are not advertised by the target. |
58
107
 
@@ -94,6 +143,18 @@ Summary: Safe attack simulation found 3 finding(s): 0 high, 3 medium, 0 low.
94
143
  - Identifiers: write_file, edit_file, create_directory
95
144
  - Diagnostics: [medium] Tool "write_file" combines broad parameters (path) with destructive or non-read-only behavior., [medium] Tool "edit_file" combines broad parameters (path) with destructive or non-read-only behavior., [medium] Tool "create_directory" combines broad parameters (path) with destructive or non-read-only behavior.
96
145
 
146
+ ### runtime-profile — partial
147
+
148
+ Summary: Detected 0 potential egress target(s) and 31 potential state mutation(s) with high confidence.
149
+
150
+ - Endpoint: `runtime-profile/analyze`
151
+ - Advertised: `true`
152
+ - Responded: `true`
153
+ - Minimal shape present: `true`
154
+ - Item count: `31`
155
+ - Identifiers: none
156
+ - Diagnostics: Egress entries: 0, State mutations: 31, Confidence: high
157
+
97
158
  ### schema-quality — partial
98
159
 
99
160
  Summary: Found 18 quality finding(s) across 14 item(s): 0 warnings, 18 info.
@@ -165,5 +226,5 @@ npm run cli -- report --run <path-to-run-artifact.json> --format markdown
165
226
 
166
227
  - Artifact type: `run`
167
228
  - Schema version: `1.0.0`
168
- - Run ID: `run_2026-07-06T194947442Z_4e90392b`
229
+ - Run ID: `run_2026-07-12T234356515Z_3a972a27`
169
230
  - Gate: `pass`