openxiangda-mcp 2.0.0-alpha.35 → 2.0.0-alpha.37
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/index.d.ts +65 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +245 -1
- package/dist/index.js.map +1 -1
- package/package.json +3 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,70 @@
|
|
|
1
1
|
import { McpServer } from '@modelcontextprotocol/server';
|
|
2
2
|
import { OpenXiangdaApplicationServices } from 'openxiangda-devkit-core';
|
|
3
|
+
import { type AiCapability, type AiCapabilityCatalog } from 'openxiangda-contracts';
|
|
4
|
+
export interface ApplicationAiMcpExecutor {
|
|
5
|
+
executeRead(capability: AiCapability, input: Record<string, unknown>): Promise<unknown>;
|
|
6
|
+
createPreview(capability: AiCapability, input: Record<string, unknown>): Promise<unknown>;
|
|
7
|
+
confirmPreview(previewId: string): Promise<unknown>;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* The smallest runtime surface an application needs to expose to AI. A Nest
|
|
11
|
+
* application can pass its request-scoped OpenXiangdaDataApiService here;
|
|
12
|
+
* that service already carries the verified current-user context and the
|
|
13
|
+
* platform remains the authorization owner.
|
|
14
|
+
*/
|
|
15
|
+
export interface ApplicationAiDataApi {
|
|
16
|
+
query(resourceCode: string, input: Record<string, unknown>): Promise<unknown>;
|
|
17
|
+
get(resourceCode: string, id: string): Promise<unknown>;
|
|
18
|
+
create(resourceCode: string, data: Record<string, unknown>): Promise<unknown>;
|
|
19
|
+
update(resourceCode: string, id: string, input: {
|
|
20
|
+
expectedRevision: number;
|
|
21
|
+
data: Record<string, unknown>;
|
|
22
|
+
}): Promise<unknown>;
|
|
23
|
+
delete(resourceCode: string, id: string, expectedRevision: number): Promise<unknown>;
|
|
24
|
+
}
|
|
25
|
+
export interface ApplicationAiDataApiExecutorOptions {
|
|
26
|
+
dataApi: ApplicationAiDataApi;
|
|
27
|
+
previewTtlMs?: number;
|
|
28
|
+
now?: () => number;
|
|
29
|
+
idFactory?: () => string;
|
|
30
|
+
}
|
|
31
|
+
export interface ApplicationAiMcpOptions {
|
|
32
|
+
catalog: AiCapabilityCatalog;
|
|
33
|
+
executor: ApplicationAiMcpExecutor;
|
|
34
|
+
serverName?: string;
|
|
35
|
+
serverVersion?: string;
|
|
36
|
+
}
|
|
37
|
+
export interface AggregatedApplicationAiMcpEntry {
|
|
38
|
+
catalog: AiCapabilityCatalog;
|
|
39
|
+
executor: ApplicationAiMcpExecutor;
|
|
40
|
+
}
|
|
41
|
+
export interface AggregatedApplicationAiMcpOptions {
|
|
42
|
+
applications: AggregatedApplicationAiMcpEntry[];
|
|
43
|
+
serverName?: string;
|
|
44
|
+
serverVersion?: string;
|
|
45
|
+
}
|
|
46
|
+
export declare const APPLICATION_AI_MCP_CATALOG_URI = "openxiangda://ai/catalog";
|
|
47
|
+
export declare const APPLICATION_AI_MCP_CONFIRM_TOOL = "openxiangda.ai.confirm";
|
|
48
|
+
export declare const AGGREGATED_AI_MCP_CATALOG_URI = "openxiangda://ai/catalog";
|
|
49
|
+
/**
|
|
50
|
+
* Bind the generated CRUD Catalog to the application's existing Data API.
|
|
51
|
+
* The preview store is intentionally process-local for this first slice; the
|
|
52
|
+
* platform Gateway can replace it with a short-lived durable store without
|
|
53
|
+
* changing the MCP contract.
|
|
54
|
+
*/
|
|
55
|
+
export declare function createApplicationAiDataApiExecutor(options: ApplicationAiDataApiExecutorOptions): ApplicationAiMcpExecutor;
|
|
56
|
+
/**
|
|
57
|
+
* Build one application-scoped MCP facade from the immutable AI Catalog.
|
|
58
|
+
* Identity, Data API authorization and preview storage remain owned by the
|
|
59
|
+
* host executor; this adapter only maps the catalog to MCP tools.
|
|
60
|
+
*/
|
|
61
|
+
export declare function createApplicationAiMcpServer(options: ApplicationAiMcpOptions): McpServer;
|
|
62
|
+
/**
|
|
63
|
+
* Build the platform-level AI facade from the same per-application Catalogs.
|
|
64
|
+
* The aggregator only routes tools to the owning application executor; it
|
|
65
|
+
* never merges permissions or creates a second data/auth boundary.
|
|
66
|
+
*/
|
|
67
|
+
export declare function createAggregatedAiMcpServer(options: AggregatedApplicationAiMcpOptions): McpServer;
|
|
3
68
|
export declare const MCP_RESOURCE_URIS: readonly ["openxiangda://workspace/context", "openxiangda://workspace/contracts", "openxiangda://platform/capabilities", "openxiangda://deployments/latest", "openxiangda://environments", "openxiangda://docs/index"];
|
|
4
69
|
export declare const MCP_TOOL_NAMES: readonly ["workspace_context", "contract_describe", "generate_contracts", "check_app", "run_tests", "build_app", "deployment_plan", "environment_status", "start_environment", "stop_environment", "deploy_app", "deployment_status", "deployment_logs", "retry_deployment", "rollback_app"];
|
|
5
70
|
export declare function createOpenXiangdaMcpServer(options?: {
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,251 @@
|
|
|
1
|
-
import { McpServer } from '@modelcontextprotocol/server';
|
|
1
|
+
import { McpServer, fromJsonSchema } from '@modelcontextprotocol/server';
|
|
2
2
|
import { StdioServerTransport } from '@modelcontextprotocol/server/stdio';
|
|
3
3
|
import { z } from 'zod/v4';
|
|
4
4
|
import { OPENXIANGDA_TOOLCHAIN_VERSION, OpenXiangdaApplicationServices, } from 'openxiangda-devkit-core';
|
|
5
|
+
import { assertAiCapabilityCatalog, } from 'openxiangda-contracts';
|
|
6
|
+
export const APPLICATION_AI_MCP_CATALOG_URI = 'openxiangda://ai/catalog';
|
|
7
|
+
export const APPLICATION_AI_MCP_CONFIRM_TOOL = 'openxiangda.ai.confirm';
|
|
8
|
+
export const AGGREGATED_AI_MCP_CATALOG_URI = 'openxiangda://ai/catalog';
|
|
9
|
+
/**
|
|
10
|
+
* Bind the generated CRUD Catalog to the application's existing Data API.
|
|
11
|
+
* The preview store is intentionally process-local for this first slice; the
|
|
12
|
+
* platform Gateway can replace it with a short-lived durable store without
|
|
13
|
+
* changing the MCP contract.
|
|
14
|
+
*/
|
|
15
|
+
export function createApplicationAiDataApiExecutor(options) {
|
|
16
|
+
const previews = new Map();
|
|
17
|
+
const now = options.now || (() => Date.now());
|
|
18
|
+
const previewTtlMs = Math.min(Math.max(options.previewTtlMs || 5 * 60_000, 10_000), 15 * 60_000);
|
|
19
|
+
const idFactory = options.idFactory || (() => crypto.randomUUID());
|
|
20
|
+
return {
|
|
21
|
+
async executeRead(capability, input) {
|
|
22
|
+
if (capability.risk !== 'read') {
|
|
23
|
+
throw new Error('AI_READ_CAPABILITY_REQUIRED');
|
|
24
|
+
}
|
|
25
|
+
return await executeDataApiOperation(options.dataApi, capability, input);
|
|
26
|
+
},
|
|
27
|
+
async createPreview(capability, input) {
|
|
28
|
+
if (capability.risk === 'read') {
|
|
29
|
+
throw new Error('AI_MUTATION_CAPABILITY_REQUIRED');
|
|
30
|
+
}
|
|
31
|
+
const previewId = idFactory();
|
|
32
|
+
const expiresAt = now() + previewTtlMs;
|
|
33
|
+
previews.set(previewId, { capability, input, expiresAt });
|
|
34
|
+
return {
|
|
35
|
+
previewId,
|
|
36
|
+
expiresAt: new Date(expiresAt).toISOString(),
|
|
37
|
+
appCode: capability.appCode,
|
|
38
|
+
capabilityCode: capability.code,
|
|
39
|
+
resourceCode: capability.resources[0],
|
|
40
|
+
operation: capability.operation,
|
|
41
|
+
input,
|
|
42
|
+
requiresConfirmation: true,
|
|
43
|
+
};
|
|
44
|
+
},
|
|
45
|
+
async confirmPreview(previewId) {
|
|
46
|
+
const preview = previews.get(previewId);
|
|
47
|
+
if (!preview)
|
|
48
|
+
throw new Error('AI_PREVIEW_NOT_FOUND');
|
|
49
|
+
previews.delete(previewId);
|
|
50
|
+
if (preview.expiresAt <= now())
|
|
51
|
+
throw new Error('AI_PREVIEW_EXPIRED');
|
|
52
|
+
return await executeDataApiOperation(options.dataApi, preview.capability, preview.input);
|
|
53
|
+
},
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Build one application-scoped MCP facade from the immutable AI Catalog.
|
|
58
|
+
* Identity, Data API authorization and preview storage remain owned by the
|
|
59
|
+
* host executor; this adapter only maps the catalog to MCP tools.
|
|
60
|
+
*/
|
|
61
|
+
export function createApplicationAiMcpServer(options) {
|
|
62
|
+
assertAiCapabilityCatalog(options.catalog);
|
|
63
|
+
const server = new McpServer({
|
|
64
|
+
name: options.serverName || `${options.catalog.appCode}-ai`,
|
|
65
|
+
version: options.serverVersion || '1.0.0',
|
|
66
|
+
}, {
|
|
67
|
+
instructions: 'Use read tools for bounded queries. Mutation tools only create a preview; call openxiangda.ai.confirm with the returned previewId after the user explicitly confirms the summary.',
|
|
68
|
+
});
|
|
69
|
+
server.registerResource('ai-capability-catalog', APPLICATION_AI_MCP_CATALOG_URI, { title: `${options.catalog.appName} AI Catalog`, mimeType: 'application/json' }, async (resourceUri) => ({
|
|
70
|
+
contents: [
|
|
71
|
+
{
|
|
72
|
+
uri: resourceUri.href,
|
|
73
|
+
mimeType: 'application/json',
|
|
74
|
+
text: JSON.stringify(options.catalog, null, 2),
|
|
75
|
+
},
|
|
76
|
+
],
|
|
77
|
+
}));
|
|
78
|
+
let hasMutation = false;
|
|
79
|
+
for (const capability of options.catalog.capabilities) {
|
|
80
|
+
const isRead = capability.risk === 'read';
|
|
81
|
+
const toolName = isRead ? capability.code : `${capability.code}.preview`;
|
|
82
|
+
hasMutation ||= !isRead;
|
|
83
|
+
server.registerTool(toolName, {
|
|
84
|
+
title: isRead ? capability.name : `${capability.name}预览`,
|
|
85
|
+
description: isRead
|
|
86
|
+
? capability.description
|
|
87
|
+
: `${capability.description}。此工具只生成预览,不会修改数据。`,
|
|
88
|
+
inputSchema: fromJsonSchema(capability.inputSchema),
|
|
89
|
+
annotations: {
|
|
90
|
+
readOnlyHint: true,
|
|
91
|
+
destructiveHint: !isRead && capability.risk === 'destructive',
|
|
92
|
+
idempotentHint: isRead,
|
|
93
|
+
},
|
|
94
|
+
}, async (input) => {
|
|
95
|
+
const result = isRead
|
|
96
|
+
? await options.executor.executeRead(capability, input)
|
|
97
|
+
: await options.executor.createPreview(capability, input);
|
|
98
|
+
return aiToolResult(result);
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
if (hasMutation) {
|
|
102
|
+
server.registerTool(APPLICATION_AI_MCP_CONFIRM_TOOL, {
|
|
103
|
+
title: '确认并执行 AI 预览',
|
|
104
|
+
description: '仅在用户明确确认预览摘要后调用。previewId 由应用预览工具返回,并由宿主重新校验当前用户、权限、版本和幂等性。',
|
|
105
|
+
inputSchema: z.object({ previewId: z.string().min(1) }),
|
|
106
|
+
annotations: {
|
|
107
|
+
readOnlyHint: false,
|
|
108
|
+
destructiveHint: true,
|
|
109
|
+
idempotentHint: false,
|
|
110
|
+
},
|
|
111
|
+
}, async (input) => aiToolResult(await options.executor.confirmPreview(input.previewId)));
|
|
112
|
+
}
|
|
113
|
+
return server;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Build the platform-level AI facade from the same per-application Catalogs.
|
|
117
|
+
* The aggregator only routes tools to the owning application executor; it
|
|
118
|
+
* never merges permissions or creates a second data/auth boundary.
|
|
119
|
+
*/
|
|
120
|
+
export function createAggregatedAiMcpServer(options) {
|
|
121
|
+
if (!Array.isArray(options.applications) || options.applications.length === 0) {
|
|
122
|
+
throw new Error('AI_APPLICATIONS_REQUIRED');
|
|
123
|
+
}
|
|
124
|
+
const entries = options.applications.map(entry => {
|
|
125
|
+
assertAiCapabilityCatalog(entry.catalog);
|
|
126
|
+
return entry;
|
|
127
|
+
});
|
|
128
|
+
const capabilities = new Map();
|
|
129
|
+
for (const entry of entries) {
|
|
130
|
+
for (const capability of entry.catalog.capabilities) {
|
|
131
|
+
if (capabilities.has(capability.code)) {
|
|
132
|
+
throw new Error(`AI_CAPABILITY_CODE_CONFLICT:${capability.code}`);
|
|
133
|
+
}
|
|
134
|
+
capabilities.set(capability.code, { capability, executor: entry.executor });
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
const server = new McpServer({
|
|
138
|
+
name: options.serverName || 'openxiangda-ai',
|
|
139
|
+
version: options.serverVersion || '1.0.0',
|
|
140
|
+
}, {
|
|
141
|
+
instructions: 'Tools are grouped by application capability code. Read tools execute with the current application context; mutation tools only create a preview. Ask for explicit user confirmation before openxiangda.ai.confirm.',
|
|
142
|
+
});
|
|
143
|
+
server.registerResource('ai-capability-catalog', AGGREGATED_AI_MCP_CATALOG_URI, { title: 'OpenXiangda AI Catalog', mimeType: 'application/json' }, async (resourceUri) => ({
|
|
144
|
+
contents: [
|
|
145
|
+
{
|
|
146
|
+
uri: resourceUri.href,
|
|
147
|
+
mimeType: 'application/json',
|
|
148
|
+
text: JSON.stringify({
|
|
149
|
+
schemaVersion: 'openxiangda.ai-capability-set/v1',
|
|
150
|
+
applications: entries.map(entry => entry.catalog),
|
|
151
|
+
}, null, 2),
|
|
152
|
+
},
|
|
153
|
+
],
|
|
154
|
+
}));
|
|
155
|
+
const previewOwners = new Map();
|
|
156
|
+
let hasMutation = false;
|
|
157
|
+
for (const { capability, executor } of capabilities.values()) {
|
|
158
|
+
const isRead = capability.risk === 'read';
|
|
159
|
+
hasMutation ||= !isRead;
|
|
160
|
+
const toolName = isRead ? capability.code : `${capability.code}.preview`;
|
|
161
|
+
server.registerTool(toolName, {
|
|
162
|
+
title: isRead ? capability.name : `${capability.name}预览`,
|
|
163
|
+
description: isRead
|
|
164
|
+
? capability.description
|
|
165
|
+
: `${capability.description}。此工具只生成预览,不会修改数据。`,
|
|
166
|
+
inputSchema: fromJsonSchema(capability.inputSchema),
|
|
167
|
+
annotations: {
|
|
168
|
+
readOnlyHint: true,
|
|
169
|
+
destructiveHint: !isRead && capability.risk === 'destructive',
|
|
170
|
+
idempotentHint: isRead,
|
|
171
|
+
},
|
|
172
|
+
}, async (input) => {
|
|
173
|
+
const result = isRead
|
|
174
|
+
? await executor.executeRead(capability, input)
|
|
175
|
+
: await executor.createPreview(capability, input);
|
|
176
|
+
if (!isRead) {
|
|
177
|
+
const previewId = String(result?.previewId || '').trim();
|
|
178
|
+
if (previewId)
|
|
179
|
+
previewOwners.set(previewId, executor);
|
|
180
|
+
}
|
|
181
|
+
return aiToolResult(result);
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
if (hasMutation) {
|
|
185
|
+
server.registerTool(APPLICATION_AI_MCP_CONFIRM_TOOL, {
|
|
186
|
+
title: '确认并执行 AI 预览',
|
|
187
|
+
description: '仅在用户明确确认预览摘要后调用;平台按 previewId 路由回原应用执行器并重新校验当前用户权限。',
|
|
188
|
+
inputSchema: z.object({ previewId: z.string().min(1) }),
|
|
189
|
+
annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: false },
|
|
190
|
+
}, async (input) => {
|
|
191
|
+
const owner = previewOwners.get(input.previewId);
|
|
192
|
+
if (!owner)
|
|
193
|
+
throw new Error('AI_PREVIEW_NOT_FOUND');
|
|
194
|
+
previewOwners.delete(input.previewId);
|
|
195
|
+
return aiToolResult(await owner.confirmPreview(input.previewId));
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
return server;
|
|
199
|
+
}
|
|
200
|
+
function aiToolResult(result) {
|
|
201
|
+
return {
|
|
202
|
+
content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
|
|
203
|
+
structuredContent: (result || {}),
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
async function executeDataApiOperation(dataApi, capability, input) {
|
|
207
|
+
const resourceCode = capability.resources[0];
|
|
208
|
+
if (!resourceCode)
|
|
209
|
+
throw new Error('AI_RESOURCE_REQUIRED');
|
|
210
|
+
switch (capability.operation) {
|
|
211
|
+
case 'query':
|
|
212
|
+
return await dataApi.query(resourceCode, input);
|
|
213
|
+
case 'get':
|
|
214
|
+
return await dataApi.get(resourceCode, stringInput(input, 'id'));
|
|
215
|
+
case 'create':
|
|
216
|
+
return await dataApi.create(resourceCode, input);
|
|
217
|
+
case 'update':
|
|
218
|
+
return await dataApi.update(resourceCode, stringInput(input, 'id'), {
|
|
219
|
+
expectedRevision: integerInput(input, 'expectedRevision'),
|
|
220
|
+
data: recordInput(input, 'data'),
|
|
221
|
+
});
|
|
222
|
+
case 'delete':
|
|
223
|
+
return await dataApi.delete(resourceCode, stringInput(input, 'id'), integerInput(input, 'expectedRevision'));
|
|
224
|
+
default:
|
|
225
|
+
throw new Error('AI_OPERATION_NOT_SUPPORTED_BY_DATA_API');
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
function stringInput(input, key) {
|
|
229
|
+
const value = input[key];
|
|
230
|
+
if (typeof value !== 'string' || value.length === 0) {
|
|
231
|
+
throw new Error(`AI_INPUT_${key.toUpperCase()}_REQUIRED`);
|
|
232
|
+
}
|
|
233
|
+
return value;
|
|
234
|
+
}
|
|
235
|
+
function integerInput(input, key) {
|
|
236
|
+
const value = input[key];
|
|
237
|
+
if (typeof value !== 'number' || !Number.isSafeInteger(value) || value < 1) {
|
|
238
|
+
throw new Error(`AI_INPUT_${key.toUpperCase()}_REQUIRED`);
|
|
239
|
+
}
|
|
240
|
+
return value;
|
|
241
|
+
}
|
|
242
|
+
function recordInput(input, key) {
|
|
243
|
+
const value = input[key];
|
|
244
|
+
if (!value || typeof value !== 'object' || Array.isArray(value)) {
|
|
245
|
+
throw new Error(`AI_INPUT_${key.toUpperCase()}_REQUIRED`);
|
|
246
|
+
}
|
|
247
|
+
return value;
|
|
248
|
+
}
|
|
5
249
|
export const MCP_RESOURCE_URIS = [
|
|
6
250
|
'openxiangda://workspace/context',
|
|
7
251
|
'openxiangda://workspace/contracts',
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "openxiangda-mcp",
|
|
3
|
-
"version": "2.0.0-alpha.
|
|
3
|
+
"version": "2.0.0-alpha.37",
|
|
4
4
|
"description": "Structured AI entrypoint for OpenXiangda 2.0 application development.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -17,7 +17,8 @@
|
|
|
17
17
|
],
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"@modelcontextprotocol/server": "2.0.0",
|
|
20
|
-
"openxiangda-
|
|
20
|
+
"openxiangda-contracts": "2.0.0-alpha.29",
|
|
21
|
+
"openxiangda-devkit-core": "2.0.0-alpha.37",
|
|
21
22
|
"zod": "4.4.3"
|
|
22
23
|
},
|
|
23
24
|
"devDependencies": {
|