@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
@@ -0,0 +1,232 @@
1
+ # MCP Observatory Run Report
2
+
3
+ Generated at 2026-07-12T23:44:04.910Z
4
+
5
+ ## Target and Environment Metadata
6
+
7
+ - Target: `ui5-mcp-server`
8
+ - Adapter: `local-process`
9
+ - Command: `npx -y @ui5/mcp-server`
10
+ - Server: `UI5 0.2.14`
11
+ - Platform: `darwin 25.5.0`
12
+ - Node: `v22.22.1`
13
+
14
+ ## Executive Summary
15
+
16
+ **Health Score: 93/100 (A)**
17
+
18
+ | Dimension | Score | Weight |
19
+ | --- | --- | --- |
20
+ | Protocol Compliance | 100/100 | 30% |
21
+ | Schema Quality | 100/100 | 20% |
22
+ | Security | 100/100 | 20% |
23
+ | Reliability | 67/100 | 20% |
24
+ | Performance | 100/100 | 10% |
25
+
26
+ | Gate | Total | Pass | Fail | Partial | Unsupported | Flaky | Skipped |
27
+ | --- | --- | --- | --- | --- | --- | --- | --- |
28
+ | pass | 9 | 7 | 0 | 0 | 2 | 0 | 0 |
29
+
30
+ ## At a Glance
31
+
32
+ - Safety verdict: **Needs review** — The server is usable, but caveated checks should be reviewed before agents depend on it.
33
+ - Top risks: No high-priority risks detected.
34
+ - Regression/schema drift: Run `mcp-observatory diff <previous-run.json> <current-run.json>` to classify regressions and schema drift.
35
+ - Failing checks: none
36
+ - Partial or flaky checks: none
37
+ - Skipped checks: none
38
+ - Unsupported checks: prompts, resources
39
+ - Suggested next step: Confirm that unsupported capabilities are intentional for this target: prompts, resources.
40
+ - CI next step: `Add CI: npx @kryptosai/mcp-observatory setup-ci --all --command "npx -y <server-package>"`
41
+
42
+ ## What Was Not Tested
43
+
44
+ - â„šī¸ credential_access: Credential scanning was performed (see security findings)
45
+ - â„šī¸ destructive_payloads: Destructive payloads were not attempted (safe-mode only)
46
+
47
+ ## Runtime Profile
48
+
49
+ ### Egress Manifest
50
+
51
+ The following targets were identified as potentially reachable by this server (confidence: **medium**):
52
+
53
+ | Target | Protocol | Source | Confidence |
54
+ | --- | --- | --- | --- |
55
+ | Whether to include supplementary information in the output. This includes UI5 API reference and documentation resources. When calling the tool multiple times for the same file or project, refrain from requesting additional context every time. | unknown | description_analysis | medium |
56
+ | run_ui5_linter | unknown | description_analysis | low |
57
+ | get_api_reference | unknown | description_analysis | low |
58
+ | URL of an OData V4 service, if applicable. This is entirely optional, but without it, the generated app UI will have no OData Model configured. Setting an URL will configure an OData V4 model in the application. Only works for OData V4 services, not for OData V2. The URL must be either a valid complete URL starting with http:// or https:// or a server-root-relative URL like '/odata/v4/serviceName' when the OData service is running on the same server. In this case, the prefix 'http://example.invalid:4004/' will be assumed and used by this tool for inquiries about the service. When the port is not 4004, a complete 'http://example.invalid:<port>...' URL must be provided. In the generated application, any 'http://example.invalid:<port>' prefix will be removed. HINT: when the project is a SAP CAP project and CAP/CDS tools are available, you **MUST** use them to search for OData services and entities and properties **BEFORE** calling this tool. This will help you find the correct service URL. | unknown | description_analysis | medium |
59
+
60
+ ### State Mutations
61
+
62
+ The following state-modifying operations were identified from tool schemas:
63
+
64
+ | Resource | Operation | Scope | Source |
65
+ | --- | --- | --- | --- |
66
+ | filesystem | write | working_directory | description_analysis |
67
+ | filesystem | write | working_directory | description_analysis |
68
+ | filesystem | write | working_directory | description_analysis |
69
+ | filesystem | write | working_directory | description_analysis |
70
+ | filesystem | execute | working_directory | description_analysis |
71
+ | filesystem | write | working_directory | description_analysis |
72
+ | filesystem | write | working_directory | description_analysis |
73
+ | filesystem | write | working_directory | description_analysis |
74
+ | filesystem | write | working_directory | description_analysis |
75
+ | filesystem | write | working_directory | description_analysis |
76
+ | filesystem | write | working_directory | description_analysis |
77
+ | filesystem | write | working_directory | description_analysis |
78
+ | filesystem | write | working_directory | description_analysis |
79
+ | filesystem | write | working_directory | description_analysis |
80
+ | filesystem | write | working_directory | description_analysis |
81
+ | filesystem | write | working_directory | description_analysis |
82
+ | filesystem | write | working_directory | description_analysis |
83
+ | filesystem | write | working_directory | description_analysis |
84
+ | filesystem | write | working_directory | description_analysis |
85
+ | filesystem | write | working_directory | description_analysis |
86
+ | filesystem | write | working_directory | description_analysis |
87
+ | filesystem | write | working_directory | description_analysis |
88
+ | filesystem | execute | working_directory | description_analysis |
89
+
90
+ _Analyzed at 2026-07-12T23:44:06.359Z_
91
+
92
+ ## Regressions and Recoveries
93
+
94
+ _Use the `diff` command against another run artifact to classify regressions and recoveries over time._
95
+
96
+ ## Full Capability Status Table
97
+
98
+ | Focus | Check | Status | Duration (ms) | Message |
99
+ | --- | --- | --- | --- | --- |
100
+ | healthy | attack-sim | pass | 3.51 | Safe attack simulation found no high-risk MCP attack-readiness findings. |
101
+ | healthy | conformance | pass | 7.13 | All 7 conformance checks passed. |
102
+ | healthy | runtime-profile | pass | 0.14 | Detected 4 potential egress target(s) and 23 potential state mutation(s) with low confidence. |
103
+ | healthy | schema-quality | pass | 3.92 | All 10 item(s) have good schema quality. |
104
+ | healthy | security | pass | 3.33 | No security issues detected. |
105
+ | healthy | security-lite | pass | 0.04 | No security issues detected (lightweight scan). |
106
+ | healthy | tools | pass | 6.43 | Advertised capability responded with the minimal expected shape (10 items). |
107
+ | confirm intent | prompts | unsupported | 0.00 | Prompts are not advertised by the target. |
108
+ | confirm intent | resources | unsupported | 0.00 | Resources are not advertised by the target. |
109
+
110
+ ## Evidence Snippets
111
+
112
+ ### attack-sim — pass
113
+
114
+ Summary: Safe attack simulation found no high-risk MCP attack-readiness findings.
115
+
116
+ - Endpoint: `attack-sim/safe`
117
+ - Advertised: `true`
118
+ - Responded: `true`
119
+ - Minimal shape present: `true`
120
+ - Item count: `0`
121
+ - Identifiers: none
122
+ - Diagnostics: none
123
+
124
+ ### conformance — pass
125
+
126
+ Summary: All 7 conformance checks passed.
127
+
128
+ - Endpoint: `conformance/check`
129
+ - Advertised: `true`
130
+ - Responded: `true`
131
+ - Minimal shape present: `true`
132
+ - Item count: `7`
133
+ - Identifiers: none
134
+ - Diagnostics: [pass] capabilities-present: Server returned capabilities object., [pass] server-info: Server provided initialization info., [pass] tools-capability-match: tools/list returned 10 tool(s). (+4 more)
135
+
136
+ ### runtime-profile — pass
137
+
138
+ Summary: Detected 4 potential egress target(s) and 23 potential state mutation(s) with low confidence.
139
+
140
+ - Endpoint: `runtime-profile/analyze`
141
+ - Advertised: `true`
142
+ - Responded: `true`
143
+ - Minimal shape present: `true`
144
+ - Item count: `27`
145
+ - Identifiers: none
146
+ - Diagnostics: Egress entries: 4, State mutations: 23, Confidence: medium
147
+
148
+ ### schema-quality — pass
149
+
150
+ Summary: All 10 item(s) have good schema quality.
151
+
152
+ - Endpoint: `schema-quality/scan`
153
+ - Advertised: `true`
154
+ - Responded: `true`
155
+ - Minimal shape present: `true`
156
+ - Item count: `0`
157
+ - Identifiers: none
158
+ - Diagnostics: none
159
+
160
+ ### security — pass
161
+
162
+ Summary: No security issues detected.
163
+
164
+ - Endpoint: `security/scan`
165
+ - Advertised: `true`
166
+ - Responded: `true`
167
+ - Minimal shape present: `true`
168
+ - Item count: `0`
169
+ - Identifiers: none
170
+ - Diagnostics: none
171
+
172
+ ### security-lite — pass
173
+
174
+ Summary: No security issues detected (lightweight scan).
175
+
176
+ - Endpoint: `security/scan-lite`
177
+ - Advertised: `true`
178
+ - Responded: `true`
179
+ - Minimal shape present: `true`
180
+ - Item count: `0`
181
+ - Identifiers: none
182
+ - Diagnostics: none
183
+
184
+ ### tools — pass
185
+
186
+ Summary: Advertised capability responded with the minimal expected shape (10 items).
187
+
188
+ - Endpoint: `tools/list`
189
+ - Advertised: `true`
190
+ - Responded: `true`
191
+ - Minimal shape present: `true`
192
+ - Item count: `10`
193
+ - Identifiers: get_guidelines, run_ui5_linter, get_api_reference, get_project_info, create_ui5_app (+5 more)
194
+ - Diagnostics: none
195
+
196
+ ### prompts — unsupported
197
+
198
+ Summary: Prompts are not advertised by the target.
199
+
200
+ - Endpoint: `prompts/list`
201
+ - Advertised: `false`
202
+ - Responded: `false`
203
+ - Minimal shape present: `false`
204
+ - Item count: `0`
205
+ - Identifiers: none
206
+ - Diagnostics: none
207
+
208
+ ### resources — unsupported
209
+
210
+ Summary: Resources are not advertised by the target.
211
+
212
+ - Endpoint: `resources/list | resources/templates/list`
213
+ - Advertised: `false`
214
+ - Responded: `false`
215
+ - Minimal shape present: `false`
216
+ - Item count: `0`
217
+ - Identifiers: none
218
+ - Diagnostics: none
219
+
220
+ ## Reproduction Commands
221
+
222
+ ```bash
223
+ npm run cli -- run --target <path-to-target-config.json>
224
+ npm run cli -- report --run <path-to-run-artifact.json> --format markdown
225
+ ```
226
+
227
+ ## Artifact Provenance
228
+
229
+ - Artifact type: `run`
230
+ - Schema version: `1.0.0`
231
+ - Run ID: `run_2026-07-12T234404910Z_de50bf29`
232
+ - Gate: `pass`
@@ -0,0 +1,66 @@
1
+ {
2
+ "artifactType": "run",
3
+ "schemaVersion": "1.0.0",
4
+ "gate": "fail",
5
+ "runId": "run_2026-07-12T234420008Z_4ee48d79",
6
+ "createdAt": "2026-07-12T23:44:20.008Z",
7
+ "toolVersion": "1.31.0",
8
+ "target": {
9
+ "targetId": "vercel-ai-server",
10
+ "adapter": "local-process",
11
+ "command": "npx",
12
+ "args": [
13
+ "-y",
14
+ "@anthropic/mcp-server-vercel-ai"
15
+ ],
16
+ "cwd": ".",
17
+ "metadata": {
18
+ "package": "@anthropic/mcp-server-vercel-ai",
19
+ "purpose": "mcp-safety-index",
20
+ "riskClass": "AI platform access",
21
+ "failureClass": "Deployment/project boundary",
22
+ "whyItMatters": "Vercel AI SDK MCP servers can expose project management, deployment triggers, and AI model configuration to agents."
23
+ }
24
+ },
25
+ "environment": {
26
+ "platform": "darwin 25.5.0",
27
+ "nodeVersion": "v22.22.1"
28
+ },
29
+ "summary": {
30
+ "total": 3,
31
+ "pass": 0,
32
+ "fail": 0,
33
+ "partial": 0,
34
+ "unsupported": 0,
35
+ "flaky": 0,
36
+ "skipped": 3,
37
+ "gate": "fail"
38
+ },
39
+ "checks": [
40
+ {
41
+ "id": "tools",
42
+ "capability": "tools",
43
+ "status": "skipped",
44
+ "durationMs": 0,
45
+ "message": "Skipped because startup failed before the MCP session initialized. See the failure diagnosis.",
46
+ "evidence": []
47
+ },
48
+ {
49
+ "id": "prompts",
50
+ "capability": "prompts",
51
+ "status": "skipped",
52
+ "durationMs": 0,
53
+ "message": "Skipped because startup failed before the MCP session initialized. See the failure diagnosis.",
54
+ "evidence": []
55
+ },
56
+ {
57
+ "id": "resources",
58
+ "capability": "resources",
59
+ "status": "skipped",
60
+ "durationMs": 0,
61
+ "message": "Skipped because startup failed before the MCP session initialized. See the failure diagnosis.",
62
+ "evidence": []
63
+ }
64
+ ],
65
+ "fatalError": "Could not establish a plain stdio MCP session for target `vercel-ai-server`.\nCommand: npx -y @anthropic/mcp-server-vercel-ai\nDiagnosis: The process exited or detached before MCP initialization completed.\nRaw error: MCP error -32000: Connection closed\nLikely causes:\n- The package may expect extra startup arguments or environment variables.\n- The package may not behave like a plain local-process stdio target under this invocation.\n- The server may be crashing immediately and only leaving clues on stderr.\nNext steps:\n- Run the command manually and look for usage output, auth prompts, or crash text.\n- Check whether the package expects a different transport or an app-oriented startup flow.\n- Use the recent stderr lines below before assuming this is a harness bug.\nRecent stderr:\n- npm error 404 '@anthropic/mcp-server-vercel-ai@*' is not in this registry.\n- npm error 404\n- npm error 404 Note that you can also install from a\n- npm error 404 tarball, folder, http url, or git url.\n- npm error A complete log of this run can be found in: /Users/williamweishuhn/.npm/_logs/2026-07-12T23_44_20_088Z-debug-0.log"
66
+ }
@@ -0,0 +1,106 @@
1
+ # MCP Observatory Run Report
2
+
3
+ Generated at 2026-07-12T23:44:20.008Z
4
+
5
+ ## Target and Environment Metadata
6
+
7
+ - Target: `vercel-ai-server`
8
+ - Adapter: `local-process`
9
+ - Command: `npx -y @anthropic/mcp-server-vercel-ai`
10
+ - Server: `unknown `
11
+ - Platform: `darwin 25.5.0`
12
+ - Node: `v22.22.1`
13
+
14
+ ## Executive Summary
15
+
16
+ | Gate | Total | Pass | Fail | Partial | Unsupported | Flaky | Skipped |
17
+ | --- | --- | --- | --- | --- | --- | --- | --- |
18
+ | fail | 3 | 0 | 0 | 0 | 0 | 0 | 3 |
19
+
20
+ ## At a Glance
21
+
22
+ - Safety verdict: **Blocked** — One or more checks can break agent dependence and should be fixed before production use.
23
+ - Top risks: startup: server failed to start
24
+ - Regression/schema drift: Run `mcp-observatory diff <previous-run.json> <current-run.json>` to classify regressions and schema drift.
25
+ - Failing checks: none
26
+ - Partial or flaky checks: none
27
+ - Skipped checks: tools, prompts, resources
28
+ - Unsupported checks: none
29
+ - Suggested next step: Run the target command manually, compare stderr with the diagnosis below, and only raise timeoutMs if startup is genuinely slow.
30
+ - CI next step: `Add CI: npx @kryptosai/mcp-observatory setup-ci --all --command "npx -y <server-package>"`
31
+
32
+ ## What Was Not Tested
33
+
34
+ - 🔒 network_egress: No outbound network calls were attempted during scan
35
+ - 🔒 filesystem_mutation: Filesystem write operations were not exercised
36
+ - 🔒 credential_access: Credential scanning was not performed
37
+ - â„šī¸ destructive_payloads: Destructive payloads were not attempted (safe-mode only)
38
+
39
+ ## Regressions and Recoveries
40
+
41
+ _Use the `diff` command against another run artifact to classify regressions and recoveries over time._
42
+
43
+ ## Failure Diagnosis
44
+
45
+ ```text
46
+ Could not establish a plain stdio MCP session for target `vercel-ai-server`.
47
+ Command: npx -y @anthropic/mcp-server-vercel-ai
48
+ Diagnosis: The process exited or detached before MCP initialization completed.
49
+ Raw error: MCP error -32000: Connection closed
50
+ Likely causes:
51
+ - The package may expect extra startup arguments or environment variables.
52
+ - The package may not behave like a plain local-process stdio target under this invocation.
53
+ - The server may be crashing immediately and only leaving clues on stderr.
54
+ Next steps:
55
+ - Run the command manually and look for usage output, auth prompts, or crash text.
56
+ - Check whether the package expects a different transport or an app-oriented startup flow.
57
+ - Use the recent stderr lines below before assuming this is a harness bug.
58
+ Recent stderr:
59
+ - npm error 404 '@anthropic/mcp-server-vercel-ai@*' is not in this registry.
60
+ - npm error 404
61
+ - npm error 404 Note that you can also install from a
62
+ - npm error 404 tarball, folder, http url, or git url.
63
+ - npm error A complete log of this run can be found in: /Users/williamweishuhn/.npm/_logs/2026-07-12T23_44_20_088Z-debug-0.log
64
+ ```
65
+
66
+ ## Full Capability Status Table
67
+
68
+ | Focus | Check | Status | Duration (ms) | Message |
69
+ | --- | --- | --- | --- | --- |
70
+ | inspect startup | prompts | skipped | 0.00 | Skipped because startup failed before the MCP session initialized. See the failure diagnosis. |
71
+ | inspect startup | resources | skipped | 0.00 | Skipped because startup failed before the MCP session initialized. See the failure diagnosis. |
72
+ | inspect startup | tools | skipped | 0.00 | Skipped because startup failed before the MCP session initialized. See the failure diagnosis. |
73
+
74
+ ## Evidence Snippets
75
+
76
+ ### prompts — skipped
77
+
78
+ Summary: Skipped because startup failed before the MCP session initialized. See the failure diagnosis.
79
+
80
+ _No evidence was captured._
81
+
82
+ ### resources — skipped
83
+
84
+ Summary: Skipped because startup failed before the MCP session initialized. See the failure diagnosis.
85
+
86
+ _No evidence was captured._
87
+
88
+ ### tools — skipped
89
+
90
+ Summary: Skipped because startup failed before the MCP session initialized. See the failure diagnosis.
91
+
92
+ _No evidence was captured._
93
+
94
+ ## Reproduction Commands
95
+
96
+ ```bash
97
+ npm run cli -- run --target <path-to-target-config.json>
98
+ npm run cli -- report --run <path-to-run-artifact.json> --format markdown
99
+ ```
100
+
101
+ ## Artifact Provenance
102
+
103
+ - Artifact type: `run`
104
+ - Schema version: `1.0.0`
105
+ - Run ID: `run_2026-07-12T234420008Z_4ee48d79`
106
+ - Gate: `fail`