@contextvm/sdk 0.3.2 → 0.4.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.
Files changed (96) hide show
  1. package/dist/esm/core/utils/utils.d.ts +11 -0
  2. package/dist/esm/core/utils/utils.d.ts.map +1 -1
  3. package/dist/esm/core/utils/utils.js +15 -0
  4. package/dist/esm/core/utils/utils.js.map +1 -1
  5. package/dist/esm/gateway/index.d.ts.map +1 -1
  6. package/dist/esm/gateway/index.js +5 -0
  7. package/dist/esm/gateway/index.js.map +1 -1
  8. package/dist/esm/index.d.ts +1 -0
  9. package/dist/esm/index.d.ts.map +1 -1
  10. package/dist/esm/index.js +1 -0
  11. package/dist/esm/index.js.map +1 -1
  12. package/dist/esm/payments/cap-tags.d.ts +13 -0
  13. package/dist/esm/payments/cap-tags.d.ts.map +1 -0
  14. package/dist/esm/payments/cap-tags.js +38 -0
  15. package/dist/esm/payments/cap-tags.js.map +1 -0
  16. package/dist/esm/payments/client-payments.d.ts +10 -0
  17. package/dist/esm/payments/client-payments.d.ts.map +1 -0
  18. package/dist/esm/payments/client-payments.js +108 -0
  19. package/dist/esm/payments/client-payments.js.map +1 -0
  20. package/dist/esm/payments/fake-payment-handler.d.ts +19 -0
  21. package/dist/esm/payments/fake-payment-handler.d.ts.map +1 -0
  22. package/dist/esm/payments/fake-payment-handler.js +16 -0
  23. package/dist/esm/payments/fake-payment-handler.js.map +1 -0
  24. package/dist/esm/payments/fake-payment-processor.d.ts +34 -0
  25. package/dist/esm/payments/fake-payment-processor.d.ts.map +1 -0
  26. package/dist/esm/payments/fake-payment-processor.js +29 -0
  27. package/dist/esm/payments/fake-payment-processor.js.map +1 -0
  28. package/dist/esm/payments/handlers/ln-bolt11-lnbits-payment-handler.d.ts +24 -0
  29. package/dist/esm/payments/handlers/ln-bolt11-lnbits-payment-handler.d.ts.map +1 -0
  30. package/dist/esm/payments/handlers/ln-bolt11-lnbits-payment-handler.js +44 -0
  31. package/dist/esm/payments/handlers/ln-bolt11-lnbits-payment-handler.js.map +1 -0
  32. package/dist/esm/payments/handlers/ln-bolt11-nwc-payment-handler.d.ts +20 -0
  33. package/dist/esm/payments/handlers/ln-bolt11-nwc-payment-handler.d.ts.map +1 -0
  34. package/dist/esm/payments/handlers/ln-bolt11-nwc-payment-handler.js +36 -0
  35. package/dist/esm/payments/handlers/ln-bolt11-nwc-payment-handler.js.map +1 -0
  36. package/dist/esm/payments/index.d.ts +17 -0
  37. package/dist/esm/payments/index.d.ts.map +1 -0
  38. package/dist/esm/payments/index.js +17 -0
  39. package/dist/esm/payments/index.js.map +1 -0
  40. package/dist/esm/payments/nip47/connection.d.ts +9 -0
  41. package/dist/esm/payments/nip47/connection.d.ts.map +1 -0
  42. package/dist/esm/payments/nip47/connection.js +34 -0
  43. package/dist/esm/payments/nip47/connection.js.map +1 -0
  44. package/dist/esm/payments/nip47/nwc-client.d.ts +38 -0
  45. package/dist/esm/payments/nip47/nwc-client.d.ts.map +1 -0
  46. package/dist/esm/payments/nip47/nwc-client.js +144 -0
  47. package/dist/esm/payments/nip47/nwc-client.js.map +1 -0
  48. package/dist/esm/payments/nip47/types.d.ts +54 -0
  49. package/dist/esm/payments/nip47/types.d.ts.map +1 -0
  50. package/dist/esm/payments/nip47/types.js +2 -0
  51. package/dist/esm/payments/nip47/types.js.map +1 -0
  52. package/dist/esm/payments/nip47/utils.d.ts +7 -0
  53. package/dist/esm/payments/nip47/utils.d.ts.map +1 -0
  54. package/dist/esm/payments/nip47/utils.js +9 -0
  55. package/dist/esm/payments/nip47/utils.js.map +1 -0
  56. package/dist/esm/payments/pmi-tags.d.ts +8 -0
  57. package/dist/esm/payments/pmi-tags.d.ts.map +1 -0
  58. package/dist/esm/payments/pmi-tags.js +9 -0
  59. package/dist/esm/payments/pmi-tags.js.map +1 -0
  60. package/dist/esm/payments/pmis.d.ts +7 -0
  61. package/dist/esm/payments/pmis.d.ts.map +1 -0
  62. package/dist/esm/payments/pmis.js +7 -0
  63. package/dist/esm/payments/pmis.js.map +1 -0
  64. package/dist/esm/payments/processors/ln-bolt11-lnbits-payment-processor.d.ts +50 -0
  65. package/dist/esm/payments/processors/ln-bolt11-lnbits-payment-processor.d.ts.map +1 -0
  66. package/dist/esm/payments/processors/ln-bolt11-lnbits-payment-processor.js +133 -0
  67. package/dist/esm/payments/processors/ln-bolt11-lnbits-payment-processor.js.map +1 -0
  68. package/dist/esm/payments/processors/ln-bolt11-nwc-payment-processor.d.ts +41 -0
  69. package/dist/esm/payments/processors/ln-bolt11-nwc-payment-processor.d.ts.map +1 -0
  70. package/dist/esm/payments/processors/ln-bolt11-nwc-payment-processor.js +129 -0
  71. package/dist/esm/payments/processors/ln-bolt11-nwc-payment-processor.js.map +1 -0
  72. package/dist/esm/payments/server-payments.d.ts +32 -0
  73. package/dist/esm/payments/server-payments.d.ts.map +1 -0
  74. package/dist/esm/payments/server-payments.js +199 -0
  75. package/dist/esm/payments/server-payments.js.map +1 -0
  76. package/dist/esm/payments/server-transport-payments.d.ts +7 -0
  77. package/dist/esm/payments/server-transport-payments.d.ts.map +1 -0
  78. package/dist/esm/payments/server-transport-payments.js +14 -0
  79. package/dist/esm/payments/server-transport-payments.js.map +1 -0
  80. package/dist/esm/payments/types.d.ts +174 -0
  81. package/dist/esm/payments/types.d.ts.map +1 -0
  82. package/dist/esm/payments/types.js +5 -0
  83. package/dist/esm/payments/types.js.map +1 -0
  84. package/dist/esm/transport/nostr-client-transport.d.ts +12 -0
  85. package/dist/esm/transport/nostr-client-transport.d.ts.map +1 -1
  86. package/dist/esm/transport/nostr-client-transport.js +49 -18
  87. package/dist/esm/transport/nostr-client-transport.js.map +1 -1
  88. package/dist/esm/transport/nostr-server/announcement-manager.d.ts +18 -0
  89. package/dist/esm/transport/nostr-server/announcement-manager.d.ts.map +1 -1
  90. package/dist/esm/transport/nostr-server/announcement-manager.js +40 -5
  91. package/dist/esm/transport/nostr-server/announcement-manager.js.map +1 -1
  92. package/dist/esm/transport/nostr-server-transport.d.ts +30 -0
  93. package/dist/esm/transport/nostr-server-transport.d.ts.map +1 -1
  94. package/dist/esm/transport/nostr-server-transport.js +64 -4
  95. package/dist/esm/transport/nostr-server-transport.js.map +1 -1
  96. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/payments/types.ts"],"names":[],"mappings":"AAqNA,MAAM,UAAU,gBAAgB,CAC9B,OAAuB;IAEvB,OAAO,CACJ,OAA0B,CAAC,MAAM,KAAK,SAAS;QAC/C,OAA0B,CAAC,EAAE,KAAK,SAAS,CAC7C,CAAC;AACJ,CAAC"}
@@ -24,6 +24,10 @@ export interface NostrTransportOptions extends BaseNostrTransportOptions {
24
24
  export declare class NostrClientTransport extends BaseNostrTransport implements Transport {
25
25
  /** Public event handlers required by the Transport interface */
26
26
  onmessage?: (message: JSONRPCMessage) => void;
27
+ onmessageWithContext?: (message: JSONRPCMessage, ctx: {
28
+ eventId: string;
29
+ correlatedEventId?: string;
30
+ }) => void;
27
31
  onclose?: () => void;
28
32
  onerror?: (error: Error) => void;
29
33
  /** The server's public key for message targeting */
@@ -34,6 +38,8 @@ export declare class NostrClientTransport extends BaseNostrTransport implements
34
38
  private readonly statelessHandler;
35
39
  /** Whether stateless mode is enabled */
36
40
  private readonly isStateless;
41
+ /** Optional list of client-supported PMIs (ordered by preference). */
42
+ private clientPmis;
37
43
  /** The server's initialize event, if received */
38
44
  private serverInitializeEvent;
39
45
  /**
@@ -42,6 +48,12 @@ export declare class NostrClientTransport extends BaseNostrTransport implements
42
48
  * @throws Error if serverPubkey is not a valid hex public key
43
49
  */
44
50
  constructor(options: NostrTransportOptions);
51
+ /**
52
+ * Sets the client PMI preference list used for CEP-8 discovery/negotiation.
53
+ *
54
+ * Intended to be called by payments wrappers (e.g. `withClientPayments()`).
55
+ */
56
+ setClientPmis(pmis: readonly string[]): void;
45
57
  /**
46
58
  * Starts the transport, connecting to the relay and setting up event listeners.
47
59
  */
@@ -1 +1 @@
1
- {"version":3,"file":"nostr-client-transport.d.ts","sourceRoot":"","sources":["../../../src/transport/nostr-client-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,cAAc,EAIpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAQ/E,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EAC1B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGhF;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,yBAAyB;IACtE,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED;;;;GAIG;AACH,qBAAa,oBACX,SAAQ,kBACR,YAAW,SAAS;IAEpB,gEAAgE;IACzD,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAC;IAC9C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAExC,oDAAoD;IACpD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,gEAAgE;IAChE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAyB;IAC1D,0DAA0D;IAC1D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuB;IACxD,wCAAwC;IACxC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAU;IACtC,iDAAiD;IACjD,OAAO,CAAC,qBAAqB,CAAyB;IAEtD;;;;OAIG;gBACS,OAAO,EAAE,qBAAqB;IAmB1C;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BnC;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAWnC;;;;OAIG;IACU,IAAI,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BzD;;;;OAIG;YACW,WAAW;IAmBzB;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAmBjC;;;OAGG;YACW,oBAAoB;IAqGlC;;;OAGG;IACI,wBAAwB,IAAI,UAAU,GAAG,SAAS;IAIzD;;;;OAIG;IACH,OAAO,CAAC,cAAc;IA2BtB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAwB1B;;;OAGG;IACH,0BAA0B;;;;;CAO3B"}
1
+ {"version":3,"file":"nostr-client-transport.d.ts","sourceRoot":"","sources":["../../../src/transport/nostr-client-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,cAAc,EAMpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAQ/E,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EAC1B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGhF;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,yBAAyB;IACtE,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED;;;;GAIG;AACH,qBAAa,oBACX,SAAQ,kBACR,YAAW,SAAS;IAEpB,gEAAgE;IACzD,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAC;IAC9C,oBAAoB,CAAC,EAAE,CAC5B,OAAO,EAAE,cAAc,EACvB,GAAG,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,KACjD,IAAI,CAAC;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAExC,oDAAoD;IACpD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,gEAAgE;IAChE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAyB;IAC1D,0DAA0D;IAC1D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuB;IACxD,wCAAwC;IACxC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAU;IACtC,sEAAsE;IACtE,OAAO,CAAC,UAAU,CAAgC;IAClD,iDAAiD;IACjD,OAAO,CAAC,qBAAqB,CAAyB;IAEtD;;;;OAIG;gBACS,OAAO,EAAE,qBAAqB;IAmB1C;;;;OAIG;IACI,aAAa,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;IAInD;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BnC;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAWnC;;;;OAIG;IACU,IAAI,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BzD;;;;OAIG;YACW,WAAW;IAyBzB;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAmBjC;;;OAGG;YACW,oBAAoB;IA6HlC;;;OAGG;IACI,wBAAwB,IAAI,UAAU,GAAG,SAAS;IAIzD;;;;OAIG;IACH,OAAO,CAAC,cAAc;IA2BtB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAgC1B;;;OAGG;IACH,0BAA0B;;;;;CAO3B"}
@@ -1,4 +1,4 @@
1
- import { InitializeResultSchema, NotificationSchema, isJSONRPCRequest, isJSONRPCNotification, } from '@modelcontextprotocol/sdk/types.js';
1
+ import { InitializeResultSchema, NotificationSchema, isJSONRPCRequest, isJSONRPCNotification, isJSONRPCResultResponse, isJSONRPCErrorResponse, } from '@modelcontextprotocol/sdk/types.js';
2
2
  import { CTXVM_MESSAGES_KIND, GIFT_WRAP_KIND, decryptMessage, DEFAULT_LRU_SIZE, INITIALIZE_METHOD, } from '../core/index.js';
3
3
  import { BaseNostrTransport, } from './base-nostr-transport.js';
4
4
  import { getNostrEventTag } from '../core/utils/serializers.js';
@@ -33,6 +33,14 @@ export class NostrClientTransport extends BaseNostrTransport {
33
33
  });
34
34
  this.statelessHandler = new StatelessModeHandler();
35
35
  }
36
+ /**
37
+ * Sets the client PMI preference list used for CEP-8 discovery/negotiation.
38
+ *
39
+ * Intended to be called by payments wrappers (e.g. `withClientPayments()`).
40
+ */
41
+ setClientPmis(pmis) {
42
+ this.clientPmis = pmis;
43
+ }
36
44
  /**
37
45
  * Starts the transport, connecting to the relay and setting up event listeners.
38
46
  */
@@ -120,11 +128,15 @@ export class NostrClientTransport extends BaseNostrTransport {
120
128
  * @returns The ID of the published Nostr event
121
129
  */
122
130
  async sendRequest(message) {
123
- const tags = this.createRecipientTags(this.serverPubkey);
131
+ const isRequest = isJSONRPCRequest(message);
132
+ const pmiTags = isRequest && this.clientPmis
133
+ ? this.clientPmis.map((pmi) => ['pmi', pmi])
134
+ : [];
135
+ const tags = [...this.createRecipientTags(this.serverPubkey), ...pmiTags];
124
136
  return await this.sendMcpMessage(message, this.serverPubkey, CTXVM_MESSAGES_KIND, tags, undefined, (eventId) => {
125
137
  this.correlationStore.registerRequest(eventId, {
126
- originalRequestId: isJSONRPCRequest(message) ? message.id : null,
127
- isInitialize: isJSONRPCRequest(message) && message.method === INITIALIZE_METHOD,
138
+ originalRequestId: isRequest ? message.id : null,
139
+ isInitialize: isRequest && message.method === INITIALIZE_METHOD,
128
140
  });
129
141
  });
130
142
  }
@@ -203,25 +215,40 @@ export class NostrClientTransport extends BaseNostrTransport {
203
215
  });
204
216
  }
205
217
  }
206
- if (eTag && !this.correlationStore.hasPendingRequest(eTag)) {
207
- this.logger.warn('Received response for unknown/expired request', {
208
- eventId: nostrEvent.id,
209
- eTag,
210
- reason: 'Request not found in pending set - may be duplicate or late response',
211
- });
212
- return;
213
- }
214
218
  const mcpMessage = this.convertNostrEventToMcpMessage(nostrEvent);
215
219
  if (!mcpMessage) {
216
220
  this.logger.error('Skipping invalid Nostr event with malformed JSON content', { eventId: nostrEvent.id, pubkey: nostrEvent.pubkey });
217
221
  return;
218
222
  }
219
- if (eTag) {
223
+ // Message classification MUST be based on JSON-RPC type, not on the presence of an `e` tag.
224
+ // CEP-8 notifications are correlated (include `e`) but are still notifications.
225
+ if (isJSONRPCResultResponse(mcpMessage) ||
226
+ isJSONRPCErrorResponse(mcpMessage)) {
227
+ if (!eTag) {
228
+ this.logger.warn('Received JSON-RPC response without correlation `e` tag', {
229
+ eventId: nostrEvent.id,
230
+ });
231
+ return;
232
+ }
233
+ if (!this.correlationStore.hasPendingRequest(eTag)) {
234
+ this.logger.warn('Received response for unknown/expired request', {
235
+ eventId: nostrEvent.id,
236
+ eTag,
237
+ reason: 'Request not found in pending set - may be duplicate or late response',
238
+ });
239
+ return;
240
+ }
220
241
  this.handleResponse(eTag, mcpMessage);
242
+ return;
221
243
  }
222
- else {
223
- this.handleNotification(mcpMessage);
244
+ if (isJSONRPCNotification(mcpMessage)) {
245
+ this.handleNotification(nostrEvent.id, eTag !== null && eTag !== void 0 ? eTag : undefined, mcpMessage);
246
+ return;
224
247
  }
248
+ this.logger.warn('Received unsupported JSON-RPC message type', {
249
+ eventId: nostrEvent.id,
250
+ hasETag: !!eTag,
251
+ });
225
252
  }
226
253
  catch (error) {
227
254
  this.logger.error('Error handling incoming Nostr event', {
@@ -274,8 +301,8 @@ export class NostrClientTransport extends BaseNostrTransport {
274
301
  * Handles notification messages by validating and forwarding them.
275
302
  * @param mcpMessage - The JSON-RPC notification message
276
303
  */
277
- handleNotification(mcpMessage) {
278
- var _a, _b;
304
+ handleNotification(eventId, correlatedEventId, mcpMessage) {
305
+ var _a, _b, _c;
279
306
  try {
280
307
  const result = NotificationSchema.safeParse(mcpMessage);
281
308
  if (!result.success) {
@@ -286,13 +313,17 @@ export class NostrClientTransport extends BaseNostrTransport {
286
313
  return;
287
314
  }
288
315
  (_a = this.onmessage) === null || _a === void 0 ? void 0 : _a.call(this, mcpMessage);
316
+ (_b = this.onmessageWithContext) === null || _b === void 0 ? void 0 : _b.call(this, mcpMessage, {
317
+ eventId,
318
+ correlatedEventId,
319
+ });
289
320
  }
290
321
  catch (error) {
291
322
  this.logger.error('Failed to handle incoming notification', {
292
323
  error: error instanceof Error ? error.message : String(error),
293
324
  stack: error instanceof Error ? error.stack : undefined,
294
325
  });
295
- (_b = this.onerror) === null || _b === void 0 ? void 0 : _b.call(this, error instanceof Error
326
+ (_c = this.onerror) === null || _c === void 0 ? void 0 : _c.call(this, error instanceof Error
296
327
  ? error
297
328
  : new Error('Failed to handle incoming notification'));
298
329
  }
@@ -1 +1 @@
1
- {"version":3,"file":"nostr-client-transport.js","sourceRoot":"","sources":["../../../src/transport/nostr-client-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nostr-client-transport.js","sourceRoot":"","sources":["../../../src/transport/nostr-client-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAElB,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,GAEvB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,kBAAkB,GAEnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAGhE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAcrD;;;;GAIG;AACH,MAAM,OAAO,oBACX,SAAQ,kBAAkB;IAyB1B;;;;OAIG;IACH,YAAY,OAA8B;;QACxC,KAAK,CAAC,wBAAwB,EAAE,OAAO,CAAC,CAAC;QAEzC,qCAAqC;QACrC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CAAC,gCAAgC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,MAAA,OAAO,CAAC,WAAW,mCAAI,KAAK,CAAC;QAChD,IAAI,CAAC,gBAAgB,GAAG,IAAI,sBAAsB,CAAC;YACjD,kBAAkB,EAAE,gBAAgB;YACpC,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE;gBAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAC5D,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,GAAG,IAAI,oBAAoB,EAAE,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAC,IAAuB;QAC1C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IACzB,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,KAAK;;QAChB,IAAI,CAAC;YACH,mDAAmD;YACnD,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACpD,IAAI,CAAC,OAAO,EAAE;gBACd,IAAI,CAAC,YAAY,EAAE;aACpB,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;YAEvD,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;;gBAC5C,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;gBACzC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE;wBACnD,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;wBAC7D,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;wBACvD,OAAO,EAAE,KAAK,CAAC,EAAE;qBAClB,CAAC,CAAC;oBACH,MAAA,IAAI,CAAC,OAAO,qDACV,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAC1D,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAA,IAAI,CAAC,OAAO,qDAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC1E,IAAI,CAAC,kBAAkB,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,KAAK;;QAChB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YACxB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAA,IAAI,CAAC,OAAO,oDAAI,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAA,IAAI,CAAC,OAAO,qDAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC1E,IAAI,CAAC,kBAAkB,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,IAAI,CAAC,OAAuB;;QACvC,IAAI,CAAC;YACH,IACE,IAAI,CAAC,WAAW;gBAChB,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,OAAO,CAAC,EACtD,CAAC;gBACD,IAAI,gBAAgB,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,iBAAiB,EAAE,CAAC;oBACtE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;oBACnE,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAAqB,CAAC,CAAC;oBAC9D,OAAO;gBACT,CAAC;gBACD,OAAO;YACT,CAAC;YAED,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAA,IAAI,CAAC,OAAO,qDAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC1E,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,EAAE,KAAK,EAAE;gBACtD,WAAW,EAAE,gBAAgB,CAAC,OAAO,CAAC;oBACpC,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC;wBAC9B,CAAC,CAAC,cAAc;wBAChB,CAAC,CAAC,SAAS;gBACf,MAAM,EACJ,gBAAgB,CAAC,OAAO,CAAC,IAAI,qBAAqB,CAAC,OAAO,CAAC;oBACzD,CAAC,CAAC,OAAO,CAAC,MAAM;oBAChB,CAAC,CAAC,SAAS;aAChB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,WAAW,CAAC,OAAuB;QAC/C,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAE5C,MAAM,OAAO,GACX,SAAS,IAAI,IAAI,CAAC,UAAU;YAC1B,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAa,CAAC;YACxD,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC;QAE1E,OAAO,MAAM,IAAI,CAAC,cAAc,CAC9B,OAAO,EACP,IAAI,CAAC,YAAY,EACjB,mBAAmB,EACnB,IAAI,EACJ,SAAS,EACT,CAAC,OAAO,EAAE,EAAE;YACV,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,EAAE;gBAC7C,iBAAiB,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;gBAChD,YAAY,EAAE,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,iBAAiB;aAChE,CAAC,CAAC;QACL,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,yBAAyB,CAAC,SAA0B;QAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;QAEzE,cAAc,CAAC,GAAG,EAAE;;YAClB,IAAI,CAAC;gBACH,MAAA,IAAI,CAAC,SAAS,qDAAG,QAAQ,CAAC,CAAC;YAC7B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gDAAgD,EAAE;oBAClE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC7D,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;oBACvD,SAAS;iBACV,CAAC,CAAC;gBACH,MAAA,IAAI,CAAC,OAAO,qDACV,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAC1D,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,oBAAoB,CAAC,KAAiB;;QAClD,IAAI,CAAC;YACH,IAAI,UAAU,GAAG,KAAK,CAAC;YAEvB,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBAClC,IAAI,CAAC;oBACH,MAAM,gBAAgB,GAAG,MAAM,WAAW,CACxC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,EAClC,KAAK,EACL,2BAA2B,CAC5B,CAAC;oBACF,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAe,CAAC;gBAC1D,CAAC;gBAAC,OAAO,YAAY,EAAE,CAAC;oBACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE;wBACxD,KAAK,EACH,YAAY,YAAY,KAAK;4BAC3B,CAAC,CAAC,YAAY,CAAC,OAAO;4BACtB,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;wBAC1B,KAAK,EACH,YAAY,YAAY,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;wBAChE,OAAO,EAAE,KAAK,CAAC,EAAE;wBACjB,MAAM,EAAE,KAAK,CAAC,MAAM;qBACrB,CAAC,CAAC;oBACH,MAAA,IAAI,CAAC,OAAO,qDACV,YAAY,YAAY,KAAK;wBAC3B,CAAC,CAAC,YAAY;wBACd,CAAC,CAAC,IAAI,KAAK,CAAC,sCAAsC,CAAC,CACtD,CAAC;oBACF,OAAO;gBACT,CAAC;YACH,CAAC;YAED,IAAI,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+CAA+C,EAAE;oBACjE,cAAc,EAAE,UAAU,CAAC,MAAM;oBACjC,cAAc,EAAE,IAAI,CAAC,YAAY;oBACjC,OAAO,EAAE,UAAU,CAAC,EAAE;iBACvB,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,MAAM,IAAI,GAAG,gBAAgB,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAEpD,IAAI,CAAC,IAAI,CAAC,qBAAqB,IAAI,IAAI,EAAE,CAAC;gBACxC,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;oBAC/C,MAAM,KAAK,GAAG,sBAAsB,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;oBAC/D,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;wBAClB,IAAI,CAAC,qBAAqB,GAAG,UAAU,CAAC;wBACxC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE;4BACnD,OAAO,EAAE,UAAU,CAAC,EAAE;yBACvB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAAC,WAAM,CAAC;oBACP,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE;wBAC5D,OAAO,EAAE,UAAU,CAAC,EAAE;qBACvB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC;YAElE,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,0DAA0D,EAC1D,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CACtD,CAAC;gBACF,OAAO;YACT,CAAC;YAED,4FAA4F;YAC5F,gFAAgF;YAChF,IACE,uBAAuB,CAAC,UAAU,CAAC;gBACnC,sBAAsB,CAAC,UAAU,CAAC,EAClC,CAAC;gBACD,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,wDAAwD,EACxD;wBACE,OAAO,EAAE,UAAU,CAAC,EAAE;qBACvB,CACF,CAAC;oBACF,OAAO;gBACT,CAAC;gBAED,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+CAA+C,EAAE;wBAChE,OAAO,EAAE,UAAU,CAAC,EAAE;wBACtB,IAAI;wBACJ,MAAM,EACJ,sEAAsE;qBACzE,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBAED,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;gBACtC,OAAO;YACT,CAAC;YAED,IAAI,qBAAqB,CAAC,UAAU,CAAC,EAAE,CAAC;gBACtC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,SAAS,EAAE,UAAU,CAAC,CAAC;gBACtE,OAAO;YACT,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4CAA4C,EAAE;gBAC7D,OAAO,EAAE,UAAU,CAAC,EAAE;gBACtB,OAAO,EAAE,CAAC,CAAC,IAAI;aAChB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE;gBACvD,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC7D,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBACvD,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC,CAAC;YACH,MAAA,IAAI,CAAC,OAAO,qDACV,KAAK,YAAY,KAAK;gBACpB,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,IAAI,KAAK,CAAC,uCAAuC,CAAC,CACvD,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACI,wBAAwB;QAC7B,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACK,cAAc,CACpB,iBAAyB,EACzB,UAA0B;;QAE1B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CACpD,iBAAiB,EACjB,UAA6B,CAC9B,CAAC;YAEF,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAA,IAAI,CAAC,SAAS,qDAAG,UAAU,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;oBAC/C,OAAO,EAAE,iBAAiB;iBAC3B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE;gBAC3C,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC7D,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBACvD,iBAAiB;aAClB,CAAC,CAAC;YACH,MAAA,IAAI,CAAC,OAAO,qDAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,kBAAkB,CACxB,OAAe,EACf,iBAAqC,EACrC,UAA0B;;QAE1B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE;oBAC9C,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;oBAC3B,OAAO,EAAE,UAAU;iBACpB,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,MAAA,IAAI,CAAC,SAAS,qDAAG,UAAU,CAAC,CAAC;YAC7B,MAAA,IAAI,CAAC,oBAAoB,qDAAG,UAAU,EAAE;gBACtC,OAAO;gBACP,iBAAiB;aAClB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE;gBAC1D,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC7D,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;aACxD,CAAC,CAAC;YACH,MAAA,IAAI,CAAC,OAAO,qDACV,KAAK,YAAY,KAAK;gBACpB,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,IAAI,KAAK,CAAC,wCAAwC,CAAC,CACxD,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,0BAA0B;QACxB,OAAO;YACL,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;SAClD,CAAC;IACJ,CAAC;CACF"}
@@ -25,6 +25,10 @@ export interface AnnouncementManagerOptions {
25
25
  serverInfo?: ServerInfo;
26
26
  /** Encryption mode for determining tag inclusion */
27
27
  encryptionMode: EncryptionMode;
28
+ /** Optional extra tags to include in server announcement + initialize response events (e.g. `pmi`). */
29
+ extraCommonTags?: string[][];
30
+ /** Optional capability pricing tags to include in announcement + capability list events (e.g. `cap`). */
31
+ pricingTags?: string[][];
28
32
  /** Callback to send a message to the MCP server */
29
33
  onSendMessage: (message: JSONRPCMessage) => void;
30
34
  /** Callback to publish a Nostr event */
@@ -55,6 +59,8 @@ export interface AnnouncementManagerOptions {
55
59
  export declare class AnnouncementManager {
56
60
  private readonly serverInfo?;
57
61
  private readonly encryptionMode;
62
+ private extraCommonTags;
63
+ private pricingTags;
58
64
  private readonly onSendMessage;
59
65
  private readonly onPublishEvent;
60
66
  private readonly onSignEvent;
@@ -66,6 +72,18 @@ export declare class AnnouncementManager {
66
72
  private initializationResolver?;
67
73
  private cachedCommonTags?;
68
74
  constructor(options: AnnouncementManagerOptions);
75
+ /**
76
+ * Updates extra common tags used for announcement and initialize response events.
77
+ *
78
+ * This is used as an integration seam for optional protocol extensions (e.g. CEP-8 PMI discovery).
79
+ */
80
+ setExtraCommonTags(tags: string[][]): void;
81
+ /**
82
+ * Updates pricing tags used for announcement and capability list events.
83
+ *
84
+ * This is used for CEP-8 capability pricing advertisement (`cap` tags).
85
+ */
86
+ setPricingTags(tags: string[][]): void;
69
87
  /**
70
88
  * Generates common tags from server information for use in Nostr events.
71
89
  * @returns Array of tag arrays for Nostr events.
@@ -1 +1 @@
1
- {"version":3,"file":"announcement-manager.d.ts","sourceRoot":"","sources":["../../../../src/transport/nostr-server/announcement-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"announcement-manager.d.ts","sourceRoot":"","sources":["../../../../src/transport/nostr-server/announcement-manager.ts"],"names":[],"mappings":"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"}
@@ -20,9 +20,12 @@ import { EncryptionMode } from '../../core/interfaces.js';
20
20
  */
21
21
  export class AnnouncementManager {
22
22
  constructor(options) {
23
+ var _a, _b;
23
24
  this.isInitialized = false;
24
25
  this.serverInfo = options.serverInfo;
25
26
  this.encryptionMode = options.encryptionMode;
27
+ this.extraCommonTags = (_a = options.extraCommonTags) !== null && _a !== void 0 ? _a : [];
28
+ this.pricingTags = (_b = options.pricingTags) !== null && _b !== void 0 ? _b : [];
26
29
  this.onSendMessage = options.onSendMessage;
27
30
  this.onPublishEvent = options.onPublishEvent;
28
31
  this.onSignEvent = options.onSignEvent;
@@ -30,6 +33,23 @@ export class AnnouncementManager {
30
33
  this.onSubscribe = options.onSubscribe;
31
34
  this.logger = options.logger;
32
35
  }
36
+ /**
37
+ * Updates extra common tags used for announcement and initialize response events.
38
+ *
39
+ * This is used as an integration seam for optional protocol extensions (e.g. CEP-8 PMI discovery).
40
+ */
41
+ setExtraCommonTags(tags) {
42
+ this.extraCommonTags = tags;
43
+ this.cachedCommonTags = undefined;
44
+ }
45
+ /**
46
+ * Updates pricing tags used for announcement and capability list events.
47
+ *
48
+ * This is used for CEP-8 capability pricing advertisement (`cap` tags).
49
+ */
50
+ setPricingTags(tags) {
51
+ this.pricingTags = tags;
52
+ }
33
53
  /**
34
54
  * Generates common tags from server information for use in Nostr events.
35
55
  * @returns Array of tag arrays for Nostr events.
@@ -55,6 +75,9 @@ export class AnnouncementManager {
55
75
  if (this.encryptionMode !== EncryptionMode.DISABLED) {
56
76
  commonTags.push([NOSTR_TAGS.SUPPORT_ENCRYPTION]);
57
77
  }
78
+ for (const tag of this.extraCommonTags) {
79
+ commonTags.push(tag);
80
+ }
58
81
  this.cachedCommonTags = commonTags;
59
82
  return commonTags;
60
83
  }
@@ -64,24 +87,36 @@ export class AnnouncementManager {
64
87
  */
65
88
  getAnnouncementMapping() {
66
89
  const commonTags = this.getCommonTags();
90
+ const pricingTags = this.pricingTags;
91
+ const serverAnnouncementTags = pricingTags.length
92
+ ? [...commonTags, ...pricingTags]
93
+ : commonTags;
67
94
  return [
68
95
  {
69
96
  schema: InitializeResultSchema,
70
97
  kind: SERVER_ANNOUNCEMENT_KIND,
71
- tags: commonTags,
98
+ tags: serverAnnouncementTags,
99
+ },
100
+ {
101
+ schema: ListToolsResultSchema,
102
+ kind: TOOLS_LIST_KIND,
103
+ tags: pricingTags,
72
104
  },
73
- { schema: ListToolsResultSchema, kind: TOOLS_LIST_KIND, tags: [] },
74
105
  {
75
106
  schema: ListResourcesResultSchema,
76
107
  kind: RESOURCES_LIST_KIND,
77
- tags: [],
108
+ tags: pricingTags,
78
109
  },
79
110
  {
80
111
  schema: ListResourceTemplatesResultSchema,
81
112
  kind: RESOURCETEMPLATES_LIST_KIND,
82
- tags: [],
113
+ tags: pricingTags,
114
+ },
115
+ {
116
+ schema: ListPromptsResultSchema,
117
+ kind: PROMPTS_LIST_KIND,
118
+ tags: pricingTags,
83
119
  },
84
- { schema: ListPromptsResultSchema, kind: PROMPTS_LIST_KIND, tags: [] },
85
120
  ];
86
121
  }
87
122
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"announcement-manager.js","sourceRoot":"","sources":["../../../../src/transport/nostr-server/announcement-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"announcement-manager.js","sourceRoot":"","sources":["../../../../src/transport/nostr-server/announcement-manager.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,18 @@ export interface NostrServerTransportOptions extends BaseNostrTransportOptions {
33
33
  clientPubkey: string;
34
34
  session: ClientSession;
35
35
  }) => void | Promise<void>;
36
+ /**
37
+ * Optional inbound middleware hook to gate or transform messages before they are
38
+ * forwarded to MCP server code via `onmessage` / `onmessageWithContext`.
39
+ */
40
+ inboundMiddleware?: (message: JSONRPCMessage, ctx: {
41
+ clientPubkey: string;
42
+ }, forward: (message: JSONRPCMessage) => Promise<void>) => Promise<void>;
36
43
  }
44
+ export type InboundMiddlewareFn = (message: JSONRPCMessage, ctx: {
45
+ clientPubkey: string;
46
+ clientPmis?: readonly string[];
47
+ }, forward: (message: JSONRPCMessage) => Promise<void>) => Promise<void>;
37
48
  /**
38
49
  * A server-side transport layer for CTXVM that uses Nostr events for communication.
39
50
  * This transport listens for incoming MCP requests via Nostr events and can send
@@ -53,7 +64,26 @@ export declare class NostrServerTransport extends BaseNostrTransport implements
53
64
  private readonly announcementManager;
54
65
  private readonly injectClientPubkey;
55
66
  private readonly onClientSessionEvicted;
67
+ private readonly inboundMiddlewares;
56
68
  constructor(options: NostrServerTransportOptions);
69
+ /**
70
+ * Sets extra tags to include in server announcement + initialize response events.
71
+ *
72
+ * Intended for optional protocol extensions (e.g. CEP-8 PMI discovery).
73
+ */
74
+ setAnnouncementExtraTags(tags: string[][]): void;
75
+ /**
76
+ * Sets pricing tags to include in server announcement + tools list announcement events.
77
+ *
78
+ * Intended for CEP-8 `cap` tag pricing advertisement.
79
+ */
80
+ setAnnouncementPricingTags(tags: string[][]): void;
81
+ /**
82
+ * Adds an inbound middleware function.
83
+ *
84
+ * Middleware runs in the order it is added.
85
+ */
86
+ addInboundMiddleware(middleware: InboundMiddlewareFn): void;
57
87
  /**
58
88
  * Starts the transport, connecting to the relay and setting up event listeners
59
89
  * to receive incoming MCP requests.
@@ -1 +1 @@
1
- {"version":3,"file":"nostr-server-transport.d.ts","sourceRoot":"","sources":["../../../src/transport/nostr-server-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nostr-server-transport.d.ts","sourceRoot":"","sources":["../../../src/transport/nostr-server-transport.ts"],"names":[],"mappings":"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"}
@@ -17,8 +17,12 @@ export class NostrServerTransport extends BaseNostrTransport {
17
17
  constructor(options) {
18
18
  var _a, _b;
19
19
  super('nostr-server-transport', options);
20
+ this.inboundMiddlewares = [];
20
21
  this.injectClientPubkey = (_a = options.injectClientPubkey) !== null && _a !== void 0 ? _a : false;
21
22
  this.onClientSessionEvicted = options.onClientSessionEvicted;
23
+ if (options.inboundMiddleware) {
24
+ this.inboundMiddlewares.push(options.inboundMiddleware);
25
+ }
22
26
  // Initialize authorization policy
23
27
  this.authorizationPolicy = new AuthorizationPolicy({
24
28
  allowedPublicKeys: options.allowedPublicKeys
@@ -66,6 +70,8 @@ export class NostrServerTransport extends BaseNostrTransport {
66
70
  this.announcementManager = new AnnouncementManager({
67
71
  serverInfo: options.serverInfo,
68
72
  encryptionMode: this.encryptionMode,
73
+ extraCommonTags: [],
74
+ pricingTags: [],
69
75
  onSendMessage: (message) => { var _a; return (_a = this.onmessage) === null || _a === void 0 ? void 0 : _a.call(this, message); },
70
76
  onPublishEvent: (event) => this.publishEvent(event),
71
77
  onSignEvent: (eventTemplate) => this.signer.signEvent(eventTemplate),
@@ -74,6 +80,30 @@ export class NostrServerTransport extends BaseNostrTransport {
74
80
  logger: this.logger,
75
81
  });
76
82
  }
83
+ /**
84
+ * Sets extra tags to include in server announcement + initialize response events.
85
+ *
86
+ * Intended for optional protocol extensions (e.g. CEP-8 PMI discovery).
87
+ */
88
+ setAnnouncementExtraTags(tags) {
89
+ this.announcementManager.setExtraCommonTags(tags);
90
+ }
91
+ /**
92
+ * Sets pricing tags to include in server announcement + tools list announcement events.
93
+ *
94
+ * Intended for CEP-8 `cap` tag pricing advertisement.
95
+ */
96
+ setAnnouncementPricingTags(tags) {
97
+ this.announcementManager.setPricingTags(tags);
98
+ }
99
+ /**
100
+ * Adds an inbound middleware function.
101
+ *
102
+ * Middleware runs in the order it is added.
103
+ */
104
+ addInboundMiddleware(middleware) {
105
+ this.inboundMiddlewares.push(middleware);
106
+ }
77
107
  /**
78
108
  * Starts the transport, connecting to the relay and setting up event listeners
79
109
  * to receive incoming MCP requests.
@@ -387,7 +417,7 @@ export class NostrServerTransport extends BaseNostrTransport {
387
417
  * @param isEncrypted Whether the original event was encrypted.
388
418
  */
389
419
  authorizeAndProcessEvent(event, isEncrypted) {
390
- var _a, _b, _c;
420
+ var _a;
391
421
  try {
392
422
  const mcpMessage = this.convertNostrEventToMcpMessage(event);
393
423
  if (!mcpMessage) {
@@ -439,9 +469,39 @@ export class NostrServerTransport extends BaseNostrTransport {
439
469
  else if (isJSONRPCNotification(mcpMessage)) {
440
470
  this.handleIncomingNotification(event.pubkey, mcpMessage);
441
471
  }
442
- (_a = this.onmessage) === null || _a === void 0 ? void 0 : _a.call(this, mcpMessage);
443
- (_b = this.onmessageWithContext) === null || _b === void 0 ? void 0 : _b.call(this, mcpMessage, {
472
+ const forward = async (msg) => {
473
+ var _a, _b;
474
+ (_a = this.onmessage) === null || _a === void 0 ? void 0 : _a.call(this, msg);
475
+ (_b = this.onmessageWithContext) === null || _b === void 0 ? void 0 : _b.call(this, msg, {
476
+ clientPubkey: event.pubkey,
477
+ });
478
+ };
479
+ const clientPmis = event.tags
480
+ .filter((tag) => tag[0] === 'pmi' && typeof tag[1] === 'string')
481
+ .map((tag) => tag[1]);
482
+ const ctx = {
444
483
  clientPubkey: event.pubkey,
484
+ clientPmis: clientPmis.length > 0 ? clientPmis : undefined,
485
+ };
486
+ const middlewares = this.inboundMiddlewares;
487
+ const dispatch = async (index, msg) => {
488
+ const mw = middlewares[index];
489
+ if (!mw) {
490
+ await forward(msg);
491
+ return;
492
+ }
493
+ await mw(msg, ctx, async (nextMsg) => {
494
+ await dispatch(index + 1, nextMsg);
495
+ });
496
+ };
497
+ void dispatch(0, mcpMessage).catch((err) => {
498
+ var _a;
499
+ this.logger.error('Error in inboundMiddleware chain', {
500
+ error: err instanceof Error ? err.message : String(err),
501
+ eventId: event.id,
502
+ pubkey: event.pubkey,
503
+ });
504
+ (_a = this.onerror) === null || _a === void 0 ? void 0 : _a.call(this, err instanceof Error ? err : new Error('inboundMiddleware failed'));
445
505
  });
446
506
  }
447
507
  catch (error) {
@@ -451,7 +511,7 @@ export class NostrServerTransport extends BaseNostrTransport {
451
511
  eventId: event.id,
452
512
  pubkey: event.pubkey,
453
513
  });
454
- (_c = this.onerror) === null || _c === void 0 ? void 0 : _c.call(this, error instanceof Error ? error : new Error(String(error)));
514
+ (_a = this.onerror) === null || _a === void 0 ? void 0 : _a.call(this, error instanceof Error ? error : new Error(String(error)));
455
515
  }
456
516
  }
457
517
  /**