@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,482 @@
|
|
|
1
|
+
{
|
|
2
|
+
"artifactType": "run",
|
|
3
|
+
"schemaVersion": "1.0.0",
|
|
4
|
+
"gate": "pass",
|
|
5
|
+
"runId": "run_2026-06-24T020721281Z_c337e720",
|
|
6
|
+
"createdAt": "2026-06-24T02:07:21.282Z",
|
|
7
|
+
"toolVersion": "0.24.0",
|
|
8
|
+
"target": {
|
|
9
|
+
"targetId": "everything-server",
|
|
10
|
+
"adapter": "local-process",
|
|
11
|
+
"command": "npx",
|
|
12
|
+
"args": [
|
|
13
|
+
"-y",
|
|
14
|
+
"@modelcontextprotocol/server-everything"
|
|
15
|
+
],
|
|
16
|
+
"cwd": ".",
|
|
17
|
+
"metadata": {
|
|
18
|
+
"package": "@modelcontextprotocol/server-everything",
|
|
19
|
+
"purpose": "mcp-safety-index",
|
|
20
|
+
"riskClass": "Reference compatibility",
|
|
21
|
+
"failureClass": "Broad protocol surface",
|
|
22
|
+
"whyItMatters": "Exercises tools, prompts, and resources in one official reference server."
|
|
23
|
+
},
|
|
24
|
+
"serverName": "mcp-servers/everything",
|
|
25
|
+
"serverVersion": "2.0.0"
|
|
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": 1,
|
|
36
|
+
"unsupported": 0,
|
|
37
|
+
"flaky": 0,
|
|
38
|
+
"skipped": 0,
|
|
39
|
+
"gate": "pass"
|
|
40
|
+
},
|
|
41
|
+
"checks": [
|
|
42
|
+
{
|
|
43
|
+
"id": "tools",
|
|
44
|
+
"capability": "tools",
|
|
45
|
+
"status": "pass",
|
|
46
|
+
"durationMs": 7.354332999999997,
|
|
47
|
+
"message": "Advertised capability responded with the minimal expected shape (13 items).",
|
|
48
|
+
"evidence": [
|
|
49
|
+
{
|
|
50
|
+
"endpoint": "tools/list",
|
|
51
|
+
"advertised": true,
|
|
52
|
+
"responded": true,
|
|
53
|
+
"minimalShapePresent": true,
|
|
54
|
+
"itemCount": 13,
|
|
55
|
+
"identifiers": [
|
|
56
|
+
"echo",
|
|
57
|
+
"get-annotated-message",
|
|
58
|
+
"get-env",
|
|
59
|
+
"get-resource-links",
|
|
60
|
+
"get-resource-reference",
|
|
61
|
+
"get-structured-content",
|
|
62
|
+
"get-sum",
|
|
63
|
+
"get-tiny-image",
|
|
64
|
+
"gzip-file-as-resource",
|
|
65
|
+
"toggle-simulated-logging",
|
|
66
|
+
"toggle-subscriber-updates",
|
|
67
|
+
"trigger-long-running-operation",
|
|
68
|
+
"simulate-research-query"
|
|
69
|
+
],
|
|
70
|
+
"diagnostics": [
|
|
71
|
+
"Starting default (STDIO) server..."
|
|
72
|
+
],
|
|
73
|
+
"schemas": {
|
|
74
|
+
"echo": {
|
|
75
|
+
"type": "object",
|
|
76
|
+
"properties": {
|
|
77
|
+
"message": {
|
|
78
|
+
"type": "string",
|
|
79
|
+
"description": "Message to echo"
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
"required": [
|
|
83
|
+
"message"
|
|
84
|
+
],
|
|
85
|
+
"additionalProperties": false,
|
|
86
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
87
|
+
},
|
|
88
|
+
"get-annotated-message": {
|
|
89
|
+
"type": "object",
|
|
90
|
+
"properties": {
|
|
91
|
+
"messageType": {
|
|
92
|
+
"type": "string",
|
|
93
|
+
"enum": [
|
|
94
|
+
"error",
|
|
95
|
+
"success",
|
|
96
|
+
"debug"
|
|
97
|
+
],
|
|
98
|
+
"description": "Type of message to demonstrate different annotation patterns"
|
|
99
|
+
},
|
|
100
|
+
"includeImage": {
|
|
101
|
+
"type": "boolean",
|
|
102
|
+
"default": false,
|
|
103
|
+
"description": "Whether to include an example image"
|
|
104
|
+
}
|
|
105
|
+
},
|
|
106
|
+
"required": [
|
|
107
|
+
"messageType"
|
|
108
|
+
],
|
|
109
|
+
"additionalProperties": false,
|
|
110
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
111
|
+
},
|
|
112
|
+
"get-env": {
|
|
113
|
+
"type": "object",
|
|
114
|
+
"properties": {},
|
|
115
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
116
|
+
},
|
|
117
|
+
"get-resource-links": {
|
|
118
|
+
"type": "object",
|
|
119
|
+
"properties": {
|
|
120
|
+
"count": {
|
|
121
|
+
"type": "number",
|
|
122
|
+
"minimum": 1,
|
|
123
|
+
"maximum": 10,
|
|
124
|
+
"default": 3,
|
|
125
|
+
"description": "Number of resource links to return (1-10)"
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
"additionalProperties": false,
|
|
129
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
130
|
+
},
|
|
131
|
+
"get-resource-reference": {
|
|
132
|
+
"type": "object",
|
|
133
|
+
"properties": {
|
|
134
|
+
"resourceType": {
|
|
135
|
+
"type": "string",
|
|
136
|
+
"enum": [
|
|
137
|
+
"Text",
|
|
138
|
+
"Blob"
|
|
139
|
+
],
|
|
140
|
+
"default": "Text"
|
|
141
|
+
},
|
|
142
|
+
"resourceId": {
|
|
143
|
+
"type": "number",
|
|
144
|
+
"default": 1,
|
|
145
|
+
"description": "ID of the text resource to fetch"
|
|
146
|
+
}
|
|
147
|
+
},
|
|
148
|
+
"additionalProperties": false,
|
|
149
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
150
|
+
},
|
|
151
|
+
"get-structured-content": {
|
|
152
|
+
"type": "object",
|
|
153
|
+
"properties": {
|
|
154
|
+
"location": {
|
|
155
|
+
"type": "string",
|
|
156
|
+
"enum": [
|
|
157
|
+
"New York",
|
|
158
|
+
"Chicago",
|
|
159
|
+
"Los Angeles"
|
|
160
|
+
],
|
|
161
|
+
"description": "Choose city"
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
"required": [
|
|
165
|
+
"location"
|
|
166
|
+
],
|
|
167
|
+
"additionalProperties": false,
|
|
168
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
169
|
+
},
|
|
170
|
+
"get-sum": {
|
|
171
|
+
"type": "object",
|
|
172
|
+
"properties": {
|
|
173
|
+
"a": {
|
|
174
|
+
"type": "number",
|
|
175
|
+
"description": "First number"
|
|
176
|
+
},
|
|
177
|
+
"b": {
|
|
178
|
+
"type": "number",
|
|
179
|
+
"description": "Second number"
|
|
180
|
+
}
|
|
181
|
+
},
|
|
182
|
+
"required": [
|
|
183
|
+
"a",
|
|
184
|
+
"b"
|
|
185
|
+
],
|
|
186
|
+
"additionalProperties": false,
|
|
187
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
188
|
+
},
|
|
189
|
+
"get-tiny-image": {
|
|
190
|
+
"type": "object",
|
|
191
|
+
"properties": {},
|
|
192
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
193
|
+
},
|
|
194
|
+
"gzip-file-as-resource": {
|
|
195
|
+
"type": "object",
|
|
196
|
+
"properties": {
|
|
197
|
+
"name": {
|
|
198
|
+
"type": "string",
|
|
199
|
+
"description": "Name of the output file",
|
|
200
|
+
"default": "README.md.gz"
|
|
201
|
+
},
|
|
202
|
+
"data": {
|
|
203
|
+
"type": "string",
|
|
204
|
+
"format": "uri",
|
|
205
|
+
"description": "URL or data URI of the file content to compress",
|
|
206
|
+
"default": "https://raw.githubusercontent.com/modelcontextprotocol/servers/refs/heads/main/README.md"
|
|
207
|
+
},
|
|
208
|
+
"outputType": {
|
|
209
|
+
"type": "string",
|
|
210
|
+
"enum": [
|
|
211
|
+
"resourceLink",
|
|
212
|
+
"resource"
|
|
213
|
+
],
|
|
214
|
+
"default": "resourceLink",
|
|
215
|
+
"description": "How the resulting gzipped file should be returned. 'resourceLink' returns a link to a resource that can be read later, 'resource' returns a full resource object."
|
|
216
|
+
}
|
|
217
|
+
},
|
|
218
|
+
"additionalProperties": false,
|
|
219
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
220
|
+
},
|
|
221
|
+
"toggle-simulated-logging": {
|
|
222
|
+
"type": "object",
|
|
223
|
+
"properties": {},
|
|
224
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
225
|
+
},
|
|
226
|
+
"toggle-subscriber-updates": {
|
|
227
|
+
"type": "object",
|
|
228
|
+
"properties": {},
|
|
229
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
230
|
+
},
|
|
231
|
+
"trigger-long-running-operation": {
|
|
232
|
+
"type": "object",
|
|
233
|
+
"properties": {
|
|
234
|
+
"duration": {
|
|
235
|
+
"type": "number",
|
|
236
|
+
"default": 10,
|
|
237
|
+
"description": "Duration of the operation in seconds"
|
|
238
|
+
},
|
|
239
|
+
"steps": {
|
|
240
|
+
"type": "number",
|
|
241
|
+
"default": 5,
|
|
242
|
+
"description": "Number of steps in the operation"
|
|
243
|
+
}
|
|
244
|
+
},
|
|
245
|
+
"additionalProperties": false,
|
|
246
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
247
|
+
},
|
|
248
|
+
"simulate-research-query": {
|
|
249
|
+
"type": "object",
|
|
250
|
+
"properties": {
|
|
251
|
+
"topic": {
|
|
252
|
+
"type": "string",
|
|
253
|
+
"description": "The research topic to investigate"
|
|
254
|
+
},
|
|
255
|
+
"ambiguous": {
|
|
256
|
+
"type": "boolean",
|
|
257
|
+
"default": false,
|
|
258
|
+
"description": "Simulate an ambiguous query that requires clarification (triggers input_required status)"
|
|
259
|
+
}
|
|
260
|
+
},
|
|
261
|
+
"required": [
|
|
262
|
+
"topic"
|
|
263
|
+
],
|
|
264
|
+
"additionalProperties": false,
|
|
265
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
]
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
"id": "prompts",
|
|
273
|
+
"capability": "prompts",
|
|
274
|
+
"status": "pass",
|
|
275
|
+
"durationMs": 0.74087499999996,
|
|
276
|
+
"message": "Advertised capability responded with the minimal expected shape (4 items).",
|
|
277
|
+
"evidence": [
|
|
278
|
+
{
|
|
279
|
+
"endpoint": "prompts/list",
|
|
280
|
+
"advertised": true,
|
|
281
|
+
"responded": true,
|
|
282
|
+
"minimalShapePresent": true,
|
|
283
|
+
"itemCount": 4,
|
|
284
|
+
"identifiers": [
|
|
285
|
+
"simple-prompt",
|
|
286
|
+
"args-prompt",
|
|
287
|
+
"completable-prompt",
|
|
288
|
+
"resource-prompt"
|
|
289
|
+
],
|
|
290
|
+
"diagnostics": [
|
|
291
|
+
"Starting default (STDIO) server..."
|
|
292
|
+
]
|
|
293
|
+
}
|
|
294
|
+
]
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
"id": "resources",
|
|
298
|
+
"capability": "resources",
|
|
299
|
+
"status": "pass",
|
|
300
|
+
"durationMs": 1.0068340000000262,
|
|
301
|
+
"message": "Advertised capability responded with the minimal expected shape (9 items).",
|
|
302
|
+
"evidence": [
|
|
303
|
+
{
|
|
304
|
+
"endpoint": "resources/list",
|
|
305
|
+
"advertised": true,
|
|
306
|
+
"responded": true,
|
|
307
|
+
"minimalShapePresent": true,
|
|
308
|
+
"itemCount": 7,
|
|
309
|
+
"identifiers": [
|
|
310
|
+
"demo://resource/static/document/architecture.md",
|
|
311
|
+
"demo://resource/static/document/extension.md",
|
|
312
|
+
"demo://resource/static/document/features.md",
|
|
313
|
+
"demo://resource/static/document/how-it-works.md",
|
|
314
|
+
"demo://resource/static/document/instructions.md",
|
|
315
|
+
"demo://resource/static/document/startup.md",
|
|
316
|
+
"demo://resource/static/document/structure.md"
|
|
317
|
+
],
|
|
318
|
+
"diagnostics": [
|
|
319
|
+
"Starting default (STDIO) server..."
|
|
320
|
+
]
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
"endpoint": "resources/templates/list",
|
|
324
|
+
"advertised": true,
|
|
325
|
+
"responded": true,
|
|
326
|
+
"minimalShapePresent": true,
|
|
327
|
+
"itemCount": 2,
|
|
328
|
+
"identifiers": [
|
|
329
|
+
"demo://resource/dynamic/text/{resourceId}",
|
|
330
|
+
"demo://resource/dynamic/blob/{resourceId}"
|
|
331
|
+
],
|
|
332
|
+
"diagnostics": [
|
|
333
|
+
"Starting default (STDIO) server..."
|
|
334
|
+
]
|
|
335
|
+
}
|
|
336
|
+
]
|
|
337
|
+
},
|
|
338
|
+
{
|
|
339
|
+
"id": "security-lite",
|
|
340
|
+
"capability": "security-lite",
|
|
341
|
+
"status": "pass",
|
|
342
|
+
"durationMs": 0.47954200000003766,
|
|
343
|
+
"message": "No security issues detected (lightweight scan).",
|
|
344
|
+
"evidence": [
|
|
345
|
+
{
|
|
346
|
+
"endpoint": "security/scan-lite",
|
|
347
|
+
"advertised": true,
|
|
348
|
+
"responded": true,
|
|
349
|
+
"minimalShapePresent": true,
|
|
350
|
+
"itemCount": 0
|
|
351
|
+
}
|
|
352
|
+
]
|
|
353
|
+
},
|
|
354
|
+
{
|
|
355
|
+
"id": "conformance",
|
|
356
|
+
"capability": "conformance",
|
|
357
|
+
"status": "pass",
|
|
358
|
+
"durationMs": 3.849082999999837,
|
|
359
|
+
"message": "All 7 conformance checks passed.",
|
|
360
|
+
"evidence": [
|
|
361
|
+
{
|
|
362
|
+
"endpoint": "conformance/check",
|
|
363
|
+
"advertised": true,
|
|
364
|
+
"responded": true,
|
|
365
|
+
"minimalShapePresent": true,
|
|
366
|
+
"itemCount": 7,
|
|
367
|
+
"identifiers": [],
|
|
368
|
+
"diagnostics": [
|
|
369
|
+
"[pass] capabilities-present: Server returned capabilities object.",
|
|
370
|
+
"[pass] server-info: Server provided initialization info.",
|
|
371
|
+
"[pass] tools-capability-match: tools/list returned 13 tool(s).",
|
|
372
|
+
"[pass] prompts-capability-match: prompts/list returned 4 prompt(s).",
|
|
373
|
+
"[pass] resources-capability-match: resources/list returned 7 resource(s).",
|
|
374
|
+
"[pass] tool-response-content: Tool \"get-env\" response has valid content array.",
|
|
375
|
+
"[pass] error-handling: Server returned proper error code -32601 for unknown method."
|
|
376
|
+
]
|
|
377
|
+
}
|
|
378
|
+
]
|
|
379
|
+
},
|
|
380
|
+
{
|
|
381
|
+
"id": "schema-quality",
|
|
382
|
+
"capability": "schema-quality",
|
|
383
|
+
"status": "partial",
|
|
384
|
+
"durationMs": 1.885542000000214,
|
|
385
|
+
"message": "Found 5 quality finding(s) across 24 item(s): 0 warnings, 5 info.",
|
|
386
|
+
"evidence": [
|
|
387
|
+
{
|
|
388
|
+
"endpoint": "schema-quality/scan",
|
|
389
|
+
"advertised": true,
|
|
390
|
+
"responded": true,
|
|
391
|
+
"minimalShapePresent": true,
|
|
392
|
+
"itemCount": 5,
|
|
393
|
+
"identifiers": [
|
|
394
|
+
"get-resource-links",
|
|
395
|
+
"get-resource-reference",
|
|
396
|
+
"gzip-file-as-resource",
|
|
397
|
+
"trigger-long-running-operation"
|
|
398
|
+
],
|
|
399
|
+
"diagnostics": [
|
|
400
|
+
"[info] tool \"get-resource-links\": Has properties but no 'required' array declared",
|
|
401
|
+
"[info] tool \"get-resource-reference\": Has properties but no 'required' array declared",
|
|
402
|
+
"[info] tool \"get-resource-reference\": Property 'resourceType' missing description",
|
|
403
|
+
"[info] tool \"gzip-file-as-resource\": Has properties but no 'required' array declared",
|
|
404
|
+
"[info] tool \"trigger-long-running-operation\": Has properties but no 'required' array declared"
|
|
405
|
+
]
|
|
406
|
+
}
|
|
407
|
+
]
|
|
408
|
+
},
|
|
409
|
+
{
|
|
410
|
+
"id": "security",
|
|
411
|
+
"capability": "security",
|
|
412
|
+
"status": "pass",
|
|
413
|
+
"durationMs": 0.8814159999999447,
|
|
414
|
+
"message": "No security issues detected.",
|
|
415
|
+
"evidence": [
|
|
416
|
+
{
|
|
417
|
+
"endpoint": "security/scan",
|
|
418
|
+
"advertised": true,
|
|
419
|
+
"responded": true,
|
|
420
|
+
"minimalShapePresent": true,
|
|
421
|
+
"itemCount": 0
|
|
422
|
+
}
|
|
423
|
+
]
|
|
424
|
+
}
|
|
425
|
+
],
|
|
426
|
+
"healthScore": {
|
|
427
|
+
"overall": 92,
|
|
428
|
+
"grade": "A",
|
|
429
|
+
"dimensions": [
|
|
430
|
+
{
|
|
431
|
+
"name": "Protocol Compliance",
|
|
432
|
+
"weight": 0.3,
|
|
433
|
+
"score": 100,
|
|
434
|
+
"details": [
|
|
435
|
+
"conformance: pass (100/100)"
|
|
436
|
+
]
|
|
437
|
+
},
|
|
438
|
+
{
|
|
439
|
+
"name": "Schema Quality",
|
|
440
|
+
"weight": 0.2,
|
|
441
|
+
"score": 60,
|
|
442
|
+
"details": [
|
|
443
|
+
"schema-quality: partial (60/100)"
|
|
444
|
+
]
|
|
445
|
+
},
|
|
446
|
+
{
|
|
447
|
+
"name": "Security",
|
|
448
|
+
"weight": 0.2,
|
|
449
|
+
"score": 100,
|
|
450
|
+
"details": [
|
|
451
|
+
"security-lite: pass (100/100)",
|
|
452
|
+
"security: pass (100/100)"
|
|
453
|
+
]
|
|
454
|
+
},
|
|
455
|
+
{
|
|
456
|
+
"name": "Reliability",
|
|
457
|
+
"weight": 0.2,
|
|
458
|
+
"score": 100,
|
|
459
|
+
"details": [
|
|
460
|
+
"tools: pass (100/100)",
|
|
461
|
+
"prompts: pass (100/100)",
|
|
462
|
+
"resources: pass (100/100)"
|
|
463
|
+
]
|
|
464
|
+
},
|
|
465
|
+
{
|
|
466
|
+
"name": "Performance",
|
|
467
|
+
"weight": 0.1,
|
|
468
|
+
"score": 100,
|
|
469
|
+
"details": [
|
|
470
|
+
"Connect: 846ms",
|
|
471
|
+
"p95 latency: 7ms (3 operations)"
|
|
472
|
+
]
|
|
473
|
+
}
|
|
474
|
+
]
|
|
475
|
+
},
|
|
476
|
+
"performanceMetrics": {
|
|
477
|
+
"connectMs": 845.9128340000001,
|
|
478
|
+
"toolsListMs": 7.354332999999997,
|
|
479
|
+
"promptsListMs": 0.74087499999996,
|
|
480
|
+
"resourcesListMs": 1.0068340000000262
|
|
481
|
+
}
|
|
482
|
+
}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
# MCP Observatory Run Report
|
|
2
|
+
|
|
3
|
+
Generated at 2026-06-24T02:07:21.282Z
|
|
4
|
+
|
|
5
|
+
## Target and Environment Metadata
|
|
6
|
+
|
|
7
|
+
- Target: `everything-server`
|
|
8
|
+
- Adapter: `local-process`
|
|
9
|
+
- Command: `npx -y @modelcontextprotocol/server-everything`
|
|
10
|
+
- Server: `mcp-servers/everything 2.0.0`
|
|
11
|
+
- Platform: `darwin 25.5.0`
|
|
12
|
+
- Node: `v22.22.1`
|
|
13
|
+
|
|
14
|
+
## Executive Summary
|
|
15
|
+
|
|
16
|
+
**Health Score: 92/100 (A)**
|
|
17
|
+
|
|
18
|
+
| Dimension | Score | Weight |
|
|
19
|
+
| --- | --- | --- |
|
|
20
|
+
| Protocol Compliance | 100/100 | 30% |
|
|
21
|
+
| Schema Quality | 60/100 | 20% |
|
|
22
|
+
| Security | 100/100 | 20% |
|
|
23
|
+
| Reliability | 100/100 | 20% |
|
|
24
|
+
| Performance | 100/100 | 10% |
|
|
25
|
+
|
|
26
|
+
| Gate | Total | Pass | Fail | Partial | Unsupported | Flaky | Skipped |
|
|
27
|
+
| --- | --- | --- | --- | --- | --- | --- | --- |
|
|
28
|
+
| pass | 7 | 6 | 0 | 1 | 0 | 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: schema-quality: Found 5 quality finding(s) across 24 item(s): 0 warnings, 5 info.
|
|
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: schema-quality
|
|
37
|
+
- Skipped checks: none
|
|
38
|
+
- Unsupported checks: none
|
|
39
|
+
- Suggested next step: Review the caveated checks next: schema-quality.
|
|
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 | 3.85 | All 7 conformance checks passed. |
|
|
51
|
+
| healthy | prompts | pass | 0.74 | Advertised capability responded with the minimal expected shape (4 items). |
|
|
52
|
+
| healthy | resources | pass | 1.01 | Advertised capability responded with the minimal expected shape (9 items). |
|
|
53
|
+
| healthy | security | pass | 0.88 | No security issues detected. |
|
|
54
|
+
| healthy | security-lite | pass | 0.48 | No security issues detected (lightweight scan). |
|
|
55
|
+
| healthy | tools | pass | 7.35 | Advertised capability responded with the minimal expected shape (13 items). |
|
|
56
|
+
| review | schema-quality | partial | 1.89 | Found 5 quality finding(s) across 24 item(s): 0 warnings, 5 info. |
|
|
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 13 tool(s). (+4 more)
|
|
71
|
+
|
|
72
|
+
### prompts — pass
|
|
73
|
+
|
|
74
|
+
Summary: Advertised capability responded with the minimal expected shape (4 items).
|
|
75
|
+
|
|
76
|
+
- Endpoint: `prompts/list`
|
|
77
|
+
- Advertised: `true`
|
|
78
|
+
- Responded: `true`
|
|
79
|
+
- Minimal shape present: `true`
|
|
80
|
+
- Item count: `4`
|
|
81
|
+
- Identifiers: simple-prompt, args-prompt, completable-prompt, resource-prompt
|
|
82
|
+
- Diagnostics: Starting default (STDIO) server...
|
|
83
|
+
|
|
84
|
+
### resources — pass
|
|
85
|
+
|
|
86
|
+
Summary: Advertised capability responded with the minimal expected shape (9 items).
|
|
87
|
+
|
|
88
|
+
- Endpoint: `resources/list`
|
|
89
|
+
- Advertised: `true`
|
|
90
|
+
- Responded: `true`
|
|
91
|
+
- Minimal shape present: `true`
|
|
92
|
+
- Item count: `7`
|
|
93
|
+
- Identifiers: demo://resource/static/document/architecture.md, demo://resource/static/document/extension.md, demo://resource/static/document/features.md, demo://resource/static/document/how-it-works.md, demo://resource/static/document/instructions.md (+2 more)
|
|
94
|
+
- Diagnostics: Starting default (STDIO) server...
|
|
95
|
+
- Endpoint: `resources/templates/list`
|
|
96
|
+
- Advertised: `true`
|
|
97
|
+
- Responded: `true`
|
|
98
|
+
- Minimal shape present: `true`
|
|
99
|
+
- Item count: `2`
|
|
100
|
+
- Identifiers: demo://resource/dynamic/text/{resourceId}, demo://resource/dynamic/blob/{resourceId}
|
|
101
|
+
- Diagnostics: Starting default (STDIO) server...
|
|
102
|
+
|
|
103
|
+
### security — pass
|
|
104
|
+
|
|
105
|
+
Summary: No security issues detected.
|
|
106
|
+
|
|
107
|
+
- Endpoint: `security/scan`
|
|
108
|
+
- Advertised: `true`
|
|
109
|
+
- Responded: `true`
|
|
110
|
+
- Minimal shape present: `true`
|
|
111
|
+
- Item count: `0`
|
|
112
|
+
- Identifiers: none
|
|
113
|
+
- Diagnostics: none
|
|
114
|
+
|
|
115
|
+
### security-lite — pass
|
|
116
|
+
|
|
117
|
+
Summary: No security issues detected (lightweight scan).
|
|
118
|
+
|
|
119
|
+
- Endpoint: `security/scan-lite`
|
|
120
|
+
- Advertised: `true`
|
|
121
|
+
- Responded: `true`
|
|
122
|
+
- Minimal shape present: `true`
|
|
123
|
+
- Item count: `0`
|
|
124
|
+
- Identifiers: none
|
|
125
|
+
- Diagnostics: none
|
|
126
|
+
|
|
127
|
+
### tools — pass
|
|
128
|
+
|
|
129
|
+
Summary: Advertised capability responded with the minimal expected shape (13 items).
|
|
130
|
+
|
|
131
|
+
- Endpoint: `tools/list`
|
|
132
|
+
- Advertised: `true`
|
|
133
|
+
- Responded: `true`
|
|
134
|
+
- Minimal shape present: `true`
|
|
135
|
+
- Item count: `13`
|
|
136
|
+
- Identifiers: echo, get-annotated-message, get-env, get-resource-links, get-resource-reference (+8 more)
|
|
137
|
+
- Diagnostics: Starting default (STDIO) server...
|
|
138
|
+
|
|
139
|
+
### schema-quality — partial
|
|
140
|
+
|
|
141
|
+
Summary: Found 5 quality finding(s) across 24 item(s): 0 warnings, 5 info.
|
|
142
|
+
|
|
143
|
+
- Endpoint: `schema-quality/scan`
|
|
144
|
+
- Advertised: `true`
|
|
145
|
+
- Responded: `true`
|
|
146
|
+
- Minimal shape present: `true`
|
|
147
|
+
- Item count: `5`
|
|
148
|
+
- Identifiers: get-resource-links, get-resource-reference, gzip-file-as-resource, trigger-long-running-operation
|
|
149
|
+
- Diagnostics: [info] tool "get-resource-links": Has properties but no 'required' array declared, [info] tool "get-resource-reference": Has properties but no 'required' array declared, [info] tool "get-resource-reference": Property 'resourceType' missing description (+2 more)
|
|
150
|
+
|
|
151
|
+
## Reproduction Commands
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
npm run cli -- run --target <path-to-target-config.json>
|
|
155
|
+
npm run cli -- report --run <path-to-run-artifact.json> --format markdown
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
## Artifact Provenance
|
|
159
|
+
|
|
160
|
+
- Artifact type: `run`
|
|
161
|
+
- Schema version: `1.0.0`
|
|
162
|
+
- Run ID: `run_2026-06-24T020721281Z_c337e720`
|
|
163
|
+
- Gate: `pass`
|