@edicarlos.lds/businessmap-mcp 3.0.0 → 4.0.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/CONTRIBUTING.md +73 -0
- package/README.md +35 -15
- package/SECURITY.md +36 -0
- package/dist/client/businessmap-client.d.ts +0 -1
- package/dist/client/businessmap-client.d.ts.map +1 -1
- package/dist/client/businessmap-client.js +39 -23
- package/dist/client/businessmap-client.js.map +1 -1
- package/dist/client/businessmap-error.d.ts +16 -0
- package/dist/client/businessmap-error.d.ts.map +1 -0
- package/dist/client/businessmap-error.js +43 -0
- package/dist/client/businessmap-error.js.map +1 -0
- package/dist/client/modules/board-client.d.ts.map +1 -1
- package/dist/client/modules/board-client.js +16 -2
- package/dist/client/modules/board-client.js.map +1 -1
- package/dist/client/modules/card-client.d.ts +7 -5
- package/dist/client/modules/card-client.d.ts.map +1 -1
- package/dist/client/modules/card-client.js +40 -13
- package/dist/client/modules/card-client.js.map +1 -1
- package/dist/client/modules/index.d.ts +0 -3
- package/dist/client/modules/index.d.ts.map +1 -1
- package/dist/client/modules/index.js +0 -1
- package/dist/client/modules/index.js.map +1 -1
- package/dist/config/environment.d.ts +3 -0
- package/dist/config/environment.d.ts.map +1 -1
- package/dist/config/environment.js +64 -3
- package/dist/config/environment.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -9
- package/dist/index.js.map +1 -1
- package/dist/schemas/board-schemas.d.ts +6 -6
- package/dist/schemas/board-schemas.d.ts.map +1 -1
- package/dist/schemas/board-schemas.js +6 -2
- package/dist/schemas/board-schemas.js.map +1 -1
- package/dist/schemas/card-schemas.d.ts +67 -48
- package/dist/schemas/card-schemas.d.ts.map +1 -1
- package/dist/schemas/card-schemas.js +23 -0
- package/dist/schemas/card-schemas.js.map +1 -1
- package/dist/schemas/common-schemas.d.ts +4 -4
- package/dist/server/http.d.ts +7 -1
- package/dist/server/http.d.ts.map +1 -1
- package/dist/server/http.js +140 -31
- package/dist/server/http.js.map +1 -1
- package/dist/server/mcp-server.d.ts.map +1 -1
- package/dist/server/mcp-server.js +1 -1
- package/dist/server/mcp-server.js.map +1 -1
- package/dist/server/prompts/base-prompt.d.ts +12 -0
- package/dist/server/prompts/base-prompt.d.ts.map +1 -1
- package/dist/server/prompts/base-prompt.js +9 -1
- package/dist/server/prompts/base-prompt.js.map +1 -1
- package/dist/server/prompts/board-prompts.d.ts.map +1 -1
- package/dist/server/prompts/board-prompts.js +6 -5
- package/dist/server/prompts/board-prompts.js.map +1 -1
- package/dist/server/prompts/card-prompts.d.ts.map +1 -1
- package/dist/server/prompts/card-prompts.js +2 -1
- package/dist/server/prompts/card-prompts.js.map +1 -1
- package/dist/server/prompts/index.d.ts +0 -1
- package/dist/server/prompts/index.d.ts.map +1 -1
- package/dist/server/prompts/index.js.map +1 -1
- package/dist/server/prompts/workspace-prompts.d.ts.map +1 -1
- package/dist/server/prompts/workspace-prompts.js +4 -3
- package/dist/server/prompts/workspace-prompts.js.map +1 -1
- package/dist/server/resources/card-resources.d.ts.map +1 -1
- package/dist/server/resources/card-resources.js +45 -3
- package/dist/server/resources/card-resources.js.map +1 -1
- package/dist/server/tools/base-tool.d.ts +5 -0
- package/dist/server/tools/base-tool.d.ts.map +1 -1
- package/dist/server/tools/base-tool.js +89 -6
- package/dist/server/tools/base-tool.js.map +1 -1
- package/dist/server/tools/board-tools.d.ts +0 -6
- package/dist/server/tools/board-tools.d.ts.map +1 -1
- package/dist/server/tools/board-tools.js +35 -72
- package/dist/server/tools/board-tools.js.map +1 -1
- package/dist/server/tools/card-tools.d.ts.map +1 -1
- package/dist/server/tools/card-tools.js +99 -11
- package/dist/server/tools/card-tools.js.map +1 -1
- package/dist/server/tools/doc-tools.d.ts +2 -1
- package/dist/server/tools/doc-tools.d.ts.map +1 -1
- package/dist/server/tools/doc-tools.js +47 -20
- package/dist/server/tools/doc-tools.js.map +1 -1
- package/dist/server/tools/index.d.ts +0 -2
- package/dist/server/tools/index.d.ts.map +1 -1
- package/dist/server/tools/index.js +0 -1
- package/dist/server/tools/index.js.map +1 -1
- package/dist/server/tools/user-tools.d.ts.map +1 -1
- package/dist/server/tools/user-tools.js +2 -1
- package/dist/server/tools/user-tools.js.map +1 -1
- package/dist/types/base.d.ts +1 -0
- package/dist/types/base.d.ts.map +1 -1
- package/dist/types/card.d.ts +10 -5
- package/dist/types/card.d.ts.map +1 -1
- package/dist/utils/logger.d.ts +7 -12
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +73 -10
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/request-context.d.ts +7 -0
- package/dist/utils/request-context.d.ts.map +1 -0
- package/dist/utils/request-context.js +9 -0
- package/dist/utils/request-context.js.map +1 -0
- package/docs/LOGGING.md +15 -0
- package/docs/MIDDLEWARE.md +26 -4
- package/docs/TOOLS.md +116 -96
- package/package.json +22 -17
package/dist/server/http.js
CHANGED
|
@@ -4,7 +4,7 @@ import cors from 'cors';
|
|
|
4
4
|
import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js';
|
|
5
5
|
import { config } from '../config/environment.js';
|
|
6
6
|
import { logger } from '../utils/logger.js';
|
|
7
|
-
|
|
7
|
+
import { runWithRequestContext } from '../utils/request-context.js';
|
|
8
8
|
async function closeSession(id, session) {
|
|
9
9
|
try {
|
|
10
10
|
await session.server.server.close();
|
|
@@ -14,19 +14,73 @@ async function closeSession(id, session) {
|
|
|
14
14
|
}
|
|
15
15
|
logger.info(`MCP session closed: ${id}`);
|
|
16
16
|
}
|
|
17
|
+
async function closeUninitializedServer(server) {
|
|
18
|
+
try {
|
|
19
|
+
await server.server.close();
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
logger.warn('Error while cleaning up uninitialized MCP server:', error);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
async function cleanupFailedSession(id, server, sessions) {
|
|
26
|
+
const session = id ? sessions.get(id) : undefined;
|
|
27
|
+
if (id && session) {
|
|
28
|
+
sessions.delete(id);
|
|
29
|
+
await closeSession(id, session);
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
await closeUninitializedServer(server);
|
|
33
|
+
}
|
|
34
|
+
function closeHttpListener(server) {
|
|
35
|
+
if (!server.listening) {
|
|
36
|
+
return Promise.resolve();
|
|
37
|
+
}
|
|
38
|
+
return new Promise((resolve, reject) => {
|
|
39
|
+
server.close((error) => {
|
|
40
|
+
if (error) {
|
|
41
|
+
reject(error);
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
resolve();
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
function getCorrelationId(value) {
|
|
49
|
+
const candidate = Array.isArray(value) ? value[0] : value;
|
|
50
|
+
return candidate && /^[A-Za-z0-9._:-]{1,128}$/.test(candidate) ? candidate : randomUUID();
|
|
51
|
+
}
|
|
17
52
|
export async function startHttpServer(options = {}) {
|
|
18
53
|
const app = express();
|
|
54
|
+
const bodyLimit = options.bodyLimit ?? config.server.bodyLimit;
|
|
55
|
+
const maxSessions = options.maxSessions ?? config.server.maxSessions;
|
|
56
|
+
const sessionTimeoutMs = options.sessionTimeoutMs ?? config.server.sessionTimeoutMs;
|
|
57
|
+
if (!Number.isSafeInteger(maxSessions) || maxSessions <= 0) {
|
|
58
|
+
throw new TypeError('maxSessions must be a positive integer');
|
|
59
|
+
}
|
|
60
|
+
if (!Number.isSafeInteger(sessionTimeoutMs) || sessionTimeoutMs <= 0) {
|
|
61
|
+
throw new TypeError('sessionTimeoutMs must be a positive integer');
|
|
62
|
+
}
|
|
19
63
|
// Disable X-Powered-By header to prevent disclosing version/framework info
|
|
20
64
|
app.disable('x-powered-by');
|
|
21
65
|
// Parse JSON bodies (required for StreamableHTTP transport)
|
|
22
|
-
app.use(express.json());
|
|
66
|
+
app.use(express.json({ limit: bodyLimit }));
|
|
23
67
|
// Enable CORS with configured allowed origins
|
|
24
68
|
app.use(cors({
|
|
25
69
|
origin: config.server.allowedOrigins,
|
|
26
70
|
methods: ['GET', 'POST', 'DELETE', 'OPTIONS'],
|
|
27
|
-
allowedHeaders: ['Content-Type', 'mcp-session-id', 'last-event-id'],
|
|
28
|
-
exposedHeaders: ['mcp-session-id'],
|
|
71
|
+
allowedHeaders: ['Content-Type', 'mcp-session-id', 'last-event-id', 'x-request-id'],
|
|
72
|
+
exposedHeaders: ['mcp-session-id', 'x-request-id'],
|
|
29
73
|
}));
|
|
74
|
+
// Attach a bounded correlation ID before custom middleware and MCP handling.
|
|
75
|
+
app.use((req, res, next) => {
|
|
76
|
+
const correlationId = getCorrelationId(req.headers['x-request-id']);
|
|
77
|
+
const sessionId = req.headers['mcp-session-id'];
|
|
78
|
+
res.setHeader('x-request-id', correlationId);
|
|
79
|
+
runWithRequestContext({
|
|
80
|
+
correlationId,
|
|
81
|
+
...(typeof sessionId === 'string' && { sessionId }),
|
|
82
|
+
}, next);
|
|
83
|
+
});
|
|
30
84
|
// Apply custom middlewares (e.g. for authentication/authorization)
|
|
31
85
|
if (options.middlewares && options.middlewares.length > 0) {
|
|
32
86
|
options.middlewares.forEach((middleware) => {
|
|
@@ -41,11 +95,13 @@ export async function startHttpServer(options = {}) {
|
|
|
41
95
|
next();
|
|
42
96
|
});
|
|
43
97
|
const sessions = new Map();
|
|
98
|
+
let pendingSessions = 0;
|
|
99
|
+
let isShuttingDown = false;
|
|
44
100
|
// Periodic cleanup of inactive sessions
|
|
45
101
|
const cleanupInterval = setInterval(async () => {
|
|
46
102
|
const now = Date.now();
|
|
47
103
|
for (const [id, session] of sessions) {
|
|
48
|
-
if (now - session.lastActivityAt >
|
|
104
|
+
if (now - session.lastActivityAt > sessionTimeoutMs) {
|
|
49
105
|
logger.info(`Closing idle MCP session (timeout): ${id}`);
|
|
50
106
|
sessions.delete(id);
|
|
51
107
|
await closeSession(id, session);
|
|
@@ -55,43 +111,68 @@ export async function startHttpServer(options = {}) {
|
|
|
55
111
|
// Prevent the interval from blocking process exit
|
|
56
112
|
cleanupInterval.unref();
|
|
57
113
|
const handleNewSession = async (req, res, logResponse, sendError) => {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
},
|
|
67
|
-
onsessionclosed: async (id) => {
|
|
68
|
-
const session = sessions.get(id);
|
|
69
|
-
sessions.delete(id);
|
|
70
|
-
if (session) {
|
|
71
|
-
await closeSession(id, session);
|
|
72
|
-
}
|
|
73
|
-
},
|
|
74
|
-
allowedHosts: config.server.allowedHosts,
|
|
75
|
-
allowedOrigins: config.server.allowedOrigins,
|
|
76
|
-
enableDnsRebindingProtection: true,
|
|
77
|
-
});
|
|
114
|
+
if (sessions.size + pendingSessions >= maxSessions) {
|
|
115
|
+
sendError(503, 'HTTP session capacity reached');
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
pendingSessions++;
|
|
119
|
+
let reservationReleased = false;
|
|
120
|
+
let initializedSessionId;
|
|
121
|
+
let sessionServer;
|
|
78
122
|
try {
|
|
123
|
+
const module = await import('./mcp-server.js');
|
|
124
|
+
sessionServer = new module.BusinessMapMcpServer();
|
|
125
|
+
// New session: create a fresh transport
|
|
126
|
+
const transport = new StreamableHTTPServerTransport({
|
|
127
|
+
sessionIdGenerator: () => randomUUID(),
|
|
128
|
+
onsessioninitialized: (id) => {
|
|
129
|
+
initializedSessionId = id;
|
|
130
|
+
if (!reservationReleased) {
|
|
131
|
+
pendingSessions--;
|
|
132
|
+
reservationReleased = true;
|
|
133
|
+
}
|
|
134
|
+
sessions.set(id, { transport, server: sessionServer, lastActivityAt: Date.now() });
|
|
135
|
+
logger.info(`New MCP session initialized: ${id}`);
|
|
136
|
+
},
|
|
137
|
+
onsessionclosed: async (id) => {
|
|
138
|
+
const session = sessions.get(id);
|
|
139
|
+
sessions.delete(id);
|
|
140
|
+
if (session) {
|
|
141
|
+
await closeSession(id, session);
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
allowedHosts: config.server.allowedHosts,
|
|
145
|
+
allowedOrigins: config.server.allowedOrigins,
|
|
146
|
+
enableDnsRebindingProtection: true,
|
|
147
|
+
});
|
|
79
148
|
await sessionServer.server.connect(transport);
|
|
80
149
|
await transport.handleRequest(req, res, req.body);
|
|
81
150
|
logResponse(res.statusCode);
|
|
151
|
+
if (initializedSessionId && isShuttingDown) {
|
|
152
|
+
const session = sessions.get(initializedSessionId);
|
|
153
|
+
sessions.delete(initializedSessionId);
|
|
154
|
+
if (session) {
|
|
155
|
+
await closeSession(initializedSessionId, session);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
else if (!initializedSessionId) {
|
|
159
|
+
await closeUninitializedServer(sessionServer);
|
|
160
|
+
}
|
|
82
161
|
}
|
|
83
162
|
catch (error) {
|
|
84
163
|
logger.error('Failed to handle new MCP session:', error);
|
|
85
|
-
|
|
86
|
-
await sessionServer
|
|
87
|
-
}
|
|
88
|
-
catch (closeError) {
|
|
89
|
-
logger.warn('Error while cleaning up failed session:', closeError);
|
|
164
|
+
if (sessionServer) {
|
|
165
|
+
await cleanupFailedSession(initializedSessionId, sessionServer, sessions);
|
|
90
166
|
}
|
|
91
167
|
if (!res.headersSent) {
|
|
92
168
|
sendError(500, 'Failed to initialize MCP session');
|
|
93
169
|
}
|
|
94
170
|
}
|
|
171
|
+
finally {
|
|
172
|
+
if (!reservationReleased) {
|
|
173
|
+
pendingSessions--;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
95
176
|
};
|
|
96
177
|
const handleExistingSession = async (req, res, sessionId, logResponse, sendError) => {
|
|
97
178
|
const session = sessions.get(sessionId);
|
|
@@ -124,6 +205,10 @@ export async function startHttpServer(options = {}) {
|
|
|
124
205
|
logResponse(statusCode);
|
|
125
206
|
res.status(statusCode).json({ error: message });
|
|
126
207
|
};
|
|
208
|
+
if (isShuttingDown) {
|
|
209
|
+
sendError(503, 'Server is shutting down');
|
|
210
|
+
return;
|
|
211
|
+
}
|
|
127
212
|
if (req.method === 'POST' && !sessionId) {
|
|
128
213
|
await handleNewSession(req, res, logResponse, sendError);
|
|
129
214
|
return;
|
|
@@ -142,17 +227,41 @@ export async function startHttpServer(options = {}) {
|
|
|
142
227
|
app.get('/health', (_req, res) => {
|
|
143
228
|
res.json({ status: 'ok', version: config.server.version });
|
|
144
229
|
});
|
|
230
|
+
app.get('/ready', (_req, res) => {
|
|
231
|
+
const hasCapacity = sessions.size + pendingSessions < maxSessions;
|
|
232
|
+
if (isShuttingDown || !hasCapacity) {
|
|
233
|
+
res.status(503).json({ status: 'not_ready', version: config.server.version });
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
res.json({ status: 'ready', version: config.server.version });
|
|
237
|
+
});
|
|
145
238
|
const port = config.server.port;
|
|
146
239
|
const server = app.listen(port, () => {
|
|
147
240
|
logger.success(`HTTP Server running on port ${port}`);
|
|
148
241
|
logger.info(`MCP Endpoint: http://localhost:${port}/mcp`);
|
|
149
242
|
logger.info(`Health Check: http://localhost:${port}/health`);
|
|
243
|
+
logger.info(`Readiness Check: http://localhost:${port}/ready`);
|
|
150
244
|
logger.info(`Allowed origins: ${config.server.allowedOrigins.join(', ')}`);
|
|
151
245
|
logger.info(`Allowed hosts: ${config.server.allowedHosts.join(', ')}`);
|
|
152
246
|
});
|
|
153
247
|
server.on('close', () => {
|
|
154
248
|
clearInterval(cleanupInterval);
|
|
155
249
|
});
|
|
156
|
-
|
|
250
|
+
let shutdownPromise;
|
|
251
|
+
const shutdown = () => {
|
|
252
|
+
shutdownPromise ??= (async () => {
|
|
253
|
+
isShuttingDown = true;
|
|
254
|
+
clearInterval(cleanupInterval);
|
|
255
|
+
const closeServer = closeHttpListener(server);
|
|
256
|
+
const activeSessions = [...sessions.entries()];
|
|
257
|
+
sessions.clear();
|
|
258
|
+
await Promise.allSettled(activeSessions.map(([id, session]) => closeSession(id, session)));
|
|
259
|
+
server.closeAllConnections();
|
|
260
|
+
await closeServer;
|
|
261
|
+
logger.info('HTTP server shut down');
|
|
262
|
+
})();
|
|
263
|
+
return shutdownPromise;
|
|
264
|
+
};
|
|
265
|
+
return Object.assign(server, { shutdown });
|
|
157
266
|
}
|
|
158
267
|
//# sourceMappingURL=http.js.map
|
package/dist/server/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/server/http.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AAEnG,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AAQxD,KAAK,UAAU,YAAY,CAAC,EAAU,EAAE,OAAuB;IAC7D,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;AAC3C,CAAC;AAMD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,UAA6B,EAAE;IACnE,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IAEtB,2EAA2E;IAC3E,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAE5B,4DAA4D;IAC5D,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAExB,8CAA8C;IAC9C,GAAG,CAAC,GAAG,CACL,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc;QACpC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC7C,cAAc,EAAE,CAAC,cAAc,EAAE,gBAAgB,EAAE,eAAe,CAAC;QACnE,cAAc,EAAE,CAAC,gBAAgB,CAAC;KACnC,CAAC,CACH,CAAC;IAEF,mEAAmE;IACnE,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACzC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,6BAA6B;IAC7B,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QAC1B,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAuB,CAAC;QACtE,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAClE,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,GAAG,aAAa,EAAE,CAAC,CAAC;QAC1D,IAAI,EAAE,CAAC;IACT,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;IAEnD,wCAAwC;IACxC,MAAM,eAAe,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;YACrC,IAAI,GAAG,GAAG,OAAO,CAAC,cAAc,GAAG,kBAAkB,EAAE,CAAC;gBACtD,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE,EAAE,CAAC,CAAC;gBACzD,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACpB,MAAM,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,qBAAqB;IAEjC,kDAAkD;IAClD,eAAe,CAAC,KAAK,EAAE,CAAC;IAExB,MAAM,gBAAgB,GAAG,KAAK,EAC5B,GAAoB,EACpB,GAAqB,EACrB,WAAyC,EACzC,SAAwD,EACxD,EAAE;QACF,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QACjE,MAAM,aAAa,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAEjD,wCAAwC;QACxC,MAAM,SAAS,GAAG,IAAI,6BAA6B,CAAC;YAClD,kBAAkB,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE;YACtC,oBAAoB,EAAE,CAAC,EAAE,EAAE,EAAE;gBAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACnF,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,EAAE,CAAC,CAAC;YACpD,CAAC;YACD,eAAe,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;gBAC5B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACpB,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC;YACD,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY;YACxC,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc;YAC5C,4BAA4B,EAAE,IAAI;SACnC,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC9C,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAClD,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;YACzD,IAAI,CAAC;gBACH,MAAM,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACrC,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,IAAI,CAAC,yCAAyC,EAAE,UAAU,CAAC,CAAC;YACrE,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBACrB,SAAS,CAAC,GAAG,EAAE,kCAAkC,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,KAAK,EACjC,GAAoB,EACpB,GAAqB,EACrB,SAAiB,EACjB,WAAyC,EACzC,SAAwD,EACxD,EAAE;QACF,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,SAAS,CAAC,GAAG,EAAE,sBAAsB,SAAS,EAAE,CAAC,CAAC;YAClD,OAAO;QACT,CAAC;QACD,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC1D,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,sCAAsC,SAAS,GAAG,EAAE,KAAK,CAAC,CAAC;YACxE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBACrB,SAAS,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,sFAAsF;IACtF,MAAM,gBAAgB,GAAG,KAAK,EAC5B,GAAoB,EACpB,GAAqB,EACrB,EAAE;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAuB,CAAC;QAEtE,MAAM,WAAW,GAAG,CAAC,UAAkB,EAAE,EAAE;YACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,MAAM,CAAC,KAAK,CACV,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,OAAO,UAAU,KAAK,QAAQ,MAAM,aAAa,EAAE,CAC7E,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,SAAS,GAAG,CAAC,UAAkB,EAAE,OAAe,EAAE,EAAE;YACxD,WAAW,CAAC,UAAU,CAAC,CAAC;YACxB,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC;QAEF,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACxC,MAAM,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QAED,mBAAmB;QACnB,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QAED,SAAS,CAAC,GAAG,EAAE,+BAA+B,CAAC,CAAC;IAClD,CAAC,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAClC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACnC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAErC,wBAAwB;IACxB,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QAC/B,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;IAEhC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;QACnC,MAAM,CAAC,OAAO,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;QACtD,MAAM,CAAC,IAAI,CAAC,kCAAkC,IAAI,MAAM,CAAC,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,kCAAkC,IAAI,SAAS,CAAC,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3E,MAAM,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QACtB,aAAa,CAAC,eAAe,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/server/http.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AAEnG,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAQpE,KAAK,UAAU,YAAY,CAAC,EAAU,EAAE,OAAuB;IAC7D,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,MAA4B;IAClE,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,mDAAmD,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,EAAsB,EACtB,MAA4B,EAC5B,QAAqC;IAErC,MAAM,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClD,IAAI,EAAE,IAAI,OAAO,EAAE,CAAC;QAClB,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpB,MAAM,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAChC,OAAO;IACT,CAAC;IACD,MAAM,wBAAwB,CAAC,MAAM,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAc;IACvC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IACD,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACrB,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,CAAC,KAAK,CAAC,CAAC;gBACd,OAAO;YACT,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAoC;IAC5D,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1D,OAAO,SAAS,IAAI,0BAA0B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;AAC5F,CAAC;AAaD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,UAA6B,EAAE;IACnE,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IACtB,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;IAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;IACrE,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;IACpF,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,SAAS,CAAC,wCAAwC,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,gBAAgB,IAAI,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;IACrE,CAAC;IAED,2EAA2E;IAC3E,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAE5B,4DAA4D;IAC5D,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAE5C,8CAA8C;IAC9C,GAAG,CAAC,GAAG,CACL,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc;QACpC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC7C,cAAc,EAAE,CAAC,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAAE,cAAc,CAAC;QACnF,cAAc,EAAE,CAAC,gBAAgB,EAAE,cAAc,CAAC;KACnD,CAAC,CACH,CAAC;IAEF,6EAA6E;IAC7E,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACzB,MAAM,aAAa,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QACpE,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAChD,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;QAC7C,qBAAqB,CACnB;YACE,aAAa;YACb,GAAG,CAAC,OAAO,SAAS,KAAK,QAAQ,IAAI,EAAE,SAAS,EAAE,CAAC;SACpD,EACD,IAAI,CACL,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,mEAAmE;IACnE,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACzC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,6BAA6B;IAC7B,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QAC1B,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAuB,CAAC;QACtE,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAClE,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,GAAG,aAAa,EAAE,CAAC,CAAC;QAC1D,IAAI,EAAE,CAAC;IACT,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;IACnD,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,IAAI,cAAc,GAAG,KAAK,CAAC;IAE3B,wCAAwC;IACxC,MAAM,eAAe,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;YACrC,IAAI,GAAG,GAAG,OAAO,CAAC,cAAc,GAAG,gBAAgB,EAAE,CAAC;gBACpD,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE,EAAE,CAAC,CAAC;gBACzD,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACpB,MAAM,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,qBAAqB;IAEjC,kDAAkD;IAClD,eAAe,CAAC,KAAK,EAAE,CAAC;IAExB,MAAM,gBAAgB,GAAG,KAAK,EAC5B,GAAoB,EACpB,GAAqB,EACrB,WAAyC,EACzC,SAAwD,EACxD,EAAE;QACF,IAAI,QAAQ,CAAC,IAAI,GAAG,eAAe,IAAI,WAAW,EAAE,CAAC;YACnD,SAAS,CAAC,GAAG,EAAE,+BAA+B,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QAED,eAAe,EAAE,CAAC;QAClB,IAAI,mBAAmB,GAAG,KAAK,CAAC;QAChC,IAAI,oBAAwC,CAAC;QAC7C,IAAI,aAA+C,CAAC;QACpD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAC/C,aAAa,GAAG,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;YAElD,wCAAwC;YACxC,MAAM,SAAS,GAAG,IAAI,6BAA6B,CAAC;gBAClD,kBAAkB,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE;gBACtC,oBAAoB,EAAE,CAAC,EAAE,EAAE,EAAE;oBAC3B,oBAAoB,GAAG,EAAE,CAAC;oBAC1B,IAAI,CAAC,mBAAmB,EAAE,CAAC;wBACzB,eAAe,EAAE,CAAC;wBAClB,mBAAmB,GAAG,IAAI,CAAC;oBAC7B,CAAC;oBACD,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,aAAc,EAAE,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACpF,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,EAAE,CAAC,CAAC;gBACpD,CAAC;gBACD,eAAe,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;oBAC5B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACpB,IAAI,OAAO,EAAE,CAAC;wBACZ,MAAM,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;oBAClC,CAAC;gBACH,CAAC;gBACD,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY;gBACxC,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc;gBAC5C,4BAA4B,EAAE,IAAI;aACnC,CAAC,CAAC;YAEH,MAAM,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC9C,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAClD,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAE5B,IAAI,oBAAoB,IAAI,cAAc,EAAE,CAAC;gBAC3C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;gBACnD,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;gBACtC,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,YAAY,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;gBACpD,CAAC;YACH,CAAC;iBAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACjC,MAAM,wBAAwB,CAAC,aAAa,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;YACzD,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,oBAAoB,CAAC,oBAAoB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;YAC5E,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBACrB,SAAS,CAAC,GAAG,EAAE,kCAAkC,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACzB,eAAe,EAAE,CAAC;YACpB,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,KAAK,EACjC,GAAoB,EACpB,GAAqB,EACrB,SAAiB,EACjB,WAAyC,EACzC,SAAwD,EACxD,EAAE;QACF,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,SAAS,CAAC,GAAG,EAAE,sBAAsB,SAAS,EAAE,CAAC,CAAC;YAClD,OAAO;QACT,CAAC;QACD,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC1D,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,sCAAsC,SAAS,GAAG,EAAE,KAAK,CAAC,CAAC;YACxE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBACrB,SAAS,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,sFAAsF;IACtF,MAAM,gBAAgB,GAAG,KAAK,EAC5B,GAAoB,EACpB,GAAqB,EACrB,EAAE;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAuB,CAAC;QAEtE,MAAM,WAAW,GAAG,CAAC,UAAkB,EAAE,EAAE;YACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,MAAM,CAAC,KAAK,CACV,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,OAAO,UAAU,KAAK,QAAQ,MAAM,aAAa,EAAE,CAC7E,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,SAAS,GAAG,CAAC,UAAkB,EAAE,OAAe,EAAE,EAAE;YACxD,WAAW,CAAC,UAAU,CAAC,CAAC;YACxB,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC;QAEF,IAAI,cAAc,EAAE,CAAC;YACnB,SAAS,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;YAC1C,OAAO;QACT,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACxC,MAAM,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QAED,mBAAmB;QACnB,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QAED,SAAS,CAAC,GAAG,EAAE,+BAA+B,CAAC,CAAC;IAClD,CAAC,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAClC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACnC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAErC,wBAAwB;IACxB,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QAC/B,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QAC9B,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,GAAG,eAAe,GAAG,WAAW,CAAC;QAClE,IAAI,cAAc,IAAI,CAAC,WAAW,EAAE,CAAC;YACnC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9E,OAAO;QACT,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;IAEhC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;QACnC,MAAM,CAAC,OAAO,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;QACtD,MAAM,CAAC,IAAI,CAAC,kCAAkC,IAAI,MAAM,CAAC,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,kCAAkC,IAAI,SAAS,CAAC,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC,qCAAqC,IAAI,QAAQ,CAAC,CAAC;QAC/D,MAAM,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3E,MAAM,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QACtB,aAAa,CAAC,eAAe,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,IAAI,eAA0C,CAAC;IAC/C,MAAM,QAAQ,GAAG,GAAkB,EAAE;QACnC,eAAe,KAAK,CAAC,KAAK,IAAI,EAAE;YAC9B,cAAc,GAAG,IAAI,CAAC;YACtB,aAAa,CAAC,eAAe,CAAC,CAAC;YAE/B,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAE9C,MAAM,cAAc,GAAG,CAAC,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YAC/C,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,OAAO,CAAC,UAAU,CACtB,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CACjE,CAAC;YAEF,MAAM,CAAC,mBAAmB,EAAE,CAAC;YAC7B,MAAM,WAAW,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACvC,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,eAAe,CAAC;IACzB,CAAC,CAAC;IAEF,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC7C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAyBpE,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;;IActD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAyBpE,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;;IActD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IASjC,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,YAAY;IAYpB,IAAI,MAAM,IAAI,SAAS,CAEtB;CACF"}
|
|
@@ -26,7 +26,7 @@ export class BusinessMapMcpServer {
|
|
|
26
26
|
}
|
|
27
27
|
catch (error) {
|
|
28
28
|
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
29
|
-
throw new Error(`Failed to initialize BusinessMap MCP Server: ${message}
|
|
29
|
+
throw new Error(`Failed to initialize BusinessMap MCP Server: ${message}`, { cause: error });
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
setupTools() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,OAAO,oBAAoB;IACd,SAAS,CAAY;IACrB,iBAAiB,CAAoB;IAEtD;QACE,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC;YAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;YACxB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;SAC/B,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACnE,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
|
+
import type { GetPromptResult } from '@modelcontextprotocol/sdk/types.js';
|
|
3
|
+
import { z } from 'zod/v3';
|
|
2
4
|
import { BusinessMapClient } from '../../client/businessmap-client.js';
|
|
3
5
|
/**
|
|
4
6
|
* Base interface for prompt handlers
|
|
@@ -11,4 +13,14 @@ export interface BasePromptHandler {
|
|
|
11
13
|
*/
|
|
12
14
|
registerPrompts(server: McpServer, client: BusinessMapClient): void;
|
|
13
15
|
}
|
|
16
|
+
/**
|
|
17
|
+
* Register a prompt through a non-generic signature. The SDK's registerPrompt infers
|
|
18
|
+
* callback types from the args schema, which makes TS recurse into the zod generics
|
|
19
|
+
* and blow up with TS2589; calling through this fixed signature avoids that.
|
|
20
|
+
*/
|
|
21
|
+
export declare function registerPrompt(server: McpServer, name: string, promptConfig: {
|
|
22
|
+
title: string;
|
|
23
|
+
description: string;
|
|
24
|
+
argsSchema: z.ZodRawShape;
|
|
25
|
+
}, callback: (args: Record<string, string>) => GetPromptResult): void;
|
|
14
26
|
//# sourceMappingURL=base-prompt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-prompt.d.ts","sourceRoot":"","sources":["../../../src/server/prompts/base-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACrE"}
|
|
1
|
+
{"version":3,"file":"base-prompt.d.ts","sourceRoot":"","sources":["../../../src/server/prompts/base-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACrE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,CAAC,CAAC,WAAW,CAAA;CAAE,EAC/E,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,eAAe,GAC1D,IAAI,CAON"}
|
|
@@ -1,2 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Register a prompt through a non-generic signature. The SDK's registerPrompt infers
|
|
3
|
+
* callback types from the args schema, which makes TS recurse into the zod generics
|
|
4
|
+
* and blow up with TS2589; calling through this fixed signature avoids that.
|
|
5
|
+
*/
|
|
6
|
+
export function registerPrompt(server, name, promptConfig, callback) {
|
|
7
|
+
const register = server.registerPrompt.bind(server);
|
|
8
|
+
register(name, promptConfig, callback);
|
|
9
|
+
}
|
|
2
10
|
//# sourceMappingURL=base-prompt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-prompt.js","sourceRoot":"","sources":["../../../src/server/prompts/base-prompt.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"base-prompt.js","sourceRoot":"","sources":["../../../src/server/prompts/base-prompt.ts"],"names":[],"mappings":"AAiBA;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAiB,EACjB,IAAY,EACZ,YAA+E,EAC/E,QAA2D;IAE3D,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAIzC,CAAC;IACV,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;AACzC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"board-prompts.d.ts","sourceRoot":"","sources":["../../../src/server/prompts/board-prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"board-prompts.d.ts","sourceRoot":"","sources":["../../../src/server/prompts/board-prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAkB,MAAM,kBAAkB,CAAC;AAErE,qBAAa,kBAAmB,YAAW,iBAAiB;IAC1D,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAKpE,OAAO,CAAC,+BAA+B;IAoDvC,OAAO,CAAC,2BAA2B;CAsDpC"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { z } from 'zod/v3';
|
|
2
|
+
import { registerPrompt } from './base-prompt.js';
|
|
2
3
|
export class BoardPromptHandler {
|
|
3
4
|
registerPrompts(server, _client) {
|
|
4
5
|
this.registerAnalyzeBoardPerformance(server);
|
|
5
6
|
this.registerGenerateBoardReport(server);
|
|
6
7
|
}
|
|
7
8
|
registerAnalyzeBoardPerformance(server) {
|
|
8
|
-
|
|
9
|
+
registerPrompt(server, 'analyze-board-performance', {
|
|
9
10
|
title: 'Analyze Board Performance',
|
|
10
11
|
description: 'Analyze a board\'s performance: flow efficiency, bottlenecks, cycle time and workload distribution across columns and lanes.',
|
|
11
12
|
argsSchema: {
|
|
@@ -21,7 +22,7 @@ export class BoardPromptHandler {
|
|
|
21
22
|
|
|
22
23
|
Follow these steps:
|
|
23
24
|
1. Use \`get_current_board_structure\` to retrieve the full board structure (workflows, columns, lanes).
|
|
24
|
-
2. Use \`list_cards\` to retrieve
|
|
25
|
+
2. Use \`list_cards\` with \`compact=true\`, \`include_pagination=true\`, and \`per_page=50\` to retrieve active cards page by page. Stop when pagination indicates the last page.
|
|
25
26
|
3. Use \`get_workflow_cycle_time_columns\` for each workflow to understand which columns count for cycle time.
|
|
26
27
|
|
|
27
28
|
Based on the data collected, provide a structured analysis including:
|
|
@@ -50,7 +51,7 @@ Format the response as a clear executive report with sections and bullet points.
|
|
|
50
51
|
}));
|
|
51
52
|
}
|
|
52
53
|
registerGenerateBoardReport(server) {
|
|
53
|
-
|
|
54
|
+
registerPrompt(server, 'generate-board-report', {
|
|
54
55
|
title: 'Generate Board Report',
|
|
55
56
|
description: 'Generate a comprehensive status report for a board, including cards summary, progress, and highlights.',
|
|
56
57
|
argsSchema: {
|
|
@@ -66,8 +67,8 @@ Format the response as a clear executive report with sections and bullet points.
|
|
|
66
67
|
|
|
67
68
|
Steps to gather data:
|
|
68
69
|
1. Use \`get_current_board_structure\` to get the board structure.
|
|
69
|
-
2. Use \`list_cards\`
|
|
70
|
-
3. For a sample of cards (up to 10), use \`get_card\`
|
|
70
|
+
2. Use \`list_cards\` with \`compact=true\`, \`include_pagination=true\`, and \`per_page=50\` for a bounded active-card snapshot.
|
|
71
|
+
3. For a sample of cards (up to 10), use \`get_card\` at its default summary level. Request \`detail_level=full\` only if the summary is insufficient.
|
|
71
72
|
|
|
72
73
|
Report structure:
|
|
73
74
|
# Board Status Report — [Board Name]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"board-prompts.js","sourceRoot":"","sources":["../../../src/server/prompts/board-prompts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"board-prompts.js","sourceRoot":"","sources":["../../../src/server/prompts/board-prompts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EAAqB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAErE,MAAM,OAAO,kBAAkB;IAC7B,eAAe,CAAC,MAAiB,EAAE,OAA0B;QAC3D,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAEO,+BAA+B,CAAC,MAAiB;QACvD,cAAc,CACZ,MAAM,EACN,2BAA2B,EAC3B;YACE,KAAK,EAAE,2BAA2B;YAClC,WAAW,EACT,8HAA8H;YAChI,UAAU,EAAE;gBACV,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;aACzD;SACF,EACD,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;YACjB,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,8CAA8C,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;iFA0BO;qBACpE;iBACF;aACF;SACF,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,2BAA2B,CAAC,MAAiB;QACnD,cAAc,CACZ,MAAM,EACN,uBAAuB,EACvB;YACE,KAAK,EAAE,uBAAuB;YAC9B,WAAW,EACT,wGAAwG;YAC1G,UAAU,EAAE;gBACV,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;aAC3D;SACF,EACD,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;YACjB,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,uDAAuD,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kDA6BjC;qBACrC;iBACF;aACF;SACF,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card-prompts.d.ts","sourceRoot":"","sources":["../../../src/server/prompts/card-prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"card-prompts.d.ts","sourceRoot":"","sources":["../../../src/server/prompts/card-prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAkB,MAAM,kBAAkB,CAAC;AAErE,qBAAa,iBAAkB,YAAW,iBAAiB;IACzD,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAIpE,OAAO,CAAC,iCAAiC;CA8C1C"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { z } from 'zod/v3';
|
|
2
|
+
import { registerPrompt } from './base-prompt.js';
|
|
2
3
|
export class CardPromptHandler {
|
|
3
4
|
registerPrompts(server, _client) {
|
|
4
5
|
this.registerCreateCardFromDescription(server);
|
|
5
6
|
}
|
|
6
7
|
registerCreateCardFromDescription(server) {
|
|
7
|
-
|
|
8
|
+
registerPrompt(server, 'create-card-from-description', {
|
|
8
9
|
title: 'Create Card from Description',
|
|
9
10
|
description: 'Guide the creation of a well-structured card from a natural language description.',
|
|
10
11
|
argsSchema: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card-prompts.js","sourceRoot":"","sources":["../../../src/server/prompts/card-prompts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"card-prompts.js","sourceRoot":"","sources":["../../../src/server/prompts/card-prompts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EAAqB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAErE,MAAM,OAAO,iBAAiB;IAC5B,eAAe,CAAC,MAAiB,EAAE,OAA0B;QAC3D,IAAI,CAAC,iCAAiC,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAEO,iCAAiC,CAAC,MAAiB;QACzD,cAAc,CACZ,MAAM,EACN,8BAA8B,EAC9B;YACE,KAAK,EAAE,8BAA8B;YACrC,WAAW,EACT,mFAAmF;YACrF,UAAU,EAAE;gBACV,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;gBAC3F,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;aAC/E;SACF,EACD,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;YAC9B,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE;;GAEjB,WAAW;;mBAEK,QAAQ;;;4GAGiF,QAAQ;;;;;;;;;;;;;oIAagB;qBACvH;iBACF;aACF;SACF,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/prompts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/prompts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/prompts/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/prompts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-prompts.d.ts","sourceRoot":"","sources":["../../../src/server/prompts/workspace-prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"workspace-prompts.d.ts","sourceRoot":"","sources":["../../../src/server/prompts/workspace-prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAkB,MAAM,kBAAkB,CAAC;AAErE,qBAAa,sBAAuB,YAAW,iBAAiB;IAC9D,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAIpE,OAAO,CAAC,+BAA+B;CA0DxC"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { z } from 'zod/v3';
|
|
2
|
+
import { registerPrompt } from './base-prompt.js';
|
|
2
3
|
export class WorkspacePromptHandler {
|
|
3
4
|
registerPrompts(server, _client) {
|
|
4
5
|
this.registerWorkspaceStatusOverview(server);
|
|
5
6
|
}
|
|
6
7
|
registerWorkspaceStatusOverview(server) {
|
|
7
|
-
|
|
8
|
+
registerPrompt(server, 'workspace-status-overview', {
|
|
8
9
|
title: 'Workspace Status Overview',
|
|
9
10
|
description: 'Generate a high-level status overview of a workspace, including all boards and their key metrics.',
|
|
10
11
|
argsSchema: {
|
|
@@ -20,8 +21,8 @@ export class WorkspacePromptHandler {
|
|
|
20
21
|
|
|
21
22
|
Steps:
|
|
22
23
|
1. Use \`get_workspace\` to get workspace details.
|
|
23
|
-
2. Use \`list_boards\` with workspace_id
|
|
24
|
-
3. For each board (up to 5 boards), use \`list_cards\` to get a
|
|
24
|
+
2. Use \`list_boards\` with workspace_id and the default summary detail to discover boards in this workspace.
|
|
25
|
+
3. For each board (up to 5 boards), use \`list_cards\` with \`compact=true\`, \`include_pagination=true\`, and \`per_page=50\` to get a bounded active-card count.
|
|
25
26
|
4. For up to 3 boards, use \`get_current_board_structure\` for column distribution.
|
|
26
27
|
|
|
27
28
|
Deliver a structured overview:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-prompts.js","sourceRoot":"","sources":["../../../src/server/prompts/workspace-prompts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-prompts.js","sourceRoot":"","sources":["../../../src/server/prompts/workspace-prompts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EAAqB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAErE,MAAM,OAAO,sBAAsB;IACjC,eAAe,CAAC,MAAiB,EAAE,OAA0B;QAC3D,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAEO,+BAA+B,CAAC,MAAiB;QACvD,cAAc,CACZ,MAAM,EACN,2BAA2B,EAC3B;YACE,KAAK,EAAE,2BAA2B;YAClC,WAAW,EACT,mGAAmG;YACrG,UAAU,EAAE;gBACV,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;aAClF;SACF,EACD,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;YACrB,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,0DAA0D,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAiCnC;qBAC1C;iBACF;aACF;SACF,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card-resources.d.ts","sourceRoot":"","sources":["../../../src/server/resources/card-resources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"card-resources.d.ts","sourceRoot":"","sources":["../../../src/server/resources/card-resources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAiBzD,qBAAa,mBAAoB,YAAW,mBAAmB;IAC3D,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,GAAG,IAAI;CA2FxE"}
|
|
@@ -1,7 +1,21 @@
|
|
|
1
1
|
import { ResourceTemplate } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
|
+
function compactCard(card) {
|
|
3
|
+
return {
|
|
4
|
+
card_id: card.card_id,
|
|
5
|
+
custom_id: card.custom_id,
|
|
6
|
+
board_id: card.board_id,
|
|
7
|
+
title: card.title,
|
|
8
|
+
owner_user_id: card.owner_user_id,
|
|
9
|
+
column_id: card.column_id,
|
|
10
|
+
lane_id: card.lane_id,
|
|
11
|
+
priority: card.priority,
|
|
12
|
+
deadline: card.deadline,
|
|
13
|
+
is_blocked: card.is_blocked,
|
|
14
|
+
};
|
|
15
|
+
}
|
|
2
16
|
export class CardResourceHandler {
|
|
3
17
|
registerResources(server, client) {
|
|
4
|
-
//
|
|
18
|
+
// Return a bounded discovery page. Clients can follow the page resource for more.
|
|
5
19
|
server.registerResource('cards', new ResourceTemplate('businessmap://boards/{board_id}/cards', { list: undefined }), {}, // Added empty metadata object
|
|
6
20
|
async (uri, variables) => {
|
|
7
21
|
try {
|
|
@@ -9,12 +23,16 @@ export class CardResourceHandler {
|
|
|
9
23
|
if (Number.isNaN(boardId)) {
|
|
10
24
|
throw new TypeError(`Invalid board_id: "${variables.board_id}" is not a valid number`);
|
|
11
25
|
}
|
|
12
|
-
const cards = await client.cards.
|
|
26
|
+
const cards = await client.cards.getCardsPage(boardId, { page: 1, per_page: 50 });
|
|
13
27
|
return {
|
|
14
28
|
contents: [
|
|
15
29
|
{
|
|
16
30
|
uri: uri.href,
|
|
17
|
-
text: JSON.stringify(
|
|
31
|
+
text: JSON.stringify({
|
|
32
|
+
...cards,
|
|
33
|
+
data: cards.data.map(compactCard),
|
|
34
|
+
next_resource_template: 'businessmap://boards/{board_id}/cards/pages/{page}/size/{per_page}',
|
|
35
|
+
}, null, 2),
|
|
18
36
|
},
|
|
19
37
|
],
|
|
20
38
|
};
|
|
@@ -23,6 +41,30 @@ export class CardResourceHandler {
|
|
|
23
41
|
throw new Error(`Failed to fetch cards: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
24
42
|
}
|
|
25
43
|
});
|
|
44
|
+
// Get a bounded page of cards for clients that need predictable payload sizes
|
|
45
|
+
server.registerResource('card-page', new ResourceTemplate('businessmap://boards/{board_id}/cards/pages/{page}/size/{per_page}', { list: undefined }), {}, async (uri, variables) => {
|
|
46
|
+
const boardId = Number.parseInt(variables.board_id);
|
|
47
|
+
const page = Number.parseInt(variables.page);
|
|
48
|
+
const perPage = Number.parseInt(variables.per_page);
|
|
49
|
+
if (Number.isNaN(boardId) || Number.isNaN(page) || Number.isNaN(perPage)) {
|
|
50
|
+
throw new TypeError('board_id, page, and per_page must be valid numbers');
|
|
51
|
+
}
|
|
52
|
+
if (page < 1 || perPage < 1 || perPage > 100) {
|
|
53
|
+
throw new RangeError('page must be at least 1 and per_page must be between 1 and 100');
|
|
54
|
+
}
|
|
55
|
+
const cards = await client.cards.getCardsPage(boardId, {
|
|
56
|
+
page,
|
|
57
|
+
per_page: perPage,
|
|
58
|
+
});
|
|
59
|
+
return {
|
|
60
|
+
contents: [
|
|
61
|
+
{
|
|
62
|
+
uri: uri.href,
|
|
63
|
+
text: JSON.stringify({ ...cards, data: cards.data.map(compactCard) }, null, 2),
|
|
64
|
+
},
|
|
65
|
+
],
|
|
66
|
+
};
|
|
67
|
+
});
|
|
26
68
|
// Get card details
|
|
27
69
|
server.registerResource('card', new ResourceTemplate('businessmap://cards/{card_id}', { list: undefined }), {}, // Added empty metadata object
|
|
28
70
|
async (uri, variables) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card-resources.js","sourceRoot":"","sources":["../../../src/server/resources/card-resources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAa,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"card-resources.js","sourceRoot":"","sources":["../../../src/server/resources/card-resources.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
2
|
import { z } from 'zod/v3';
|
|
3
3
|
import { BusinessMapClient } from '../../client/businessmap-client.js';
|
|
4
|
+
export declare const ESSENTIAL_TOOLS: Set<string>;
|
|
4
5
|
/**
|
|
5
6
|
* Base interface for tool handlers
|
|
6
7
|
*/
|
|
@@ -46,6 +47,10 @@ export declare const READ_ONLY: ToolAnnotations;
|
|
|
46
47
|
export declare const WRITE: ToolAnnotations;
|
|
47
48
|
/** Annotations for idempotent write tools (update/toggle) */
|
|
48
49
|
export declare const WRITE_IDEMPOTENT: ToolAnnotations;
|
|
50
|
+
/** Annotations for destructive operations that are safe to repeat */
|
|
51
|
+
export declare const DESTRUCTIVE_IDEMPOTENT: ToolAnnotations;
|
|
52
|
+
/** Annotations for destructive operations that may not be safe to repeat */
|
|
53
|
+
export declare const DESTRUCTIVE: ToolAnnotations;
|
|
49
54
|
export interface ToolDefinition<Shape extends z.ZodRawShape> {
|
|
50
55
|
name: string;
|
|
51
56
|
title: string;
|