@kryptosai/mcp-observatory 1.32.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.
- package/README.md +4 -10
- package/README.zh-CN.md +4 -10
- package/dist/src/cli.js +1 -1
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/enforce.d.ts +2 -2
- package/dist/src/commands/enforce.js +5 -8
- package/dist/src/commands/enforce.js.map +1 -1
- package/dist/src/commands/scan.js.map +1 -1
- package/dist/src/commands/test.js +2 -2
- package/dist/src/commands/test.js.map +1 -1
- package/dist/src/telemetry.js +2 -1
- package/dist/src/telemetry.js.map +1 -1
- package/dist/src/validate.js +5 -6
- package/dist/src/validate.js.map +1 -1
- package/docs/mcp-server-safety-index.md +68 -8
- package/docs/safety-index/artifacts/antv-chart-server.json +1452 -19
- package/docs/safety-index/artifacts/antv-chart-server.md +156 -10
- package/docs/safety-index/artifacts/brave-search-server.json +341 -0
- package/docs/safety-index/artifacts/brave-search-server.md +201 -0
- package/docs/safety-index/artifacts/browsermcp-server.json +83 -18
- package/docs/safety-index/artifacts/browsermcp-server.md +46 -12
- package/docs/safety-index/artifacts/chrome-devtools-mcp-server.json +592 -21
- package/docs/safety-index/artifacts/chrome-devtools-mcp-server.md +96 -14
- package/docs/safety-index/artifacts/clay-server.json +66 -0
- package/docs/safety-index/artifacts/clay-server.md +106 -0
- package/docs/safety-index/artifacts/cloudflare-server.json +66 -0
- package/docs/safety-index/artifacts/cloudflare-server.md +106 -0
- package/docs/safety-index/artifacts/context7-server.json +85 -18
- package/docs/safety-index/artifacts/context7-server.md +52 -11
- package/docs/safety-index/artifacts/cyanheads-git-mcp-server.json +1565 -34
- package/docs/safety-index/artifacts/cyanheads-git-mcp-server.md +178 -17
- package/docs/safety-index/artifacts/docker-server.json +395 -0
- package/docs/safety-index/artifacts/docker-server.md +204 -0
- package/docs/safety-index/artifacts/everything-server.json +145 -18
- package/docs/safety-index/artifacts/everything-server.md +56 -11
- package/docs/safety-index/artifacts/exa-server.json +400 -0
- package/docs/safety-index/artifacts/exa-server.md +207 -0
- package/docs/safety-index/artifacts/executeautomation-playwright-server.json +625 -18
- package/docs/safety-index/artifacts/executeautomation-playwright-server.md +95 -11
- package/docs/safety-index/artifacts/fetch-server.json +66 -0
- package/docs/safety-index/artifacts/fetch-server.md +106 -0
- package/docs/safety-index/artifacts/figma-server.json +1766 -0
- package/docs/safety-index/artifacts/figma-server.md +256 -0
- package/docs/safety-index/artifacts/filesystem-mcp-server.json +428 -24
- package/docs/safety-index/artifacts/filesystem-mcp-server.md +75 -14
- package/docs/safety-index/artifacts/filesystem-server.json +426 -22
- package/docs/safety-index/artifacts/filesystem-server.md +73 -12
- package/docs/safety-index/artifacts/firecrawl-server.json +4056 -0
- package/docs/safety-index/artifacts/firecrawl-server.md +243 -0
- package/docs/safety-index/artifacts/github-mcp-server.json +374 -21
- package/docs/safety-index/artifacts/github-mcp-server.md +71 -15
- package/docs/safety-index/artifacts/gitlab-server.json +229 -0
- package/docs/safety-index/artifacts/gitlab-server.md +753 -0
- package/docs/safety-index/artifacts/gmail-server.json +66 -0
- package/docs/safety-index/artifacts/gmail-server.md +106 -0
- package/docs/safety-index/artifacts/google-calendar-server.json +66 -0
- package/docs/safety-index/artifacts/google-calendar-server.md +106 -0
- package/docs/safety-index/artifacts/google-drive-server.json +66 -0
- package/docs/safety-index/artifacts/google-drive-server.md +106 -0
- package/docs/safety-index/artifacts/google-sheets-server.json +66 -0
- package/docs/safety-index/artifacts/google-sheets-server.md +106 -0
- package/docs/safety-index/artifacts/google-tasks-server.json +66 -0
- package/docs/safety-index/artifacts/google-tasks-server.md +106 -0
- package/docs/safety-index/artifacts/huggingface-server.json +66 -0
- package/docs/safety-index/artifacts/huggingface-server.md +106 -0
- package/docs/safety-index/artifacts/jina-server.json +66 -0
- package/docs/safety-index/artifacts/jina-server.md +106 -0
- package/docs/safety-index/artifacts/kubernetes-server.json +1054 -27
- package/docs/safety-index/artifacts/kubernetes-server.md +137 -18
- package/docs/safety-index/artifacts/linear-server.json +1494 -0
- package/docs/safety-index/artifacts/linear-server.md +237 -0
- package/docs/safety-index/artifacts/memory-server.json +191 -18
- package/docs/safety-index/artifacts/memory-server.md +51 -9
- package/docs/safety-index/artifacts/mongodb-server.json +66 -0
- package/docs/safety-index/artifacts/mongodb-server.md +106 -0
- package/docs/safety-index/artifacts/neon-server.json +66 -0
- package/docs/safety-index/artifacts/neon-server.md +103 -0
- package/docs/safety-index/artifacts/notion-server.json +7151 -0
- package/docs/safety-index/artifacts/notion-server.md +236 -0
- package/docs/safety-index/artifacts/onesignal-server.json +66 -0
- package/docs/safety-index/artifacts/onesignal-server.md +106 -0
- package/docs/safety-index/artifacts/opentofu-server.json +31 -19
- package/docs/safety-index/artifacts/opentofu-server.md +28 -10
- package/docs/safety-index/artifacts/playwright-mcp-server.json +415 -24
- package/docs/safety-index/artifacts/playwright-mcp-server.md +84 -20
- package/docs/safety-index/artifacts/postgres-server.json +330 -0
- package/docs/safety-index/artifacts/postgres-server.md +208 -0
- package/docs/safety-index/artifacts/promptopia-server.json +96 -19
- package/docs/safety-index/artifacts/promptopia-server.md +43 -9
- package/docs/safety-index/artifacts/puppeteer-server.json +118 -29
- package/docs/safety-index/artifacts/puppeteer-server.md +61 -19
- package/docs/safety-index/artifacts/qdrant-server.json +66 -0
- package/docs/safety-index/artifacts/qdrant-server.md +106 -0
- package/docs/safety-index/artifacts/reddit-server.json +66 -0
- package/docs/safety-index/artifacts/reddit-server.md +106 -0
- package/docs/safety-index/artifacts/ref-tools-server.json +95 -18
- package/docs/safety-index/artifacts/ref-tools-server.md +45 -12
- package/docs/safety-index/artifacts/sentry-server.json +66 -0
- package/docs/safety-index/artifacts/sentry-server.md +106 -0
- package/docs/safety-index/artifacts/sequential-thinking-server.json +59 -18
- package/docs/safety-index/artifacts/sequential-thinking-server.md +41 -9
- package/docs/safety-index/artifacts/slack-server.json +66 -0
- package/docs/safety-index/artifacts/slack-server.md +102 -0
- package/docs/safety-index/artifacts/sqlite-server.json +67 -0
- package/docs/safety-index/artifacts/sqlite-server.md +106 -0
- package/docs/safety-index/artifacts/stripe-server.json +66 -0
- package/docs/safety-index/artifacts/stripe-server.md +106 -0
- package/docs/safety-index/artifacts/supabase-server.json +66 -0
- package/docs/safety-index/artifacts/supabase-server.md +102 -0
- package/docs/safety-index/artifacts/tavily-search-server.json +66 -0
- package/docs/safety-index/artifacts/tavily-search-server.md +106 -0
- package/docs/safety-index/artifacts/ui5-mcp-server.json +24 -24
- package/docs/safety-index/artifacts/ui5-mcp-server.md +13 -13
- package/docs/safety-index/artifacts/vercel-ai-server.json +66 -0
- package/docs/safety-index/artifacts/vercel-ai-server.md +106 -0
- package/docs/safety-index/targets.json +535 -0
- package/package.json +1 -1
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
# MCP Observatory Run Report
|
|
2
|
+
|
|
3
|
+
Generated at 2026-07-12T23:44:23.094Z
|
|
4
|
+
|
|
5
|
+
## Target and Environment Metadata
|
|
6
|
+
|
|
7
|
+
- Target: `linear-server`
|
|
8
|
+
- Adapter: `local-process`
|
|
9
|
+
- Command: `npx -y mcp-server-linear`
|
|
10
|
+
- Server: `linear-server 0.1.0`
|
|
11
|
+
- Platform: `darwin 25.5.0`
|
|
12
|
+
- Node: `v22.22.1`
|
|
13
|
+
|
|
14
|
+
## Executive Summary
|
|
15
|
+
|
|
16
|
+
**Health Score: 60/100 (D)**
|
|
17
|
+
|
|
18
|
+
| Dimension | Score | Weight |
|
|
19
|
+
| --- | --- | --- |
|
|
20
|
+
| Protocol Compliance | 60/100 | 30% |
|
|
21
|
+
| Schema Quality | 60/100 | 20% |
|
|
22
|
+
| Security | 33/100 | 20% |
|
|
23
|
+
| Reliability | 67/100 | 20% |
|
|
24
|
+
| Performance | 100/100 | 10% |
|
|
25
|
+
|
|
26
|
+
| Gate | Total | Pass | Fail | Partial | Unsupported | Flaky | Skipped |
|
|
27
|
+
| --- | --- | --- | --- | --- | --- | --- | --- |
|
|
28
|
+
| fail | 9 | 3 | 2 | 2 | 2 | 0 | 0 |
|
|
29
|
+
|
|
30
|
+
## At a Glance
|
|
31
|
+
|
|
32
|
+
- Safety verdict: **Blocked** â One or more checks can break agent dependence and should be fixed before production use.
|
|
33
|
+
- Top risks: conformance: 6/7 conformance checks passed, 1 failed.; schema-quality: Found 5 quality finding(s) across 24 item(s): 0 warnings, 5 info.; security: Found 1 security finding(s): 1 high, 0 medium, 0 low.
|
|
34
|
+
- Regression/schema drift: Run `mcp-observatory diff <previous-run.json> <current-run.json>` to classify regressions and schema drift.
|
|
35
|
+
- Failing checks: security-lite, security
|
|
36
|
+
- Partial or flaky checks: conformance, schema-quality
|
|
37
|
+
- Skipped checks: none
|
|
38
|
+
- Unsupported checks: prompts, resources
|
|
39
|
+
- Suggested next step: Start with the failing checks: security-lite, security.
|
|
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
|
+
- đ 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
|
+
### Egress Manifest
|
|
51
|
+
|
|
52
|
+
The following targets were identified as potentially reachable by this server (confidence: **medium**):
|
|
53
|
+
|
|
54
|
+
| Target | Protocol | Source | Confidence |
|
|
55
|
+
| --- | --- | --- | --- |
|
|
56
|
+
| URL of the avatar to display | unknown | description_analysis | medium |
|
|
57
|
+
|
|
58
|
+
### State Mutations
|
|
59
|
+
|
|
60
|
+
The following state-modifying operations were identified from tool schemas:
|
|
61
|
+
|
|
62
|
+
| Resource | Operation | Scope | Source |
|
|
63
|
+
| --- | --- | --- | --- |
|
|
64
|
+
| filesystem | write | working_directory | description_analysis |
|
|
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 | description_analysis |
|
|
69
|
+
| filesystem | write | working_directory | description_analysis |
|
|
70
|
+
| filesystem | write | 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 | write | working_directory | description_analysis |
|
|
89
|
+
| filesystem | write | working_directory | description_analysis |
|
|
90
|
+
| filesystem | write | working_directory | description_analysis |
|
|
91
|
+
| filesystem | write | working_directory | description_analysis |
|
|
92
|
+
| filesystem | write | working_directory | description_analysis |
|
|
93
|
+
| filesystem | write | working_directory | description_analysis |
|
|
94
|
+
|
|
95
|
+
_Analyzed at 2026-07-12T23:44:24.026Z_
|
|
96
|
+
|
|
97
|
+
## Regressions and Recoveries
|
|
98
|
+
|
|
99
|
+
_Use the `diff` command against another run artifact to classify regressions and recoveries over time._
|
|
100
|
+
|
|
101
|
+
## Full Capability Status Table
|
|
102
|
+
|
|
103
|
+
| Focus | Check | Status | Duration (ms) | Message |
|
|
104
|
+
| --- | --- | --- | --- | --- |
|
|
105
|
+
| healthy | attack-sim | pass | 0.51 | Safe attack simulation found no high-risk MCP attack-readiness findings. |
|
|
106
|
+
| healthy | runtime-profile | pass | 0.17 | Detected 1 potential egress target(s) and 30 potential state mutation(s) with low confidence. |
|
|
107
|
+
| healthy | tools | pass | 1.08 | Advertised capability responded with the minimal expected shape (24 items). |
|
|
108
|
+
| review | conformance | partial | 1.42 | 6/7 conformance checks passed, 1 failed. |
|
|
109
|
+
| review | schema-quality | partial | 0.51 | Found 5 quality finding(s) across 24 item(s): 0 warnings, 5 info. |
|
|
110
|
+
| confirm intent | prompts | unsupported | 0.00 | Prompts are not advertised by the target. |
|
|
111
|
+
| confirm intent | resources | unsupported | 0.00 | Resources are not advertised by the target. |
|
|
112
|
+
| act now | security | fail | 0.44 | Found 1 security finding(s): 1 high, 0 medium, 0 low. |
|
|
113
|
+
| act now | security-lite | fail | 0.05 | Found 1 security finding(s): 1 high, 0 medium, 0 low. |
|
|
114
|
+
|
|
115
|
+
## Evidence Snippets
|
|
116
|
+
|
|
117
|
+
### attack-sim â pass
|
|
118
|
+
|
|
119
|
+
Summary: Safe attack simulation found no high-risk MCP attack-readiness findings.
|
|
120
|
+
|
|
121
|
+
- Endpoint: `attack-sim/safe`
|
|
122
|
+
- Advertised: `true`
|
|
123
|
+
- Responded: `true`
|
|
124
|
+
- Minimal shape present: `true`
|
|
125
|
+
- Item count: `0`
|
|
126
|
+
- Identifiers: none
|
|
127
|
+
- Diagnostics: none
|
|
128
|
+
|
|
129
|
+
### runtime-profile â pass
|
|
130
|
+
|
|
131
|
+
Summary: Detected 1 potential egress target(s) and 30 potential state mutation(s) with low confidence.
|
|
132
|
+
|
|
133
|
+
- Endpoint: `runtime-profile/analyze`
|
|
134
|
+
- Advertised: `true`
|
|
135
|
+
- Responded: `true`
|
|
136
|
+
- Minimal shape present: `true`
|
|
137
|
+
- Item count: `31`
|
|
138
|
+
- Identifiers: none
|
|
139
|
+
- Diagnostics: Egress entries: 1, State mutations: 30, Confidence: medium
|
|
140
|
+
|
|
141
|
+
### tools â pass
|
|
142
|
+
|
|
143
|
+
Summary: Advertised capability responded with the minimal expected shape (24 items).
|
|
144
|
+
|
|
145
|
+
- Endpoint: `tools/list`
|
|
146
|
+
- Advertised: `true`
|
|
147
|
+
- Responded: `true`
|
|
148
|
+
- Minimal shape present: `true`
|
|
149
|
+
- Item count: `24`
|
|
150
|
+
- Identifiers: linear_auth_callback, linear_create_issue, linear_create_project_with_issues, linear_bulk_update_issues, linear_edit_issue (+19 more)
|
|
151
|
+
- Diagnostics: Linear MCP server running on stdio
|
|
152
|
+
|
|
153
|
+
### conformance â partial
|
|
154
|
+
|
|
155
|
+
Summary: 6/7 conformance checks passed, 1 failed.
|
|
156
|
+
|
|
157
|
+
- Endpoint: `conformance/check`
|
|
158
|
+
- Advertised: `true`
|
|
159
|
+
- Responded: `true`
|
|
160
|
+
- Minimal shape present: `false`
|
|
161
|
+
- Item count: `7`
|
|
162
|
+
- Identifiers: tool-response-content
|
|
163
|
+
- Diagnostics: [pass] capabilities-present: Server returned capabilities object., [pass] server-info: Server provided initialization info., [pass] tools-capability-match: tools/list returned 24 tool(s). (+4 more)
|
|
164
|
+
|
|
165
|
+
### schema-quality â partial
|
|
166
|
+
|
|
167
|
+
Summary: Found 5 quality finding(s) across 24 item(s): 0 warnings, 5 info.
|
|
168
|
+
|
|
169
|
+
- Endpoint: `schema-quality/scan`
|
|
170
|
+
- Advertised: `true`
|
|
171
|
+
- Responded: `true`
|
|
172
|
+
- Minimal shape present: `true`
|
|
173
|
+
- Item count: `5`
|
|
174
|
+
- Identifiers: linear_create_project_with_issues, linear_bulk_update_issues, linear_search_issues, linear_list_projects, linear_update_comment
|
|
175
|
+
- Diagnostics: [info] tool "linear_create_project_with_issues": Property 'project' missing description, [info] tool "linear_bulk_update_issues": Property 'update' missing description, [info] tool "linear_search_issues": Has properties but no 'required' array declared (+2 more)
|
|
176
|
+
|
|
177
|
+
### prompts â unsupported
|
|
178
|
+
|
|
179
|
+
Summary: Prompts are not advertised by the target.
|
|
180
|
+
|
|
181
|
+
- Endpoint: `prompts/list`
|
|
182
|
+
- Advertised: `false`
|
|
183
|
+
- Responded: `false`
|
|
184
|
+
- Minimal shape present: `false`
|
|
185
|
+
- Item count: `0`
|
|
186
|
+
- Identifiers: none
|
|
187
|
+
- Diagnostics: none
|
|
188
|
+
|
|
189
|
+
### resources â unsupported
|
|
190
|
+
|
|
191
|
+
Summary: Resources are not advertised by the target.
|
|
192
|
+
|
|
193
|
+
- Endpoint: `resources/list | resources/templates/list`
|
|
194
|
+
- Advertised: `false`
|
|
195
|
+
- Responded: `false`
|
|
196
|
+
- Minimal shape present: `false`
|
|
197
|
+
- Item count: `0`
|
|
198
|
+
- Identifiers: none
|
|
199
|
+
- Diagnostics: none
|
|
200
|
+
|
|
201
|
+
### security â fail
|
|
202
|
+
|
|
203
|
+
Summary: Found 1 security finding(s): 1 high, 0 medium, 0 low.
|
|
204
|
+
|
|
205
|
+
- Endpoint: `security/scan`
|
|
206
|
+
- Advertised: `true`
|
|
207
|
+
- Responded: `true`
|
|
208
|
+
- Minimal shape present: `true`
|
|
209
|
+
- Item count: `1`
|
|
210
|
+
- Identifiers: linear_auth_callback
|
|
211
|
+
- Diagnostics: [high] Tool "linear_auth_callback" has parameter "code" which may allow arbitrary command execution.
|
|
212
|
+
|
|
213
|
+
### security-lite â fail
|
|
214
|
+
|
|
215
|
+
Summary: Found 1 security finding(s): 1 high, 0 medium, 0 low.
|
|
216
|
+
|
|
217
|
+
- Endpoint: `security/scan-lite`
|
|
218
|
+
- Advertised: `true`
|
|
219
|
+
- Responded: `true`
|
|
220
|
+
- Minimal shape present: `true`
|
|
221
|
+
- Item count: `1`
|
|
222
|
+
- Identifiers: linear_auth_callback
|
|
223
|
+
- Diagnostics: [high] Tool "linear_auth_callback" has parameter "code" which may allow arbitrary command execution.
|
|
224
|
+
|
|
225
|
+
## Reproduction Commands
|
|
226
|
+
|
|
227
|
+
```bash
|
|
228
|
+
npm run cli -- run --target <path-to-target-config.json>
|
|
229
|
+
npm run cli -- report --run <path-to-run-artifact.json> --format markdown
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
## Artifact Provenance
|
|
233
|
+
|
|
234
|
+
- Artifact type: `run`
|
|
235
|
+
- Schema version: `1.0.0`
|
|
236
|
+
- Run ID: `run_2026-07-12T234423094Z_34be3205`
|
|
237
|
+
- Gate: `fail`
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
"artifactType": "run",
|
|
3
3
|
"schemaVersion": "1.0.0",
|
|
4
4
|
"gate": "pass",
|
|
5
|
-
"runId": "run_2026-07-
|
|
6
|
-
"createdAt": "2026-07-
|
|
7
|
-
"toolVersion": "
|
|
5
|
+
"runId": "run_2026-07-12T234355682Z_37a2cec6",
|
|
6
|
+
"createdAt": "2026-07-12T23:43:55.682Z",
|
|
7
|
+
"toolVersion": "1.31.0",
|
|
8
8
|
"target": {
|
|
9
9
|
"targetId": "memory-server",
|
|
10
10
|
"adapter": "local-process",
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
"nodeVersion": "v22.22.1"
|
|
30
30
|
},
|
|
31
31
|
"summary": {
|
|
32
|
-
"total":
|
|
33
|
-
"pass":
|
|
32
|
+
"total": 9,
|
|
33
|
+
"pass": 7,
|
|
34
34
|
"fail": 0,
|
|
35
35
|
"partial": 1,
|
|
36
36
|
"unsupported": 1,
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"id": "tools",
|
|
44
44
|
"capability": "tools",
|
|
45
45
|
"status": "pass",
|
|
46
|
-
"durationMs": 7.
|
|
46
|
+
"durationMs": 7.791874999999891,
|
|
47
47
|
"message": "Advertised capability responded with the minimal expected shape (9 items).",
|
|
48
48
|
"evidence": [
|
|
49
49
|
{
|
|
@@ -295,7 +295,7 @@
|
|
|
295
295
|
"id": "prompts",
|
|
296
296
|
"capability": "prompts",
|
|
297
297
|
"status": "unsupported",
|
|
298
|
-
"durationMs": 0.
|
|
298
|
+
"durationMs": 0.00204200000007404,
|
|
299
299
|
"message": "Prompts are not advertised by the target.",
|
|
300
300
|
"evidence": [
|
|
301
301
|
{
|
|
@@ -311,7 +311,7 @@
|
|
|
311
311
|
"id": "resources",
|
|
312
312
|
"capability": "resources",
|
|
313
313
|
"status": "pass",
|
|
314
|
-
"durationMs":
|
|
314
|
+
"durationMs": 0.7549579999999878,
|
|
315
315
|
"message": "Advertised capability responded with the minimal expected shape (1 items).",
|
|
316
316
|
"evidence": [
|
|
317
317
|
{
|
|
@@ -344,7 +344,7 @@
|
|
|
344
344
|
"id": "security-lite",
|
|
345
345
|
"capability": "security-lite",
|
|
346
346
|
"status": "pass",
|
|
347
|
-
"durationMs": 0.
|
|
347
|
+
"durationMs": 0.0435419999998885,
|
|
348
348
|
"message": "No security issues detected (lightweight scan).",
|
|
349
349
|
"evidence": [
|
|
350
350
|
{
|
|
@@ -356,11 +356,106 @@
|
|
|
356
356
|
}
|
|
357
357
|
]
|
|
358
358
|
},
|
|
359
|
+
{
|
|
360
|
+
"id": "runtime-profile",
|
|
361
|
+
"capability": "runtime-profile",
|
|
362
|
+
"status": "pass",
|
|
363
|
+
"durationMs": 0.08408300000019153,
|
|
364
|
+
"message": "Detected 0 potential egress target(s) and 12 potential state mutation(s) with low confidence.",
|
|
365
|
+
"evidence": [
|
|
366
|
+
{
|
|
367
|
+
"endpoint": "runtime-profile/analyze",
|
|
368
|
+
"advertised": true,
|
|
369
|
+
"responded": true,
|
|
370
|
+
"minimalShapePresent": true,
|
|
371
|
+
"itemCount": 12,
|
|
372
|
+
"diagnostics": [
|
|
373
|
+
"Egress entries: 0",
|
|
374
|
+
"State mutations: 12",
|
|
375
|
+
"Confidence: medium"
|
|
376
|
+
],
|
|
377
|
+
"findings": [
|
|
378
|
+
{
|
|
379
|
+
"resource": "filesystem",
|
|
380
|
+
"operation": "write",
|
|
381
|
+
"scope": "working_directory",
|
|
382
|
+
"source": "description_analysis"
|
|
383
|
+
},
|
|
384
|
+
{
|
|
385
|
+
"resource": "filesystem",
|
|
386
|
+
"operation": "write",
|
|
387
|
+
"scope": "working_directory",
|
|
388
|
+
"source": "description_analysis"
|
|
389
|
+
},
|
|
390
|
+
{
|
|
391
|
+
"resource": "filesystem",
|
|
392
|
+
"operation": "write",
|
|
393
|
+
"scope": "working_directory",
|
|
394
|
+
"source": "description_analysis"
|
|
395
|
+
},
|
|
396
|
+
{
|
|
397
|
+
"resource": "filesystem",
|
|
398
|
+
"operation": "write",
|
|
399
|
+
"scope": "working_directory",
|
|
400
|
+
"source": "description_analysis"
|
|
401
|
+
},
|
|
402
|
+
{
|
|
403
|
+
"resource": "filesystem",
|
|
404
|
+
"operation": "write",
|
|
405
|
+
"scope": "working_directory",
|
|
406
|
+
"source": "description_analysis"
|
|
407
|
+
},
|
|
408
|
+
{
|
|
409
|
+
"resource": "filesystem",
|
|
410
|
+
"operation": "write",
|
|
411
|
+
"scope": "working_directory",
|
|
412
|
+
"source": "description_analysis"
|
|
413
|
+
},
|
|
414
|
+
{
|
|
415
|
+
"resource": "filesystem",
|
|
416
|
+
"operation": "delete",
|
|
417
|
+
"scope": "working_directory",
|
|
418
|
+
"source": "description_analysis"
|
|
419
|
+
},
|
|
420
|
+
{
|
|
421
|
+
"resource": "filesystem",
|
|
422
|
+
"operation": "write",
|
|
423
|
+
"scope": "working_directory",
|
|
424
|
+
"source": "description_analysis"
|
|
425
|
+
},
|
|
426
|
+
{
|
|
427
|
+
"resource": "filesystem",
|
|
428
|
+
"operation": "delete",
|
|
429
|
+
"scope": "working_directory",
|
|
430
|
+
"source": "description_analysis"
|
|
431
|
+
},
|
|
432
|
+
{
|
|
433
|
+
"resource": "filesystem",
|
|
434
|
+
"operation": "write",
|
|
435
|
+
"scope": "working_directory",
|
|
436
|
+
"source": "description_analysis"
|
|
437
|
+
},
|
|
438
|
+
{
|
|
439
|
+
"resource": "filesystem",
|
|
440
|
+
"operation": "write",
|
|
441
|
+
"scope": "working_directory",
|
|
442
|
+
"source": "description_analysis"
|
|
443
|
+
},
|
|
444
|
+
{
|
|
445
|
+
"resource": "filesystem",
|
|
446
|
+
"operation": "delete",
|
|
447
|
+
"scope": "working_directory",
|
|
448
|
+
"source": "description_analysis"
|
|
449
|
+
}
|
|
450
|
+
]
|
|
451
|
+
}
|
|
452
|
+
]
|
|
453
|
+
},
|
|
359
454
|
{
|
|
360
455
|
"id": "conformance",
|
|
361
456
|
"capability": "conformance",
|
|
362
457
|
"status": "pass",
|
|
363
|
-
"durationMs":
|
|
458
|
+
"durationMs": 8.83041699999967,
|
|
364
459
|
"message": "All 7 conformance checks passed.",
|
|
365
460
|
"evidence": [
|
|
366
461
|
{
|
|
@@ -386,7 +481,7 @@
|
|
|
386
481
|
"id": "schema-quality",
|
|
387
482
|
"capability": "schema-quality",
|
|
388
483
|
"status": "partial",
|
|
389
|
-
"durationMs":
|
|
484
|
+
"durationMs": 3.9865829999998823,
|
|
390
485
|
"message": "Found 4 quality finding(s) across 10 item(s): 0 warnings, 4 info.",
|
|
391
486
|
"evidence": [
|
|
392
487
|
{
|
|
@@ -440,7 +535,7 @@
|
|
|
440
535
|
"id": "security",
|
|
441
536
|
"capability": "security",
|
|
442
537
|
"status": "pass",
|
|
443
|
-
"durationMs":
|
|
538
|
+
"durationMs": 4.06899999999996,
|
|
444
539
|
"message": "No security issues detected.",
|
|
445
540
|
"evidence": [
|
|
446
541
|
{
|
|
@@ -456,7 +551,7 @@
|
|
|
456
551
|
"id": "attack-sim",
|
|
457
552
|
"capability": "attack-sim",
|
|
458
553
|
"status": "pass",
|
|
459
|
-
"durationMs":
|
|
554
|
+
"durationMs": 4.2452079999998205,
|
|
460
555
|
"message": "Safe attack simulation found no high-risk MCP attack-readiness findings.",
|
|
461
556
|
"evidence": [
|
|
462
557
|
{
|
|
@@ -515,16 +610,94 @@
|
|
|
515
610
|
"weight": 0.1,
|
|
516
611
|
"score": 100,
|
|
517
612
|
"details": [
|
|
518
|
-
"Connect:
|
|
613
|
+
"Connect: 790ms",
|
|
519
614
|
"p95 latency: 8ms (3 operations)"
|
|
520
615
|
]
|
|
521
616
|
}
|
|
522
617
|
]
|
|
523
618
|
},
|
|
524
619
|
"performanceMetrics": {
|
|
525
|
-
"connectMs":
|
|
526
|
-
"toolsListMs": 7.
|
|
527
|
-
"promptsListMs": 0.
|
|
528
|
-
"resourcesListMs":
|
|
620
|
+
"connectMs": 790.0203339999998,
|
|
621
|
+
"toolsListMs": 7.791874999999891,
|
|
622
|
+
"promptsListMs": 0.00204200000007404,
|
|
623
|
+
"resourcesListMs": 0.7549579999999878
|
|
624
|
+
},
|
|
625
|
+
"runtimeProfile": {
|
|
626
|
+
"stateMutations": [
|
|
627
|
+
{
|
|
628
|
+
"resource": "filesystem",
|
|
629
|
+
"operation": "write",
|
|
630
|
+
"scope": "working_directory",
|
|
631
|
+
"source": "description_analysis"
|
|
632
|
+
},
|
|
633
|
+
{
|
|
634
|
+
"resource": "filesystem",
|
|
635
|
+
"operation": "write",
|
|
636
|
+
"scope": "working_directory",
|
|
637
|
+
"source": "description_analysis"
|
|
638
|
+
},
|
|
639
|
+
{
|
|
640
|
+
"resource": "filesystem",
|
|
641
|
+
"operation": "write",
|
|
642
|
+
"scope": "working_directory",
|
|
643
|
+
"source": "description_analysis"
|
|
644
|
+
},
|
|
645
|
+
{
|
|
646
|
+
"resource": "filesystem",
|
|
647
|
+
"operation": "write",
|
|
648
|
+
"scope": "working_directory",
|
|
649
|
+
"source": "description_analysis"
|
|
650
|
+
},
|
|
651
|
+
{
|
|
652
|
+
"resource": "filesystem",
|
|
653
|
+
"operation": "write",
|
|
654
|
+
"scope": "working_directory",
|
|
655
|
+
"source": "description_analysis"
|
|
656
|
+
},
|
|
657
|
+
{
|
|
658
|
+
"resource": "filesystem",
|
|
659
|
+
"operation": "write",
|
|
660
|
+
"scope": "working_directory",
|
|
661
|
+
"source": "description_analysis"
|
|
662
|
+
},
|
|
663
|
+
{
|
|
664
|
+
"resource": "filesystem",
|
|
665
|
+
"operation": "delete",
|
|
666
|
+
"scope": "working_directory",
|
|
667
|
+
"source": "description_analysis"
|
|
668
|
+
},
|
|
669
|
+
{
|
|
670
|
+
"resource": "filesystem",
|
|
671
|
+
"operation": "write",
|
|
672
|
+
"scope": "working_directory",
|
|
673
|
+
"source": "description_analysis"
|
|
674
|
+
},
|
|
675
|
+
{
|
|
676
|
+
"resource": "filesystem",
|
|
677
|
+
"operation": "delete",
|
|
678
|
+
"scope": "working_directory",
|
|
679
|
+
"source": "description_analysis"
|
|
680
|
+
},
|
|
681
|
+
{
|
|
682
|
+
"resource": "filesystem",
|
|
683
|
+
"operation": "write",
|
|
684
|
+
"scope": "working_directory",
|
|
685
|
+
"source": "description_analysis"
|
|
686
|
+
},
|
|
687
|
+
{
|
|
688
|
+
"resource": "filesystem",
|
|
689
|
+
"operation": "write",
|
|
690
|
+
"scope": "working_directory",
|
|
691
|
+
"source": "description_analysis"
|
|
692
|
+
},
|
|
693
|
+
{
|
|
694
|
+
"resource": "filesystem",
|
|
695
|
+
"operation": "delete",
|
|
696
|
+
"scope": "working_directory",
|
|
697
|
+
"source": "description_analysis"
|
|
698
|
+
}
|
|
699
|
+
],
|
|
700
|
+
"analyzedAt": "2026-07-12T23:43:56.485Z",
|
|
701
|
+
"confidence": "medium"
|
|
529
702
|
}
|
|
530
703
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# MCP Observatory Run Report
|
|
2
2
|
|
|
3
|
-
Generated at 2026-07-
|
|
3
|
+
Generated at 2026-07-12T23:43:55.682Z
|
|
4
4
|
|
|
5
5
|
## Target and Environment Metadata
|
|
6
6
|
|
|
@@ -25,7 +25,7 @@ Generated at 2026-07-06T19:49:46.771Z
|
|
|
25
25
|
|
|
26
26
|
| Gate | Total | Pass | Fail | Partial | Unsupported | Flaky | Skipped |
|
|
27
27
|
| --- | --- | --- | --- | --- | --- | --- | --- |
|
|
28
|
-
| pass |
|
|
28
|
+
| pass | 9 | 7 | 0 | 1 | 1 | 0 | 0 |
|
|
29
29
|
|
|
30
30
|
## At a Glance
|
|
31
31
|
|
|
@@ -39,6 +39,35 @@ Generated at 2026-07-06T19:49:46.771Z
|
|
|
39
39
|
- Suggested next step: Review the caveated checks next: schema-quality.
|
|
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 | description_analysis |
|
|
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 | description_analysis |
|
|
61
|
+
| filesystem | write | working_directory | description_analysis |
|
|
62
|
+
| filesystem | delete | working_directory | description_analysis |
|
|
63
|
+
| filesystem | write | working_directory | description_analysis |
|
|
64
|
+
| filesystem | delete | working_directory | description_analysis |
|
|
65
|
+
| filesystem | write | working_directory | description_analysis |
|
|
66
|
+
| filesystem | write | working_directory | description_analysis |
|
|
67
|
+
| filesystem | delete | working_directory | description_analysis |
|
|
68
|
+
|
|
69
|
+
_Analyzed at 2026-07-12T23:43:56.485Z_
|
|
70
|
+
|
|
42
71
|
## Regressions and Recoveries
|
|
43
72
|
|
|
44
73
|
_Use the `diff` command against another run artifact to classify regressions and recoveries over time._
|
|
@@ -47,13 +76,14 @@ _Use the `diff` command against another run artifact to classify regressions and
|
|
|
47
76
|
|
|
48
77
|
| Focus | Check | Status | Duration (ms) | Message |
|
|
49
78
|
| --- | --- | --- | --- | --- |
|
|
50
|
-
| healthy | attack-sim | pass |
|
|
51
|
-
| healthy | conformance | pass |
|
|
52
|
-
| healthy | resources | pass |
|
|
53
|
-
| healthy |
|
|
79
|
+
| healthy | attack-sim | pass | 4.25 | Safe attack simulation found no high-risk MCP attack-readiness findings. |
|
|
80
|
+
| healthy | conformance | pass | 8.83 | All 7 conformance checks passed. |
|
|
81
|
+
| healthy | resources | pass | 0.75 | Advertised capability responded with the minimal expected shape (1 items). |
|
|
82
|
+
| healthy | runtime-profile | pass | 0.08 | Detected 0 potential egress target(s) and 12 potential state mutation(s) with low confidence. |
|
|
83
|
+
| healthy | security | pass | 4.07 | No security issues detected. |
|
|
54
84
|
| healthy | security-lite | pass | 0.04 | No security issues detected (lightweight scan). |
|
|
55
|
-
| healthy | tools | pass | 7.
|
|
56
|
-
| review | schema-quality | partial |
|
|
85
|
+
| healthy | tools | pass | 7.79 | Advertised capability responded with the minimal expected shape (9 items). |
|
|
86
|
+
| review | schema-quality | partial | 3.99 | Found 4 quality finding(s) across 10 item(s): 0 warnings, 4 info. |
|
|
57
87
|
| confirm intent | prompts | unsupported | 0.00 | Prompts are not advertised by the target. |
|
|
58
88
|
|
|
59
89
|
## Evidence Snippets
|
|
@@ -101,6 +131,18 @@ Summary: Advertised capability responded with the minimal expected shape (1 item
|
|
|
101
131
|
- Identifiers: none
|
|
102
132
|
- Diagnostics: Knowledge Graph MCP Server running on stdio
|
|
103
133
|
|
|
134
|
+
### runtime-profile â pass
|
|
135
|
+
|
|
136
|
+
Summary: Detected 0 potential egress target(s) and 12 potential state mutation(s) with low confidence.
|
|
137
|
+
|
|
138
|
+
- Endpoint: `runtime-profile/analyze`
|
|
139
|
+
- Advertised: `true`
|
|
140
|
+
- Responded: `true`
|
|
141
|
+
- Minimal shape present: `true`
|
|
142
|
+
- Item count: `12`
|
|
143
|
+
- Identifiers: none
|
|
144
|
+
- Diagnostics: Egress entries: 0, State mutations: 12, Confidence: medium
|
|
145
|
+
|
|
104
146
|
### security â pass
|
|
105
147
|
|
|
106
148
|
Summary: No security issues detected.
|
|
@@ -172,5 +214,5 @@ npm run cli -- report --run <path-to-run-artifact.json> --format markdown
|
|
|
172
214
|
|
|
173
215
|
- Artifact type: `run`
|
|
174
216
|
- Schema version: `1.0.0`
|
|
175
|
-
- Run ID: `run_2026-07-
|
|
217
|
+
- Run ID: `run_2026-07-12T234355682Z_37a2cec6`
|
|
176
218
|
- Gate: `pass`
|