@kryptosai/mcp-observatory 0.22.0 → 0.24.0
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/COMMERCIAL.md +5 -3
- package/PRIVACY.md +5 -2
- package/README.md +28 -13
- package/dist/src/cli.js +1 -1
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/init-ci.d.ts +3 -0
- package/dist/src/commands/init-ci.js +26 -9
- package/dist/src/commands/init-ci.js.map +1 -1
- package/dist/src/commercial.js +2 -2
- package/dist/src/commercial.js.map +1 -1
- package/dist/src/reporters/pr-comment.js +6 -2
- package/dist/src/reporters/pr-comment.js.map +1 -1
- package/dist/src/score.js +1 -1
- package/dist/src/score.js.map +1 -1
- package/dist/src/validate.js +58 -3
- package/dist/src/validate.js.map +1 -1
- package/docs/certification-campaign-template.md +10 -10
- package/docs/certification-distribution.md +16 -0
- package/docs/directory-listing-copy.md +12 -5
- package/docs/distribution-launch.md +5 -5
- package/docs/enterprise-outreach-playbook.md +2 -2
- package/docs/mcp-lock-files.md +63 -0
- package/docs/mcp-safety-report-latest.md +16 -7
- package/docs/mcp-security-field-guide.md +97 -0
- package/docs/mcp-server-safety-index.md +61 -0
- package/docs/methodology.md +90 -0
- package/docs/metrics-dashboard.md +105 -0
- package/docs/paid-pilot-offer.md +74 -0
- package/docs/project-case-study.md +77 -43
- package/docs/proof.md +42 -12
- package/docs/public-post-drafts.md +98 -0
- package/docs/publish-readiness.md +6 -4
- package/docs/reference-evaluations.md +134 -0
- package/docs/safety-index/artifacts/antv-chart-server.json +2765 -0
- package/docs/safety-index/artifacts/antv-chart-server.md +156 -0
- package/docs/safety-index/artifacts/browsermcp-server.json +416 -0
- package/docs/safety-index/artifacts/browsermcp-server.md +163 -0
- package/docs/safety-index/artifacts/context7-server.json +286 -0
- package/docs/safety-index/artifacts/context7-server.md +163 -0
- package/docs/safety-index/artifacts/everything-server.json +482 -0
- package/docs/safety-index/artifacts/everything-server.md +163 -0
- package/docs/safety-index/artifacts/executeautomation-playwright-server.json +955 -0
- package/docs/safety-index/artifacts/executeautomation-playwright-server.md +163 -0
- package/docs/safety-index/artifacts/filesystem-server.json +583 -0
- package/docs/safety-index/artifacts/filesystem-server.md +156 -0
- package/docs/safety-index/artifacts/memory-server.json +469 -0
- package/docs/safety-index/artifacts/memory-server.md +156 -0
- package/docs/safety-index/artifacts/opentofu-server.json +387 -0
- package/docs/safety-index/artifacts/opentofu-server.md +163 -0
- package/docs/safety-index/artifacts/playwright-mcp-server.json +919 -0
- package/docs/safety-index/artifacts/playwright-mcp-server.md +156 -0
- package/docs/safety-index/artifacts/promptopia-server.json +442 -0
- package/docs/safety-index/artifacts/promptopia-server.md +156 -0
- package/docs/safety-index/artifacts/puppeteer-server.json +377 -0
- package/docs/safety-index/artifacts/puppeteer-server.md +163 -0
- package/docs/safety-index/artifacts/ref-tools-server.json +262 -0
- package/docs/safety-index/artifacts/ref-tools-server.md +156 -0
- package/docs/safety-index/artifacts/sequential-thinking-server.json +286 -0
- package/docs/safety-index/artifacts/sequential-thinking-server.md +156 -0
- package/docs/safety-index/maintainer-note-template.md +25 -0
- package/docs/safety-index/targets.json +192 -0
- package/package.json +17 -13
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
{
|
|
2
|
+
"artifactType": "run",
|
|
3
|
+
"schemaVersion": "1.0.0",
|
|
4
|
+
"gate": "pass",
|
|
5
|
+
"runId": "run_2026-06-24T020728542Z_cc57c712",
|
|
6
|
+
"createdAt": "2026-06-24T02:07:28.542Z",
|
|
7
|
+
"toolVersion": "0.24.0",
|
|
8
|
+
"target": {
|
|
9
|
+
"targetId": "ref-tools-server",
|
|
10
|
+
"adapter": "local-process",
|
|
11
|
+
"command": "npx",
|
|
12
|
+
"args": [
|
|
13
|
+
"-y",
|
|
14
|
+
"ref-tools-mcp"
|
|
15
|
+
],
|
|
16
|
+
"cwd": ".",
|
|
17
|
+
"metadata": {
|
|
18
|
+
"package": "ref-tools-mcp",
|
|
19
|
+
"purpose": "mcp-safety-index",
|
|
20
|
+
"riskClass": "Developer reference tooling",
|
|
21
|
+
"failureClass": "Prompt/tool inventory",
|
|
22
|
+
"whyItMatters": "Developer tools become agent dependencies when wired into coding workflows."
|
|
23
|
+
},
|
|
24
|
+
"serverName": "Ref",
|
|
25
|
+
"serverVersion": "3.0.3"
|
|
26
|
+
},
|
|
27
|
+
"environment": {
|
|
28
|
+
"platform": "darwin 25.5.0",
|
|
29
|
+
"nodeVersion": "v22.22.1"
|
|
30
|
+
},
|
|
31
|
+
"summary": {
|
|
32
|
+
"total": 7,
|
|
33
|
+
"pass": 6,
|
|
34
|
+
"fail": 0,
|
|
35
|
+
"partial": 0,
|
|
36
|
+
"unsupported": 1,
|
|
37
|
+
"flaky": 0,
|
|
38
|
+
"skipped": 0,
|
|
39
|
+
"gate": "pass"
|
|
40
|
+
},
|
|
41
|
+
"checks": [
|
|
42
|
+
{
|
|
43
|
+
"id": "tools",
|
|
44
|
+
"capability": "tools",
|
|
45
|
+
"status": "pass",
|
|
46
|
+
"durationMs": 0.9550839999992604,
|
|
47
|
+
"message": "Advertised capability responded with the minimal expected shape (2 items).",
|
|
48
|
+
"evidence": [
|
|
49
|
+
{
|
|
50
|
+
"endpoint": "tools/list",
|
|
51
|
+
"advertised": true,
|
|
52
|
+
"responded": true,
|
|
53
|
+
"minimalShapePresent": true,
|
|
54
|
+
"itemCount": 2,
|
|
55
|
+
"identifiers": [
|
|
56
|
+
"ref_search_documentation",
|
|
57
|
+
"ref_read_url"
|
|
58
|
+
],
|
|
59
|
+
"diagnostics": [
|
|
60
|
+
"Ref MCP Server running on stdio"
|
|
61
|
+
],
|
|
62
|
+
"schemas": {
|
|
63
|
+
"ref_search_documentation": {
|
|
64
|
+
"type": "object",
|
|
65
|
+
"properties": {
|
|
66
|
+
"query": {
|
|
67
|
+
"type": "string",
|
|
68
|
+
"description": "Query for documentation. Should include programming language and framework or library names. Searches public only docs by default, include ref_src=private to search a user's private docs."
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"required": [
|
|
72
|
+
"query"
|
|
73
|
+
]
|
|
74
|
+
},
|
|
75
|
+
"ref_read_url": {
|
|
76
|
+
"type": "object",
|
|
77
|
+
"properties": {
|
|
78
|
+
"url": {
|
|
79
|
+
"type": "string",
|
|
80
|
+
"description": "The URL of the webpage to read."
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
"required": [
|
|
84
|
+
"url"
|
|
85
|
+
]
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
]
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"id": "prompts",
|
|
93
|
+
"capability": "prompts",
|
|
94
|
+
"status": "pass",
|
|
95
|
+
"durationMs": 0.21733400000084657,
|
|
96
|
+
"message": "Advertised capability responded with the minimal expected shape (2 items).",
|
|
97
|
+
"evidence": [
|
|
98
|
+
{
|
|
99
|
+
"endpoint": "prompts/list",
|
|
100
|
+
"advertised": true,
|
|
101
|
+
"responded": true,
|
|
102
|
+
"minimalShapePresent": true,
|
|
103
|
+
"itemCount": 2,
|
|
104
|
+
"identifiers": [
|
|
105
|
+
"search_docs",
|
|
106
|
+
"my_docs"
|
|
107
|
+
],
|
|
108
|
+
"diagnostics": [
|
|
109
|
+
"Ref MCP Server running on stdio"
|
|
110
|
+
]
|
|
111
|
+
}
|
|
112
|
+
]
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"id": "resources",
|
|
116
|
+
"capability": "resources",
|
|
117
|
+
"status": "unsupported",
|
|
118
|
+
"durationMs": 0.002375000000029104,
|
|
119
|
+
"message": "Resources are not advertised by the target.",
|
|
120
|
+
"evidence": [
|
|
121
|
+
{
|
|
122
|
+
"endpoint": "resources/list | resources/templates/list",
|
|
123
|
+
"advertised": false,
|
|
124
|
+
"responded": false,
|
|
125
|
+
"minimalShapePresent": false,
|
|
126
|
+
"diagnostics": []
|
|
127
|
+
}
|
|
128
|
+
]
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"id": "security-lite",
|
|
132
|
+
"capability": "security-lite",
|
|
133
|
+
"status": "pass",
|
|
134
|
+
"durationMs": 0.017791999998735264,
|
|
135
|
+
"message": "No security issues detected (lightweight scan).",
|
|
136
|
+
"evidence": [
|
|
137
|
+
{
|
|
138
|
+
"endpoint": "security/scan-lite",
|
|
139
|
+
"advertised": true,
|
|
140
|
+
"responded": true,
|
|
141
|
+
"minimalShapePresent": true,
|
|
142
|
+
"itemCount": 0
|
|
143
|
+
}
|
|
144
|
+
]
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"id": "conformance",
|
|
148
|
+
"capability": "conformance",
|
|
149
|
+
"status": "pass",
|
|
150
|
+
"durationMs": 0.5875410000007832,
|
|
151
|
+
"message": "All 7 conformance checks passed.",
|
|
152
|
+
"evidence": [
|
|
153
|
+
{
|
|
154
|
+
"endpoint": "conformance/check",
|
|
155
|
+
"advertised": true,
|
|
156
|
+
"responded": true,
|
|
157
|
+
"minimalShapePresent": true,
|
|
158
|
+
"itemCount": 7,
|
|
159
|
+
"identifiers": [],
|
|
160
|
+
"diagnostics": [
|
|
161
|
+
"[pass] capabilities-present: Server returned capabilities object.",
|
|
162
|
+
"[pass] server-info: Server provided initialization info.",
|
|
163
|
+
"[pass] tools-capability-match: tools/list returned 2 tool(s).",
|
|
164
|
+
"[pass] prompts-capability-match: prompts/list returned 2 prompt(s).",
|
|
165
|
+
"[pass] resources-capability-match: Resources not advertised — endpoint check skipped.",
|
|
166
|
+
"[pass] tool-response-content: No safe tool to invoke — content validation skipped.",
|
|
167
|
+
"[pass] error-handling: Server returned proper error code -32601 for unknown method."
|
|
168
|
+
]
|
|
169
|
+
}
|
|
170
|
+
]
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"id": "schema-quality",
|
|
174
|
+
"capability": "schema-quality",
|
|
175
|
+
"status": "pass",
|
|
176
|
+
"durationMs": 0.4417920000014419,
|
|
177
|
+
"message": "All 4 item(s) have good schema quality.",
|
|
178
|
+
"evidence": [
|
|
179
|
+
{
|
|
180
|
+
"endpoint": "schema-quality/scan",
|
|
181
|
+
"advertised": true,
|
|
182
|
+
"responded": true,
|
|
183
|
+
"minimalShapePresent": true,
|
|
184
|
+
"itemCount": 0,
|
|
185
|
+
"identifiers": []
|
|
186
|
+
}
|
|
187
|
+
]
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
"id": "security",
|
|
191
|
+
"capability": "security",
|
|
192
|
+
"status": "pass",
|
|
193
|
+
"durationMs": 0.44887500000004366,
|
|
194
|
+
"message": "No security issues detected.",
|
|
195
|
+
"evidence": [
|
|
196
|
+
{
|
|
197
|
+
"endpoint": "security/scan",
|
|
198
|
+
"advertised": true,
|
|
199
|
+
"responded": true,
|
|
200
|
+
"minimalShapePresent": true,
|
|
201
|
+
"itemCount": 0
|
|
202
|
+
}
|
|
203
|
+
]
|
|
204
|
+
}
|
|
205
|
+
],
|
|
206
|
+
"healthScore": {
|
|
207
|
+
"overall": 97,
|
|
208
|
+
"grade": "A",
|
|
209
|
+
"dimensions": [
|
|
210
|
+
{
|
|
211
|
+
"name": "Protocol Compliance",
|
|
212
|
+
"weight": 0.3,
|
|
213
|
+
"score": 100,
|
|
214
|
+
"details": [
|
|
215
|
+
"conformance: pass (100/100)"
|
|
216
|
+
]
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
"name": "Schema Quality",
|
|
220
|
+
"weight": 0.2,
|
|
221
|
+
"score": 100,
|
|
222
|
+
"details": [
|
|
223
|
+
"schema-quality: pass (100/100)"
|
|
224
|
+
]
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
"name": "Security",
|
|
228
|
+
"weight": 0.2,
|
|
229
|
+
"score": 100,
|
|
230
|
+
"details": [
|
|
231
|
+
"security-lite: pass (100/100)",
|
|
232
|
+
"security: pass (100/100)"
|
|
233
|
+
]
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
"name": "Reliability",
|
|
237
|
+
"weight": 0.2,
|
|
238
|
+
"score": 83,
|
|
239
|
+
"details": [
|
|
240
|
+
"tools: pass (100/100)",
|
|
241
|
+
"prompts: pass (100/100)",
|
|
242
|
+
"resources: unsupported (50/100)"
|
|
243
|
+
]
|
|
244
|
+
},
|
|
245
|
+
{
|
|
246
|
+
"name": "Performance",
|
|
247
|
+
"weight": 0.1,
|
|
248
|
+
"score": 100,
|
|
249
|
+
"details": [
|
|
250
|
+
"Connect: 775ms",
|
|
251
|
+
"p95 latency: 1ms (3 operations)"
|
|
252
|
+
]
|
|
253
|
+
}
|
|
254
|
+
]
|
|
255
|
+
},
|
|
256
|
+
"performanceMetrics": {
|
|
257
|
+
"connectMs": 774.5396250000003,
|
|
258
|
+
"toolsListMs": 0.9550839999992604,
|
|
259
|
+
"promptsListMs": 0.21733400000084657,
|
|
260
|
+
"resourcesListMs": 0.002375000000029104
|
|
261
|
+
}
|
|
262
|
+
}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
# MCP Observatory Run Report
|
|
2
|
+
|
|
3
|
+
Generated at 2026-06-24T02:07:28.542Z
|
|
4
|
+
|
|
5
|
+
## Target and Environment Metadata
|
|
6
|
+
|
|
7
|
+
- Target: `ref-tools-server`
|
|
8
|
+
- Adapter: `local-process`
|
|
9
|
+
- Command: `npx -y ref-tools-mcp`
|
|
10
|
+
- Server: `Ref 3.0.3`
|
|
11
|
+
- Platform: `darwin 25.5.0`
|
|
12
|
+
- Node: `v22.22.1`
|
|
13
|
+
|
|
14
|
+
## Executive Summary
|
|
15
|
+
|
|
16
|
+
**Health Score: 97/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 | 83/100 | 20% |
|
|
24
|
+
| Performance | 100/100 | 10% |
|
|
25
|
+
|
|
26
|
+
| Gate | Total | Pass | Fail | Partial | Unsupported | Flaky | Skipped |
|
|
27
|
+
| --- | --- | --- | --- | --- | --- | --- | --- |
|
|
28
|
+
| pass | 7 | 6 | 0 | 0 | 1 | 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: resources
|
|
39
|
+
- Suggested next step: Confirm that unsupported capabilities are intentional for this target: resources.
|
|
40
|
+
- CI next step: `Add CI: npx @kryptosai/mcp-observatory init-ci --all --command "npx -y <server-package>"`
|
|
41
|
+
|
|
42
|
+
## Regressions and Recoveries
|
|
43
|
+
|
|
44
|
+
_Use the `diff` command against another run artifact to classify regressions and recoveries over time._
|
|
45
|
+
|
|
46
|
+
## Full Capability Status Table
|
|
47
|
+
|
|
48
|
+
| Focus | Check | Status | Duration (ms) | Message |
|
|
49
|
+
| --- | --- | --- | --- | --- |
|
|
50
|
+
| healthy | conformance | pass | 0.59 | All 7 conformance checks passed. |
|
|
51
|
+
| healthy | prompts | pass | 0.22 | Advertised capability responded with the minimal expected shape (2 items). |
|
|
52
|
+
| healthy | schema-quality | pass | 0.44 | All 4 item(s) have good schema quality. |
|
|
53
|
+
| healthy | security | pass | 0.45 | No security issues detected. |
|
|
54
|
+
| healthy | security-lite | pass | 0.02 | No security issues detected (lightweight scan). |
|
|
55
|
+
| healthy | tools | pass | 0.96 | Advertised capability responded with the minimal expected shape (2 items). |
|
|
56
|
+
| confirm intent | resources | unsupported | 0.00 | Resources are not advertised by the target. |
|
|
57
|
+
|
|
58
|
+
## Evidence Snippets
|
|
59
|
+
|
|
60
|
+
### conformance — pass
|
|
61
|
+
|
|
62
|
+
Summary: All 7 conformance checks passed.
|
|
63
|
+
|
|
64
|
+
- Endpoint: `conformance/check`
|
|
65
|
+
- Advertised: `true`
|
|
66
|
+
- Responded: `true`
|
|
67
|
+
- Minimal shape present: `true`
|
|
68
|
+
- Item count: `7`
|
|
69
|
+
- Identifiers: none
|
|
70
|
+
- Diagnostics: [pass] capabilities-present: Server returned capabilities object., [pass] server-info: Server provided initialization info., [pass] tools-capability-match: tools/list returned 2 tool(s). (+4 more)
|
|
71
|
+
|
|
72
|
+
### prompts — pass
|
|
73
|
+
|
|
74
|
+
Summary: Advertised capability responded with the minimal expected shape (2 items).
|
|
75
|
+
|
|
76
|
+
- Endpoint: `prompts/list`
|
|
77
|
+
- Advertised: `true`
|
|
78
|
+
- Responded: `true`
|
|
79
|
+
- Minimal shape present: `true`
|
|
80
|
+
- Item count: `2`
|
|
81
|
+
- Identifiers: search_docs, my_docs
|
|
82
|
+
- Diagnostics: Ref MCP Server running on stdio
|
|
83
|
+
|
|
84
|
+
### schema-quality — pass
|
|
85
|
+
|
|
86
|
+
Summary: All 4 item(s) have good schema quality.
|
|
87
|
+
|
|
88
|
+
- Endpoint: `schema-quality/scan`
|
|
89
|
+
- Advertised: `true`
|
|
90
|
+
- Responded: `true`
|
|
91
|
+
- Minimal shape present: `true`
|
|
92
|
+
- Item count: `0`
|
|
93
|
+
- Identifiers: none
|
|
94
|
+
- Diagnostics: none
|
|
95
|
+
|
|
96
|
+
### security — pass
|
|
97
|
+
|
|
98
|
+
Summary: No security issues detected.
|
|
99
|
+
|
|
100
|
+
- Endpoint: `security/scan`
|
|
101
|
+
- Advertised: `true`
|
|
102
|
+
- Responded: `true`
|
|
103
|
+
- Minimal shape present: `true`
|
|
104
|
+
- Item count: `0`
|
|
105
|
+
- Identifiers: none
|
|
106
|
+
- Diagnostics: none
|
|
107
|
+
|
|
108
|
+
### security-lite — pass
|
|
109
|
+
|
|
110
|
+
Summary: No security issues detected (lightweight scan).
|
|
111
|
+
|
|
112
|
+
- Endpoint: `security/scan-lite`
|
|
113
|
+
- Advertised: `true`
|
|
114
|
+
- Responded: `true`
|
|
115
|
+
- Minimal shape present: `true`
|
|
116
|
+
- Item count: `0`
|
|
117
|
+
- Identifiers: none
|
|
118
|
+
- Diagnostics: none
|
|
119
|
+
|
|
120
|
+
### tools — pass
|
|
121
|
+
|
|
122
|
+
Summary: Advertised capability responded with the minimal expected shape (2 items).
|
|
123
|
+
|
|
124
|
+
- Endpoint: `tools/list`
|
|
125
|
+
- Advertised: `true`
|
|
126
|
+
- Responded: `true`
|
|
127
|
+
- Minimal shape present: `true`
|
|
128
|
+
- Item count: `2`
|
|
129
|
+
- Identifiers: ref_search_documentation, ref_read_url
|
|
130
|
+
- Diagnostics: Ref MCP Server running on stdio
|
|
131
|
+
|
|
132
|
+
### resources — unsupported
|
|
133
|
+
|
|
134
|
+
Summary: Resources are not advertised by the target.
|
|
135
|
+
|
|
136
|
+
- Endpoint: `resources/list | resources/templates/list`
|
|
137
|
+
- Advertised: `false`
|
|
138
|
+
- Responded: `false`
|
|
139
|
+
- Minimal shape present: `false`
|
|
140
|
+
- Item count: `0`
|
|
141
|
+
- Identifiers: none
|
|
142
|
+
- Diagnostics: none
|
|
143
|
+
|
|
144
|
+
## Reproduction Commands
|
|
145
|
+
|
|
146
|
+
```bash
|
|
147
|
+
npm run cli -- run --target <path-to-target-config.json>
|
|
148
|
+
npm run cli -- report --run <path-to-run-artifact.json> --format markdown
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
## Artifact Provenance
|
|
152
|
+
|
|
153
|
+
- Artifact type: `run`
|
|
154
|
+
- Schema version: `1.0.0`
|
|
155
|
+
- Run ID: `run_2026-06-24T020728542Z_cc57c712`
|
|
156
|
+
- Gate: `pass`
|
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
{
|
|
2
|
+
"artifactType": "run",
|
|
3
|
+
"schemaVersion": "1.0.0",
|
|
4
|
+
"gate": "pass",
|
|
5
|
+
"runId": "run_2026-06-24T020722515Z_10f2e6a0",
|
|
6
|
+
"createdAt": "2026-06-24T02:07:22.515Z",
|
|
7
|
+
"toolVersion": "0.24.0",
|
|
8
|
+
"target": {
|
|
9
|
+
"targetId": "sequential-thinking-server",
|
|
10
|
+
"adapter": "local-process",
|
|
11
|
+
"command": "npx",
|
|
12
|
+
"args": [
|
|
13
|
+
"-y",
|
|
14
|
+
"@modelcontextprotocol/server-sequential-thinking"
|
|
15
|
+
],
|
|
16
|
+
"cwd": ".",
|
|
17
|
+
"metadata": {
|
|
18
|
+
"package": "@modelcontextprotocol/server-sequential-thinking",
|
|
19
|
+
"purpose": "mcp-safety-index",
|
|
20
|
+
"riskClass": "Reference compatibility",
|
|
21
|
+
"failureClass": "Tool schema clarity",
|
|
22
|
+
"whyItMatters": "Small official tools server that makes schema readability easy to inspect."
|
|
23
|
+
},
|
|
24
|
+
"serverName": "sequential-thinking-server",
|
|
25
|
+
"serverVersion": "0.2.0"
|
|
26
|
+
},
|
|
27
|
+
"environment": {
|
|
28
|
+
"platform": "darwin 25.5.0",
|
|
29
|
+
"nodeVersion": "v22.22.1"
|
|
30
|
+
},
|
|
31
|
+
"summary": {
|
|
32
|
+
"total": 7,
|
|
33
|
+
"pass": 5,
|
|
34
|
+
"fail": 0,
|
|
35
|
+
"partial": 0,
|
|
36
|
+
"unsupported": 2,
|
|
37
|
+
"flaky": 0,
|
|
38
|
+
"skipped": 0,
|
|
39
|
+
"gate": "pass"
|
|
40
|
+
},
|
|
41
|
+
"checks": [
|
|
42
|
+
{
|
|
43
|
+
"id": "tools",
|
|
44
|
+
"capability": "tools",
|
|
45
|
+
"status": "pass",
|
|
46
|
+
"durationMs": 4.4761249999996835,
|
|
47
|
+
"message": "Advertised capability responded with the minimal expected shape (1 item).",
|
|
48
|
+
"evidence": [
|
|
49
|
+
{
|
|
50
|
+
"endpoint": "tools/list",
|
|
51
|
+
"advertised": true,
|
|
52
|
+
"responded": true,
|
|
53
|
+
"minimalShapePresent": true,
|
|
54
|
+
"itemCount": 1,
|
|
55
|
+
"identifiers": [
|
|
56
|
+
"sequentialthinking"
|
|
57
|
+
],
|
|
58
|
+
"diagnostics": [
|
|
59
|
+
"Sequential Thinking MCP Server running on stdio"
|
|
60
|
+
],
|
|
61
|
+
"schemas": {
|
|
62
|
+
"sequentialthinking": {
|
|
63
|
+
"type": "object",
|
|
64
|
+
"properties": {
|
|
65
|
+
"thought": {
|
|
66
|
+
"type": "string",
|
|
67
|
+
"description": "Your current thinking step"
|
|
68
|
+
},
|
|
69
|
+
"nextThoughtNeeded": {
|
|
70
|
+
"type": "boolean",
|
|
71
|
+
"description": "Whether another thought step is needed"
|
|
72
|
+
},
|
|
73
|
+
"thoughtNumber": {
|
|
74
|
+
"type": "integer",
|
|
75
|
+
"minimum": 1,
|
|
76
|
+
"maximum": 9007199254740991,
|
|
77
|
+
"description": "Current thought number (numeric value, e.g., 1, 2, 3)"
|
|
78
|
+
},
|
|
79
|
+
"totalThoughts": {
|
|
80
|
+
"type": "integer",
|
|
81
|
+
"minimum": 1,
|
|
82
|
+
"maximum": 9007199254740991,
|
|
83
|
+
"description": "Estimated total thoughts needed (numeric value, e.g., 5, 10)"
|
|
84
|
+
},
|
|
85
|
+
"isRevision": {
|
|
86
|
+
"description": "Whether this revises previous thinking",
|
|
87
|
+
"type": "boolean"
|
|
88
|
+
},
|
|
89
|
+
"revisesThought": {
|
|
90
|
+
"description": "Which thought is being reconsidered",
|
|
91
|
+
"type": "integer",
|
|
92
|
+
"minimum": 1,
|
|
93
|
+
"maximum": 9007199254740991
|
|
94
|
+
},
|
|
95
|
+
"branchFromThought": {
|
|
96
|
+
"description": "Branching point thought number",
|
|
97
|
+
"type": "integer",
|
|
98
|
+
"minimum": 1,
|
|
99
|
+
"maximum": 9007199254740991
|
|
100
|
+
},
|
|
101
|
+
"branchId": {
|
|
102
|
+
"description": "Branch identifier",
|
|
103
|
+
"type": "string"
|
|
104
|
+
},
|
|
105
|
+
"needsMoreThoughts": {
|
|
106
|
+
"description": "If more thoughts are needed",
|
|
107
|
+
"type": "boolean"
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
"required": [
|
|
111
|
+
"thought",
|
|
112
|
+
"nextThoughtNeeded",
|
|
113
|
+
"thoughtNumber",
|
|
114
|
+
"totalThoughts"
|
|
115
|
+
],
|
|
116
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
]
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"id": "prompts",
|
|
124
|
+
"capability": "prompts",
|
|
125
|
+
"status": "unsupported",
|
|
126
|
+
"durationMs": 0.005541999999877589,
|
|
127
|
+
"message": "Prompts are not advertised by the target.",
|
|
128
|
+
"evidence": [
|
|
129
|
+
{
|
|
130
|
+
"endpoint": "prompts/list",
|
|
131
|
+
"advertised": false,
|
|
132
|
+
"responded": false,
|
|
133
|
+
"minimalShapePresent": false,
|
|
134
|
+
"diagnostics": []
|
|
135
|
+
}
|
|
136
|
+
]
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
"id": "resources",
|
|
140
|
+
"capability": "resources",
|
|
141
|
+
"status": "unsupported",
|
|
142
|
+
"durationMs": 0.0015410000000883883,
|
|
143
|
+
"message": "Resources are not advertised by the target.",
|
|
144
|
+
"evidence": [
|
|
145
|
+
{
|
|
146
|
+
"endpoint": "resources/list | resources/templates/list",
|
|
147
|
+
"advertised": false,
|
|
148
|
+
"responded": false,
|
|
149
|
+
"minimalShapePresent": false,
|
|
150
|
+
"diagnostics": []
|
|
151
|
+
}
|
|
152
|
+
]
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"id": "security-lite",
|
|
156
|
+
"capability": "security-lite",
|
|
157
|
+
"status": "pass",
|
|
158
|
+
"durationMs": 0.1121250000001055,
|
|
159
|
+
"message": "No security issues detected (lightweight scan).",
|
|
160
|
+
"evidence": [
|
|
161
|
+
{
|
|
162
|
+
"endpoint": "security/scan-lite",
|
|
163
|
+
"advertised": true,
|
|
164
|
+
"responded": true,
|
|
165
|
+
"minimalShapePresent": true,
|
|
166
|
+
"itemCount": 0
|
|
167
|
+
}
|
|
168
|
+
]
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
"id": "conformance",
|
|
172
|
+
"capability": "conformance",
|
|
173
|
+
"status": "pass",
|
|
174
|
+
"durationMs": 2.253124999999727,
|
|
175
|
+
"message": "All 7 conformance checks passed.",
|
|
176
|
+
"evidence": [
|
|
177
|
+
{
|
|
178
|
+
"endpoint": "conformance/check",
|
|
179
|
+
"advertised": true,
|
|
180
|
+
"responded": true,
|
|
181
|
+
"minimalShapePresent": true,
|
|
182
|
+
"itemCount": 7,
|
|
183
|
+
"identifiers": [],
|
|
184
|
+
"diagnostics": [
|
|
185
|
+
"[pass] capabilities-present: Server returned capabilities object.",
|
|
186
|
+
"[pass] server-info: Server provided initialization info.",
|
|
187
|
+
"[pass] tools-capability-match: tools/list returned 1 tool(s).",
|
|
188
|
+
"[pass] prompts-capability-match: Prompts not advertised — endpoint check skipped.",
|
|
189
|
+
"[pass] resources-capability-match: Resources not advertised — endpoint check skipped.",
|
|
190
|
+
"[pass] tool-response-content: No safe tool to invoke — content validation skipped.",
|
|
191
|
+
"[pass] error-handling: Server returned proper error code -32601 for unknown method."
|
|
192
|
+
]
|
|
193
|
+
}
|
|
194
|
+
]
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"id": "schema-quality",
|
|
198
|
+
"capability": "schema-quality",
|
|
199
|
+
"status": "pass",
|
|
200
|
+
"durationMs": 0.8925840000001699,
|
|
201
|
+
"message": "All 1 item(s) have good schema quality.",
|
|
202
|
+
"evidence": [
|
|
203
|
+
{
|
|
204
|
+
"endpoint": "schema-quality/scan",
|
|
205
|
+
"advertised": true,
|
|
206
|
+
"responded": true,
|
|
207
|
+
"minimalShapePresent": true,
|
|
208
|
+
"itemCount": 0,
|
|
209
|
+
"identifiers": []
|
|
210
|
+
}
|
|
211
|
+
]
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
"id": "security",
|
|
215
|
+
"capability": "security",
|
|
216
|
+
"status": "pass",
|
|
217
|
+
"durationMs": 1.133458000000246,
|
|
218
|
+
"message": "No security issues detected.",
|
|
219
|
+
"evidence": [
|
|
220
|
+
{
|
|
221
|
+
"endpoint": "security/scan",
|
|
222
|
+
"advertised": true,
|
|
223
|
+
"responded": true,
|
|
224
|
+
"minimalShapePresent": true,
|
|
225
|
+
"itemCount": 0
|
|
226
|
+
}
|
|
227
|
+
]
|
|
228
|
+
}
|
|
229
|
+
],
|
|
230
|
+
"healthScore": {
|
|
231
|
+
"overall": 93,
|
|
232
|
+
"grade": "A",
|
|
233
|
+
"dimensions": [
|
|
234
|
+
{
|
|
235
|
+
"name": "Protocol Compliance",
|
|
236
|
+
"weight": 0.3,
|
|
237
|
+
"score": 100,
|
|
238
|
+
"details": [
|
|
239
|
+
"conformance: pass (100/100)"
|
|
240
|
+
]
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"name": "Schema Quality",
|
|
244
|
+
"weight": 0.2,
|
|
245
|
+
"score": 100,
|
|
246
|
+
"details": [
|
|
247
|
+
"schema-quality: pass (100/100)"
|
|
248
|
+
]
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
"name": "Security",
|
|
252
|
+
"weight": 0.2,
|
|
253
|
+
"score": 100,
|
|
254
|
+
"details": [
|
|
255
|
+
"security-lite: pass (100/100)",
|
|
256
|
+
"security: pass (100/100)"
|
|
257
|
+
]
|
|
258
|
+
},
|
|
259
|
+
{
|
|
260
|
+
"name": "Reliability",
|
|
261
|
+
"weight": 0.2,
|
|
262
|
+
"score": 67,
|
|
263
|
+
"details": [
|
|
264
|
+
"tools: pass (100/100)",
|
|
265
|
+
"prompts: unsupported (50/100)",
|
|
266
|
+
"resources: unsupported (50/100)"
|
|
267
|
+
]
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
"name": "Performance",
|
|
271
|
+
"weight": 0.1,
|
|
272
|
+
"score": 100,
|
|
273
|
+
"details": [
|
|
274
|
+
"Connect: 722ms",
|
|
275
|
+
"p95 latency: 4ms (3 operations)"
|
|
276
|
+
]
|
|
277
|
+
}
|
|
278
|
+
]
|
|
279
|
+
},
|
|
280
|
+
"performanceMetrics": {
|
|
281
|
+
"connectMs": 722.4729170000003,
|
|
282
|
+
"toolsListMs": 4.4761249999996835,
|
|
283
|
+
"promptsListMs": 0.005541999999877589,
|
|
284
|
+
"resourcesListMs": 0.0015410000000883883
|
|
285
|
+
}
|
|
286
|
+
}
|