@kya-os/contracts 1.6.19 → 1.7.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/dist/agentshield-api/schemas.d.ts +154 -154
- package/dist/audit/index.d.ts +24 -24
- package/dist/cli.d.ts +26 -26
- package/dist/consent/index.d.ts +8 -2
- package/dist/consent/index.js +73 -17
- package/dist/consent/schemas.d.ts +123 -123
- package/dist/consent/schemas.js +1 -1
- package/dist/consent/types.d.ts +1 -1
- package/dist/dashboard-config/schemas.d.ts +2241 -2241
- package/dist/delegation/schemas.d.ts +34 -34
- package/dist/deploy/schemas.d.ts +110 -110
- package/dist/handshake.d.ts +4 -4
- package/dist/handshake.js +2 -2
- package/dist/proof.d.ts +12 -12
- package/dist/registry.d.ts +8 -8
- package/dist/reputation/api.d.ts +146 -146
- package/dist/reputation/credentials.d.ts +60 -60
- package/dist/reputation/schemas.d.ts +24 -24
- package/dist/test.d.ts +12 -12
- package/dist/tool-protection/index.d.ts +18 -18
- package/dist/verifier.d.ts +8 -8
- package/dist/well-known/index.d.ts +716 -11
- package/dist/well-known/index.js +169 -1
- package/package.json +2 -1
package/dist/well-known/index.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* @module @kya-os/contracts/well-known
|
|
10
10
|
*/
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.WellKnownResponseSchema = exports.WellKnownConfigSchema = exports.MCPIdentitySchema = exports.AgentDocumentSchema = exports.DIDDocumentSchema = exports.WellKnownPath = void 0;
|
|
12
|
+
exports.WellKnownResponseSchema = exports.WellKnownConfigSchema = exports.MCPClientConfigSchema = exports.MCPServerConfigSchema = exports.MCPServerCardSchema = exports.MCPIdentitySchema = exports.AgentDocumentSchema = exports.DIDDocumentSchema = exports.WellKnownPath = void 0;
|
|
13
13
|
exports.isDIDDocument = isDIDDocument;
|
|
14
14
|
exports.isAgentDocument = isAgentDocument;
|
|
15
15
|
exports.isMCPIdentity = isMCPIdentity;
|
|
@@ -18,6 +18,12 @@ exports.validateAgentDocument = validateAgentDocument;
|
|
|
18
18
|
exports.validateMCPIdentity = validateMCPIdentity;
|
|
19
19
|
exports.isWellKnownPath = isWellKnownPath;
|
|
20
20
|
exports.getWellKnownContentType = getWellKnownContentType;
|
|
21
|
+
exports.isMCPServerCard = isMCPServerCard;
|
|
22
|
+
exports.validateMCPServerCard = validateMCPServerCard;
|
|
23
|
+
exports.isMCPServerConfig = isMCPServerConfig;
|
|
24
|
+
exports.validateMCPServerConfig = validateMCPServerConfig;
|
|
25
|
+
exports.isMCPClientConfig = isMCPClientConfig;
|
|
26
|
+
exports.validateMCPClientConfig = validateMCPClientConfig;
|
|
21
27
|
const zod_1 = require("zod");
|
|
22
28
|
/**
|
|
23
29
|
* Well-known endpoint paths
|
|
@@ -28,6 +34,12 @@ var WellKnownPath;
|
|
|
28
34
|
WellKnownPath["AGENT_DOCUMENT"] = "/.well-known/agent.json";
|
|
29
35
|
WellKnownPath["MCP_IDENTITY"] = "/.well-known/mcp-identity";
|
|
30
36
|
WellKnownPath["TOOL_PROTECTIONS"] = "/.well-known/tool-protections.json";
|
|
37
|
+
/** SEP-1649 MCP Server Card (current usage by Cursor/Claude Desktop) */
|
|
38
|
+
WellKnownPath["MCP_SERVER_CONFIG"] = "/.well-known/mcp.json";
|
|
39
|
+
/** SEP-1649 MCP Server Card (proposed spec path) */
|
|
40
|
+
WellKnownPath["MCP_SERVER_CARD"] = "/.well-known/mcp/server-card.json";
|
|
41
|
+
/** Client configuration helper (Cursor/Claude Desktop ready-to-use config) */
|
|
42
|
+
WellKnownPath["MCP_CLIENT_CONFIG"] = "/.well-known/mcp-client-config.json";
|
|
31
43
|
})(WellKnownPath || (exports.WellKnownPath = WellKnownPath = {}));
|
|
32
44
|
/**
|
|
33
45
|
* Zod Schemas for Validation
|
|
@@ -73,9 +85,128 @@ exports.MCPIdentitySchema = zod_1.z.object({
|
|
|
73
85
|
timestamp: zod_1.z.number(),
|
|
74
86
|
metadata: zod_1.z.record(zod_1.z.unknown()).optional()
|
|
75
87
|
});
|
|
88
|
+
/** SEP-1649 MCP Server Card Schema */
|
|
89
|
+
exports.MCPServerCardSchema = zod_1.z.object({
|
|
90
|
+
$schema: zod_1.z.string().optional(),
|
|
91
|
+
version: zod_1.z.string(),
|
|
92
|
+
protocolVersion: zod_1.z.string(),
|
|
93
|
+
serverInfo: zod_1.z.object({
|
|
94
|
+
name: zod_1.z.string(),
|
|
95
|
+
title: zod_1.z.string().optional(),
|
|
96
|
+
version: zod_1.z.string()
|
|
97
|
+
}),
|
|
98
|
+
description: zod_1.z.string().optional(),
|
|
99
|
+
iconUrl: zod_1.z.string().optional(),
|
|
100
|
+
documentationUrl: zod_1.z.string().optional(),
|
|
101
|
+
transport: zod_1.z.object({
|
|
102
|
+
type: zod_1.z.enum(['streamable-http', 'sse', 'stdio']),
|
|
103
|
+
endpoint: zod_1.z.string()
|
|
104
|
+
}),
|
|
105
|
+
capabilities: zod_1.z.object({
|
|
106
|
+
tools: zod_1.z.object({ listChanged: zod_1.z.boolean().optional() }).optional(),
|
|
107
|
+
prompts: zod_1.z.object({ listChanged: zod_1.z.boolean().optional() }).optional(),
|
|
108
|
+
resources: zod_1.z.object({
|
|
109
|
+
subscribe: zod_1.z.boolean().optional(),
|
|
110
|
+
listChanged: zod_1.z.boolean().optional()
|
|
111
|
+
}).optional(),
|
|
112
|
+
logging: zod_1.z.record(zod_1.z.unknown()).optional(),
|
|
113
|
+
completions: zod_1.z.record(zod_1.z.unknown()).optional(),
|
|
114
|
+
experimental: zod_1.z.record(zod_1.z.unknown()).optional()
|
|
115
|
+
}).optional(),
|
|
116
|
+
requires: zod_1.z.object({
|
|
117
|
+
sampling: zod_1.z.record(zod_1.z.unknown()).optional(),
|
|
118
|
+
roots: zod_1.z.record(zod_1.z.unknown()).optional(),
|
|
119
|
+
elicitation: zod_1.z.record(zod_1.z.unknown()).optional(),
|
|
120
|
+
experimental: zod_1.z.record(zod_1.z.unknown()).optional()
|
|
121
|
+
}).optional(),
|
|
122
|
+
authentication: zod_1.z.object({
|
|
123
|
+
required: zod_1.z.boolean(),
|
|
124
|
+
schemes: zod_1.z.array(zod_1.z.string())
|
|
125
|
+
}).optional(),
|
|
126
|
+
instructions: zod_1.z.string().optional(),
|
|
127
|
+
resources: zod_1.z.union([
|
|
128
|
+
zod_1.z.literal('dynamic'),
|
|
129
|
+
zod_1.z.array(zod_1.z.object({
|
|
130
|
+
name: zod_1.z.string(),
|
|
131
|
+
title: zod_1.z.string().optional(),
|
|
132
|
+
uri: zod_1.z.string(),
|
|
133
|
+
description: zod_1.z.string().optional(),
|
|
134
|
+
mimeType: zod_1.z.string().optional()
|
|
135
|
+
}))
|
|
136
|
+
]).optional(),
|
|
137
|
+
tools: zod_1.z.union([
|
|
138
|
+
zod_1.z.literal('dynamic'),
|
|
139
|
+
zod_1.z.array(zod_1.z.object({
|
|
140
|
+
name: zod_1.z.string(),
|
|
141
|
+
title: zod_1.z.string().optional(),
|
|
142
|
+
description: zod_1.z.string().optional(),
|
|
143
|
+
inputSchema: zod_1.z.record(zod_1.z.unknown()).optional()
|
|
144
|
+
}))
|
|
145
|
+
]).optional(),
|
|
146
|
+
prompts: zod_1.z.union([
|
|
147
|
+
zod_1.z.literal('dynamic'),
|
|
148
|
+
zod_1.z.array(zod_1.z.object({
|
|
149
|
+
name: zod_1.z.string(),
|
|
150
|
+
title: zod_1.z.string().optional(),
|
|
151
|
+
description: zod_1.z.string().optional(),
|
|
152
|
+
arguments: zod_1.z.array(zod_1.z.object({
|
|
153
|
+
name: zod_1.z.string(),
|
|
154
|
+
description: zod_1.z.string().optional(),
|
|
155
|
+
required: zod_1.z.boolean().optional()
|
|
156
|
+
})).optional()
|
|
157
|
+
}))
|
|
158
|
+
]).optional(),
|
|
159
|
+
_meta: zod_1.z.record(zod_1.z.unknown()).optional()
|
|
160
|
+
});
|
|
161
|
+
/** Legacy MCP Server Config Schema */
|
|
162
|
+
exports.MCPServerConfigSchema = zod_1.z.object({
|
|
163
|
+
name: zod_1.z.string(),
|
|
164
|
+
description: zod_1.z.string().optional(),
|
|
165
|
+
url: zod_1.z.string(),
|
|
166
|
+
transport: zod_1.z.enum(['sse', 'stdio', 'http']),
|
|
167
|
+
version: zod_1.z.string().optional(),
|
|
168
|
+
agentDid: zod_1.z.string().optional(),
|
|
169
|
+
capabilities: zod_1.z.array(zod_1.z.string()).optional(),
|
|
170
|
+
requiresAuth: zod_1.z.boolean().optional(),
|
|
171
|
+
authProvider: zod_1.z.string().optional(),
|
|
172
|
+
metadata: zod_1.z.record(zod_1.z.unknown()).optional()
|
|
173
|
+
});
|
|
174
|
+
/** MCP Client Config Schema */
|
|
175
|
+
exports.MCPClientConfigSchema = zod_1.z.object({
|
|
176
|
+
claudeDesktop: zod_1.z.object({
|
|
177
|
+
mcpServers: zod_1.z.record(zod_1.z.object({
|
|
178
|
+
url: zod_1.z.string(),
|
|
179
|
+
transport: zod_1.z.literal('sse').optional()
|
|
180
|
+
}))
|
|
181
|
+
}),
|
|
182
|
+
cursor: zod_1.z.object({
|
|
183
|
+
mcpServers: zod_1.z.record(zod_1.z.object({
|
|
184
|
+
url: zod_1.z.string(),
|
|
185
|
+
transport: zod_1.z.literal('sse').optional()
|
|
186
|
+
}))
|
|
187
|
+
}),
|
|
188
|
+
cursorDeepLink: zod_1.z.string().optional(),
|
|
189
|
+
_meta: zod_1.z.object({
|
|
190
|
+
serverName: zod_1.z.string().optional(),
|
|
191
|
+
serverUrl: zod_1.z.string().optional(),
|
|
192
|
+
mcpEndpoint: zod_1.z.string().optional(),
|
|
193
|
+
agentDid: zod_1.z.string().optional(),
|
|
194
|
+
generatedAt: zod_1.z.number().optional(),
|
|
195
|
+
instructions: zod_1.z.string().optional()
|
|
196
|
+
}).catchall(zod_1.z.unknown()).optional()
|
|
197
|
+
});
|
|
76
198
|
exports.WellKnownConfigSchema = zod_1.z.object({
|
|
77
199
|
serviceName: zod_1.z.string().optional(),
|
|
200
|
+
serviceTitle: zod_1.z.string().optional(),
|
|
78
201
|
serviceEndpoint: zod_1.z.string().optional(),
|
|
202
|
+
description: zod_1.z.string().optional(),
|
|
203
|
+
serverVersion: zod_1.z.string().optional(),
|
|
204
|
+
protocolVersion: zod_1.z.string().optional(),
|
|
205
|
+
iconUrl: zod_1.z.string().optional(),
|
|
206
|
+
documentationUrl: zod_1.z.string().optional(),
|
|
207
|
+
requiresAuth: zod_1.z.boolean().optional(),
|
|
208
|
+
authSchemes: zod_1.z.array(zod_1.z.string()).optional(),
|
|
209
|
+
instructions: zod_1.z.string().optional(),
|
|
79
210
|
metadata: zod_1.z.record(zod_1.z.unknown()).optional()
|
|
80
211
|
});
|
|
81
212
|
exports.WellKnownResponseSchema = zod_1.z.object({
|
|
@@ -125,6 +256,7 @@ function getWellKnownContentType(path) {
|
|
|
125
256
|
return 'application/did+json';
|
|
126
257
|
case WellKnownPath.AGENT_DOCUMENT:
|
|
127
258
|
case WellKnownPath.TOOL_PROTECTIONS:
|
|
259
|
+
case WellKnownPath.MCP_SERVER_CONFIG:
|
|
128
260
|
return 'application/json';
|
|
129
261
|
case WellKnownPath.MCP_IDENTITY:
|
|
130
262
|
return 'application/json';
|
|
@@ -132,3 +264,39 @@ function getWellKnownContentType(path) {
|
|
|
132
264
|
return 'application/json';
|
|
133
265
|
}
|
|
134
266
|
}
|
|
267
|
+
/**
|
|
268
|
+
* Type guard for MCPServerCard (SEP-1649)
|
|
269
|
+
*/
|
|
270
|
+
function isMCPServerCard(obj) {
|
|
271
|
+
return exports.MCPServerCardSchema.safeParse(obj).success;
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Validation function for MCPServerCard (SEP-1649)
|
|
275
|
+
*/
|
|
276
|
+
function validateMCPServerCard(obj) {
|
|
277
|
+
return exports.MCPServerCardSchema.parse(obj);
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Type guard for MCPServerConfig (legacy)
|
|
281
|
+
*/
|
|
282
|
+
function isMCPServerConfig(obj) {
|
|
283
|
+
return exports.MCPServerConfigSchema.safeParse(obj).success;
|
|
284
|
+
}
|
|
285
|
+
/**
|
|
286
|
+
* Validation function for MCPServerConfig (legacy)
|
|
287
|
+
*/
|
|
288
|
+
function validateMCPServerConfig(obj) {
|
|
289
|
+
return exports.MCPServerConfigSchema.parse(obj);
|
|
290
|
+
}
|
|
291
|
+
/**
|
|
292
|
+
* Type guard for MCPClientConfig
|
|
293
|
+
*/
|
|
294
|
+
function isMCPClientConfig(obj) {
|
|
295
|
+
return exports.MCPClientConfigSchema.safeParse(obj).success;
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Validation function for MCPClientConfig
|
|
299
|
+
*/
|
|
300
|
+
function validateMCPClientConfig(obj) {
|
|
301
|
+
return exports.MCPClientConfigSchema.parse(obj);
|
|
302
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kya-os/contracts",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.7.1",
|
|
4
4
|
"description": "Shared contracts, types, and schemas for MCP-I framework",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -95,6 +95,7 @@
|
|
|
95
95
|
},
|
|
96
96
|
"sideEffects": false,
|
|
97
97
|
"dependencies": {
|
|
98
|
+
"@kya-os/consent": "^0.1.2",
|
|
98
99
|
"zod": "^3.25.76"
|
|
99
100
|
},
|
|
100
101
|
"devDependencies": {
|