@riktajs/mcp 0.1.3 → 0.2.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/README.md +123 -0
- package/dist/plugin/mcp.plugin.d.ts.map +1 -1
- package/dist/plugin/mcp.plugin.js +21 -3
- package/dist/plugin/mcp.plugin.js.map +1 -1
- package/dist/types.d.ts +10 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -211,6 +211,129 @@ const filesSchema = z.array(z.object({
|
|
|
211
211
|
}));
|
|
212
212
|
```
|
|
213
213
|
|
|
214
|
+
## HTTP Context
|
|
215
|
+
|
|
216
|
+
All MCP handlers (tools, resources, prompts) receive an optional `context` parameter that provides access to the HTTP request and reply objects from Fastify:
|
|
217
|
+
|
|
218
|
+
```typescript
|
|
219
|
+
import { Injectable } from '@riktajs/core';
|
|
220
|
+
import { MCPTool, MCPHandlerContext, z } from '@riktajs/mcp';
|
|
221
|
+
|
|
222
|
+
@Injectable()
|
|
223
|
+
class AuthenticatedService {
|
|
224
|
+
@MCPTool({
|
|
225
|
+
name: 'get_user_data',
|
|
226
|
+
description: 'Get data for the authenticated user',
|
|
227
|
+
inputSchema: z.object({
|
|
228
|
+
includePrivate: z.boolean().optional(),
|
|
229
|
+
}),
|
|
230
|
+
})
|
|
231
|
+
async getUserData(
|
|
232
|
+
params: { includePrivate?: boolean },
|
|
233
|
+
context?: MCPHandlerContext
|
|
234
|
+
) {
|
|
235
|
+
// Access HTTP headers
|
|
236
|
+
const authToken = context?.request?.headers.authorization;
|
|
237
|
+
|
|
238
|
+
// Access query parameters
|
|
239
|
+
const sessionId = context?.request?.query.sessionId;
|
|
240
|
+
|
|
241
|
+
// Set custom response headers
|
|
242
|
+
if (context?.reply) {
|
|
243
|
+
context.reply.header('X-Request-ID', generateId());
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
// Access request IP
|
|
247
|
+
const clientIp = context?.request?.ip;
|
|
248
|
+
|
|
249
|
+
// Log request details
|
|
250
|
+
context?.request?.log.info('Processing user data request');
|
|
251
|
+
|
|
252
|
+
return {
|
|
253
|
+
content: [{
|
|
254
|
+
type: 'text',
|
|
255
|
+
text: `User data for session ${sessionId}`,
|
|
256
|
+
}],
|
|
257
|
+
};
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
### Context Properties
|
|
263
|
+
|
|
264
|
+
The `MCPHandlerContext` interface provides:
|
|
265
|
+
|
|
266
|
+
- `request?: FastifyRequest` - The Fastify request object
|
|
267
|
+
- `headers` - HTTP headers
|
|
268
|
+
- `query` - Query parameters
|
|
269
|
+
- `body` - Request body
|
|
270
|
+
- `params` - Route parameters
|
|
271
|
+
- `ip` - Client IP address
|
|
272
|
+
- `log` - Request logger
|
|
273
|
+
- `user` - Authenticated user (if using auth)
|
|
274
|
+
|
|
275
|
+
- `reply?: FastifyReply` - The Fastify reply object
|
|
276
|
+
- `header()` - Set response headers
|
|
277
|
+
- `status()` - Set status code
|
|
278
|
+
- `log` - Reply logger
|
|
279
|
+
|
|
280
|
+
- `sessionId?: string` - SSE session ID (when using SSE)
|
|
281
|
+
- `sendNotification?()` - Send SSE notifications
|
|
282
|
+
|
|
283
|
+
### Common Use Cases
|
|
284
|
+
|
|
285
|
+
#### Authentication
|
|
286
|
+
|
|
287
|
+
```typescript
|
|
288
|
+
@MCPTool({ name: 'protected_action', description: 'Requires auth' })
|
|
289
|
+
async protectedAction(params: any, context?: MCPHandlerContext) {
|
|
290
|
+
const token = context?.request?.headers.authorization;
|
|
291
|
+
|
|
292
|
+
if (!token) {
|
|
293
|
+
return {
|
|
294
|
+
content: [{ type: 'text', text: 'Unauthorized' }],
|
|
295
|
+
isError: true,
|
|
296
|
+
};
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
// Verify token and proceed...
|
|
300
|
+
}
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
#### Custom Headers
|
|
304
|
+
|
|
305
|
+
```typescript
|
|
306
|
+
@MCPResource({ uriPattern: 'data://export', name: 'Export', description: 'Export data' })
|
|
307
|
+
async exportData(uri: string, context?: MCPHandlerContext) {
|
|
308
|
+
const data = await this.getData();
|
|
309
|
+
|
|
310
|
+
// Set download headers
|
|
311
|
+
if (context?.reply) {
|
|
312
|
+
context.reply.header('Content-Disposition', 'attachment; filename="data.json"');
|
|
313
|
+
context.reply.header('Content-Type', 'application/json');
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
return {
|
|
317
|
+
contents: [{ uri, text: JSON.stringify(data), mimeType: 'application/json' }],
|
|
318
|
+
};
|
|
319
|
+
}
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
#### Request Logging
|
|
323
|
+
|
|
324
|
+
```typescript
|
|
325
|
+
@MCPTool({ name: 'analyze', description: 'Analyze data' })
|
|
326
|
+
async analyze(params: any, context?: MCPHandlerContext) {
|
|
327
|
+
const logger = context?.request?.log;
|
|
328
|
+
|
|
329
|
+
logger?.info({ params }, 'Starting analysis');
|
|
330
|
+
const result = await this.performAnalysis(params);
|
|
331
|
+
logger?.info({ result }, 'Analysis complete');
|
|
332
|
+
|
|
333
|
+
return { content: [{ type: 'text', text: JSON.stringify(result) }] };
|
|
334
|
+
}
|
|
335
|
+
```
|
|
336
|
+
|
|
214
337
|
## Configuration
|
|
215
338
|
|
|
216
339
|
### Basic Configuration
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.plugin.d.ts","sourceRoot":"","sources":["../../src/plugin/mcp.plugin.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAS/C,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAEjB,MAAM,aAAa,CAAC;AAGrB,OAAO,mBAAmB,CAAC;AAG3B,KAAK,WAAW,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAG9D,UAAU,SAAS;IACjB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;CACvC;AAaD;;;;GAIG;AACH,iBAAe,aAAa,CAC1B,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,gBAAgB,GAAG;IAAE,SAAS,CAAC,EAAE,SAAS,CAAA;CAAE,GACpD,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"mcp.plugin.d.ts","sourceRoot":"","sources":["../../src/plugin/mcp.plugin.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAS/C,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAEjB,MAAM,aAAa,CAAC;AAGrB,OAAO,mBAAmB,CAAC;AAG3B,KAAK,WAAW,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAG9D,UAAU,SAAS;IACjB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;CACvC;AAaD;;;;GAIG;AACH,iBAAe,aAAa,CAC1B,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,gBAAgB,GAAG;IAAE,SAAS,CAAC,EAAE,SAAS,CAAA;CAAE,GACpD,OAAO,CAAC,IAAI,CAAC,CAoJf;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,sBAG1B,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,gBAAgB,EACrB,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,gBAAgB,CAK3E"}
|
|
@@ -67,7 +67,13 @@ async function mcpPluginImpl(fastify, options) {
|
|
|
67
67
|
// Convert Zod schema to JSON Schema for MCP
|
|
68
68
|
const inputSchema = toMCPSchema(tool.inputSchema);
|
|
69
69
|
const handler = async (params, context) => {
|
|
70
|
-
|
|
70
|
+
// Enrich context with request/reply if available
|
|
71
|
+
const enrichedContext = {
|
|
72
|
+
...context,
|
|
73
|
+
request: context?.request,
|
|
74
|
+
reply: context?.reply,
|
|
75
|
+
};
|
|
76
|
+
const result = await tool.handler(params, enrichedContext);
|
|
71
77
|
return result;
|
|
72
78
|
};
|
|
73
79
|
fastify.mcpAddTool({
|
|
@@ -81,7 +87,13 @@ async function mcpPluginImpl(fastify, options) {
|
|
|
81
87
|
for (const resource of resources) {
|
|
82
88
|
// Convert Zod schema to JSON Schema for MCP (uriSchema is not needed for resources)
|
|
83
89
|
const handler = async (uri, context) => {
|
|
84
|
-
|
|
90
|
+
// Enrich context with request/reply if available
|
|
91
|
+
const enrichedContext = {
|
|
92
|
+
...context,
|
|
93
|
+
request: context?.request,
|
|
94
|
+
reply: context?.reply,
|
|
95
|
+
};
|
|
96
|
+
const result = await resource.handler(uri, enrichedContext);
|
|
85
97
|
return result;
|
|
86
98
|
};
|
|
87
99
|
fastify.mcpAddResource({
|
|
@@ -95,7 +107,13 @@ async function mcpPluginImpl(fastify, options) {
|
|
|
95
107
|
const prompts = mcpRegistry.getPrompts();
|
|
96
108
|
for (const prompt of prompts) {
|
|
97
109
|
const handler = async (name, args, context) => {
|
|
98
|
-
|
|
110
|
+
// Enrich context with request/reply if available
|
|
111
|
+
const enrichedContext = {
|
|
112
|
+
...context,
|
|
113
|
+
request: context?.request,
|
|
114
|
+
reply: context?.reply,
|
|
115
|
+
};
|
|
116
|
+
const result = await prompt.handler(args, enrichedContext);
|
|
99
117
|
return result;
|
|
100
118
|
};
|
|
101
119
|
fastify.mcpAddPrompt({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.plugin.js","sourceRoot":"","sources":["../../src/plugin/mcp.plugin.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAChC,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAO/F,iEAAiE;AACjE,OAAO,mBAAmB,CAAC;AAU3B;;GAEG;AACH,MAAM,eAAe,GAA8G;IACjI,SAAS,EAAE,IAAI;IACf,IAAI,EAAE,gBAAgB;IACtB,SAAS,EAAE,IAAI;IACf,iBAAiB,EAAE,KAAK;IACxB,UAAU,EAAE,IAAI;CACjB,CAAC;AAEF;;;;GAIG;AACH,KAAK,UAAU,aAAa,CAC1B,OAAwB,EACxB,OAAqD;IAErD,MAAM,aAAa,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,OAAO,EAAE,CAAC;IACzD,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;IAE9F,kDAAkD;IAClD,MAAM,qBAAqB,GAAoB,YAAY,IAAI,EAAE,CAAC;IAElE,6CAA6C;IAE7C,2BAA2B;IAC3B,MAAM,UAAU,GAA4B;QAC1C,UAAU,EAAE,UAAU,IAAI,mBAAmB;QAC7C,YAAY,EAAE,qBAAqB;QACnC,SAAS;KACV,CAAC;IAEF,+BAA+B;IAC/B,IAAI,YAAY,EAAE,CAAC;QACjB,UAAU,CAAC,YAAY,GAAG,YAAY,CAAC;IACzC,CAAC;IAED,+BAA+B;IAC/B,IAAI,KAAK,EAAE,CAAC;QACV,UAAU,CAAC,KAAK,GAAG;YACjB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI;YACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC;SAClB,CAAC;IACJ,CAAC;IAED,oCAAoC;IACpC,MAAM,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAE9C,0DAA0D;IAC1D,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QAE1C,KAAK,MAAM,aAAa,IAAI,SAAS,EAAE,CAAC;YACtC,0CAA0C;YAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAAC;YAC3E,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,mDAAmD;gBACnD,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;gBAClD,WAAW,CAAC,SAAS,CAAC,aAA4B,EAAE,QAAQ,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,4CAA4C;QAC5C,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAElD,MAAM,OAAO,GAAsB,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;YAC3D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"mcp.plugin.js","sourceRoot":"","sources":["../../src/plugin/mcp.plugin.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAChC,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAO/F,iEAAiE;AACjE,OAAO,mBAAmB,CAAC;AAU3B;;GAEG;AACH,MAAM,eAAe,GAA8G;IACjI,SAAS,EAAE,IAAI;IACf,IAAI,EAAE,gBAAgB;IACtB,SAAS,EAAE,IAAI;IACf,iBAAiB,EAAE,KAAK;IACxB,UAAU,EAAE,IAAI;CACjB,CAAC;AAEF;;;;GAIG;AACH,KAAK,UAAU,aAAa,CAC1B,OAAwB,EACxB,OAAqD;IAErD,MAAM,aAAa,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,OAAO,EAAE,CAAC;IACzD,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;IAE9F,kDAAkD;IAClD,MAAM,qBAAqB,GAAoB,YAAY,IAAI,EAAE,CAAC;IAElE,6CAA6C;IAE7C,2BAA2B;IAC3B,MAAM,UAAU,GAA4B;QAC1C,UAAU,EAAE,UAAU,IAAI,mBAAmB;QAC7C,YAAY,EAAE,qBAAqB;QACnC,SAAS;KACV,CAAC;IAEF,+BAA+B;IAC/B,IAAI,YAAY,EAAE,CAAC;QACjB,UAAU,CAAC,YAAY,GAAG,YAAY,CAAC;IACzC,CAAC;IAED,+BAA+B;IAC/B,IAAI,KAAK,EAAE,CAAC;QACV,UAAU,CAAC,KAAK,GAAG;YACjB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI;YACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC;SAClB,CAAC;IACJ,CAAC;IAED,oCAAoC;IACpC,MAAM,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAE9C,0DAA0D;IAC1D,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QAE1C,KAAK,MAAM,aAAa,IAAI,SAAS,EAAE,CAAC;YACtC,0CAA0C;YAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAAC;YAC3E,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,mDAAmD;gBACnD,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;gBAClD,WAAW,CAAC,SAAS,CAAC,aAA4B,EAAE,QAAQ,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,4CAA4C;QAC5C,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAElD,MAAM,OAAO,GAAsB,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;YAC3D,iDAAiD;YACjD,MAAM,eAAe,GAAG;gBACtB,GAAG,OAAO;gBACV,OAAO,EAAG,OAAe,EAAE,OAAO;gBAClC,KAAK,EAAG,OAAe,EAAE,KAAK;aAC/B,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;YAC3D,OAAO,MAAwB,CAAC;QAClC,CAAC,CAAC;QAEF,OAAO,CAAC,UAAU,CAChB;YACE,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW;SACZ,EACD,OAAO,CACR,CAAC;IACJ,CAAC;IAED,oCAAoC;IACpC,MAAM,SAAS,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC;IAC7C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,oFAAoF;QAEpF,MAAM,OAAO,GAA0B,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC5D,iDAAiD;YACjD,MAAM,eAAe,GAAG;gBACtB,GAAG,OAAO;gBACV,OAAO,EAAG,OAAe,EAAE,OAAO;gBAClC,KAAK,EAAG,OAAe,EAAE,KAAK;aAC/B,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;YAC5D,OAAO,MAA4B,CAAC;QACtC,CAAC,CAAC;QAEF,OAAO,CAAC,cAAc,CACpB;YACE,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;SAC5B,EACD,OAAO,CACR,CAAC;IACJ,CAAC;IAED,kCAAkC;IAClC,MAAM,OAAO,GAAG,WAAW,CAAC,UAAU,EAAE,CAAC;IACzC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAwB,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YACjE,iDAAiD;YACjD,MAAM,eAAe,GAAG;gBACtB,GAAG,OAAO;gBACV,OAAO,EAAG,OAAe,EAAE,OAAO;gBAClC,KAAK,EAAG,OAAe,EAAE,KAAK;aAC/B,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YAC3D,OAAO,MAAyB,CAAC;QACnC,CAAC,CAAC;QAEF,OAAO,CAAC,YAAY,CAClB;YACE,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC,EACD,OAAO,CACR,CAAC;IACJ,CAAC;IAED,mDAAmD;IACnD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,qBAAqB,CAAC,KAAK,GAAG,EAAE,CAAC;IACnC,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,qBAAqB,CAAC,SAAS,GAAG,EAAE,CAAC;IACvC,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,qBAAqB,CAAC,OAAO,GAAG,EAAE,CAAC;IACrC,CAAC;IAED,2BAA2B;IAC3B,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;IACrC,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,CAAC,SAAS,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,mBAAmB,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;QACrD,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QAChE,IAAI,KAAK,CAAC,SAAS,GAAG,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5E,IAAI,KAAK,CAAC,OAAO,GAAG,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACtE,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC,aAAa,EAAE;IAC/C,IAAI,EAAE,cAAc;IACpB,OAAO,EAAE,KAAK;CACf,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAqB,EACrB,UAA4B,EAAE;IAE9B,2DAA2D;IAC3D,MAAM,SAAS,GAAG,cAAc,IAAI,GAAG;QACrC,CAAC,CAAE,GAAgD,CAAC,YAAY,EAAE;QAClE,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE;QACzC,GAAG,OAAO;QACV,SAAS;KACV,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,eAAe,CAAC,OAAyB;IACvD,OAAO;QACL,GAAG,eAAe;QAClB,GAAG,OAAO;KACX,CAAC;AACJ,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -185,6 +185,16 @@ export interface MCPHandlerContext {
|
|
|
185
185
|
* Send a notification to the current session
|
|
186
186
|
*/
|
|
187
187
|
sendNotification?: (method: string, params: unknown) => void;
|
|
188
|
+
/**
|
|
189
|
+
* Fastify request object (when available)
|
|
190
|
+
* Provides access to HTTP request details like headers, params, query, etc.
|
|
191
|
+
*/
|
|
192
|
+
request?: any;
|
|
193
|
+
/**
|
|
194
|
+
* Fastify reply object (when available)
|
|
195
|
+
* Provides access to HTTP response methods and properties
|
|
196
|
+
*/
|
|
197
|
+
reply?: any;
|
|
188
198
|
}
|
|
189
199
|
/**
|
|
190
200
|
* Redis configuration for horizontal scaling
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED