@contextvm/sdk 0.11.7 → 0.11.9

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 (89) hide show
  1. package/dist/esm/core/utils/base64.d.ts +3 -0
  2. package/dist/esm/core/utils/base64.d.ts.map +1 -0
  3. package/dist/esm/core/utils/base64.js +24 -0
  4. package/dist/esm/core/utils/base64.js.map +1 -0
  5. package/dist/esm/payments/handlers/ln-bolt11-lnbits-payment-handler.d.ts.map +1 -1
  6. package/dist/esm/payments/handlers/ln-bolt11-lnbits-payment-handler.js +2 -1
  7. package/dist/esm/payments/handlers/ln-bolt11-lnbits-payment-handler.js.map +1 -1
  8. package/dist/esm/payments/processors/ln-bolt11-lnbits-payment-processor.d.ts.map +1 -1
  9. package/dist/esm/payments/processors/ln-bolt11-lnbits-payment-processor.js +2 -1
  10. package/dist/esm/payments/processors/ln-bolt11-lnbits-payment-processor.js.map +1 -1
  11. package/dist/esm/transport/capability-negotiator.d.ts +141 -0
  12. package/dist/esm/transport/capability-negotiator.d.ts.map +1 -0
  13. package/dist/esm/transport/capability-negotiator.js +198 -0
  14. package/dist/esm/transport/capability-negotiator.js.map +1 -0
  15. package/dist/esm/transport/middleware.d.ts +9 -0
  16. package/dist/esm/transport/middleware.d.ts.map +1 -0
  17. package/dist/esm/transport/middleware.js +2 -0
  18. package/dist/esm/transport/middleware.js.map +1 -0
  19. package/dist/esm/transport/nostr-client/event-pipeline.d.ts +29 -0
  20. package/dist/esm/transport/nostr-client/event-pipeline.d.ts.map +1 -0
  21. package/dist/esm/transport/nostr-client/event-pipeline.js +109 -0
  22. package/dist/esm/transport/nostr-client/event-pipeline.js.map +1 -0
  23. package/dist/esm/transport/nostr-client/inbound-coordinator.d.ts +37 -0
  24. package/dist/esm/transport/nostr-client/inbound-coordinator.d.ts.map +1 -0
  25. package/dist/esm/transport/nostr-client/inbound-coordinator.js +159 -0
  26. package/dist/esm/transport/nostr-client/inbound-coordinator.js.map +1 -0
  27. package/dist/esm/transport/nostr-client/inbound-notification-dispatcher.d.ts +28 -0
  28. package/dist/esm/transport/nostr-client/inbound-notification-dispatcher.d.ts.map +1 -0
  29. package/dist/esm/transport/nostr-client/inbound-notification-dispatcher.js +65 -0
  30. package/dist/esm/transport/nostr-client/inbound-notification-dispatcher.js.map +1 -0
  31. package/dist/esm/transport/nostr-client/open-stream-factory.d.ts +36 -0
  32. package/dist/esm/transport/nostr-client/open-stream-factory.d.ts.map +1 -0
  33. package/dist/esm/transport/nostr-client/open-stream-factory.js +126 -0
  34. package/dist/esm/transport/nostr-client/open-stream-factory.js.map +1 -0
  35. package/dist/esm/transport/nostr-client/outbound-sender.d.ts +45 -0
  36. package/dist/esm/transport/nostr-client/outbound-sender.d.ts.map +1 -0
  37. package/dist/esm/transport/nostr-client/outbound-sender.js +105 -0
  38. package/dist/esm/transport/nostr-client/outbound-sender.js.map +1 -0
  39. package/dist/esm/transport/nostr-client/server-metadata-store.d.ts +35 -0
  40. package/dist/esm/transport/nostr-client/server-metadata-store.d.ts.map +1 -0
  41. package/dist/esm/transport/nostr-client/server-metadata-store.js +107 -0
  42. package/dist/esm/transport/nostr-client/server-metadata-store.js.map +1 -0
  43. package/dist/esm/transport/nostr-client-transport.d.ts +18 -41
  44. package/dist/esm/transport/nostr-client-transport.d.ts.map +1 -1
  45. package/dist/esm/transport/nostr-client-transport.js +117 -553
  46. package/dist/esm/transport/nostr-client-transport.js.map +1 -1
  47. package/dist/esm/transport/nostr-server/correlation-store.d.ts +2 -2
  48. package/dist/esm/transport/nostr-server/correlation-store.d.ts.map +1 -1
  49. package/dist/esm/transport/nostr-server/correlation-store.js +12 -3
  50. package/dist/esm/transport/nostr-server/correlation-store.js.map +1 -1
  51. package/dist/esm/transport/nostr-server/event-pipeline.d.ts +32 -0
  52. package/dist/esm/transport/nostr-server/event-pipeline.d.ts.map +1 -0
  53. package/dist/esm/transport/nostr-server/event-pipeline.js +118 -0
  54. package/dist/esm/transport/nostr-server/event-pipeline.js.map +1 -0
  55. package/dist/esm/transport/nostr-server/inbound-coordinator.d.ts +56 -0
  56. package/dist/esm/transport/nostr-server/inbound-coordinator.d.ts.map +1 -0
  57. package/dist/esm/transport/nostr-server/inbound-coordinator.js +168 -0
  58. package/dist/esm/transport/nostr-server/inbound-coordinator.js.map +1 -0
  59. package/dist/esm/transport/nostr-server/inbound-notification-dispatcher.d.ts +44 -0
  60. package/dist/esm/transport/nostr-server/inbound-notification-dispatcher.d.ts.map +1 -0
  61. package/dist/esm/transport/nostr-server/inbound-notification-dispatcher.js +153 -0
  62. package/dist/esm/transport/nostr-server/inbound-notification-dispatcher.js.map +1 -0
  63. package/dist/esm/transport/nostr-server/open-stream-factory.d.ts +81 -0
  64. package/dist/esm/transport/nostr-server/open-stream-factory.d.ts.map +1 -0
  65. package/dist/esm/transport/nostr-server/open-stream-factory.js +224 -0
  66. package/dist/esm/transport/nostr-server/open-stream-factory.js.map +1 -0
  67. package/dist/esm/transport/nostr-server/outbound-notification-broadcaster.d.ts +24 -0
  68. package/dist/esm/transport/nostr-server/outbound-notification-broadcaster.d.ts.map +1 -0
  69. package/dist/esm/transport/nostr-server/outbound-notification-broadcaster.js +64 -0
  70. package/dist/esm/transport/nostr-server/outbound-notification-broadcaster.js.map +1 -0
  71. package/dist/esm/transport/nostr-server/outbound-response-router.d.ts +62 -0
  72. package/dist/esm/transport/nostr-server/outbound-response-router.d.ts.map +1 -0
  73. package/dist/esm/transport/nostr-server/outbound-response-router.js +125 -0
  74. package/dist/esm/transport/nostr-server/outbound-response-router.js.map +1 -0
  75. package/dist/esm/transport/nostr-server-transport.d.ts +15 -62
  76. package/dist/esm/transport/nostr-server-transport.d.ts.map +1 -1
  77. package/dist/esm/transport/nostr-server-transport.js +121 -741
  78. package/dist/esm/transport/nostr-server-transport.js.map +1 -1
  79. package/dist/esm/transport/open-stream/registry.d.ts.map +1 -1
  80. package/dist/esm/transport/open-stream/registry.js +7 -1
  81. package/dist/esm/transport/open-stream/registry.js.map +1 -1
  82. package/dist/esm/transport/open-stream/session.d.ts +1 -0
  83. package/dist/esm/transport/open-stream/session.d.ts.map +1 -1
  84. package/dist/esm/transport/open-stream/session.js +14 -4
  85. package/dist/esm/transport/open-stream/session.js.map +1 -1
  86. package/dist/esm/transport/open-stream/writer.d.ts.map +1 -1
  87. package/dist/esm/transport/open-stream/writer.js +6 -12
  88. package/dist/esm/transport/open-stream/writer.js.map +1 -1
  89. package/package.json +1 -1
@@ -0,0 +1,105 @@
1
+ import { isJSONRPCRequest, } from '@modelcontextprotocol/sdk/types.js';
2
+ import { CTXVM_MESSAGES_KIND, INITIALIZE_METHOD } from '../../core/index.js';
3
+ import { sendOversizedClientRequest } from './oversized-client-sender.js';
4
+ /**
5
+ * Encapsulates outbound client request routing, including CEP-22 oversized handling.
6
+ */
7
+ export class ClientOutboundSender {
8
+ constructor(deps) {
9
+ this.deps = deps;
10
+ }
11
+ /**
12
+ * Sends an MCP message to the server, registering correlation when applicable.
13
+ */
14
+ async sendRequest(message) {
15
+ var _a, _b;
16
+ const isRequest = isJSONRPCRequest(message);
17
+ // --- CEP-22 Oversized Transfer (proactive path) ---
18
+ if (this.deps.oversizedEnabled && isRequest) {
19
+ const progressToken = (_b = (_a = message.params) === null || _a === void 0 ? void 0 : _a._meta) === null || _b === void 0 ? void 0 : _b.progressToken;
20
+ if (progressToken !== undefined) {
21
+ const tags = this.deps.capabilityNegotiator.buildOutboundTags({
22
+ baseTags: this.deps.createRecipientTags(this.deps.serverPubkey),
23
+ includeDiscovery: isRequest,
24
+ });
25
+ const giftWrapKind = this.deps.capabilityNegotiator.chooseOutboundGiftWrapKind();
26
+ const publishedEventSize = await this.deps.measurePublishedMcpMessageSize(message, this.deps.serverPubkey, CTXVM_MESSAGES_KIND, tags, undefined, giftWrapKind);
27
+ if (publishedEventSize > this.deps.oversizedThreshold) {
28
+ await this.sendOversizedRequest(message, String(progressToken), giftWrapKind);
29
+ return 'oversized-transfer';
30
+ }
31
+ }
32
+ }
33
+ const tags = this.deps.capabilityNegotiator.buildOutboundTags({
34
+ baseTags: this.deps.createRecipientTags(this.deps.serverPubkey),
35
+ includeDiscovery: isRequest,
36
+ });
37
+ const giftWrapKind = this.deps.capabilityNegotiator.chooseOutboundGiftWrapKind();
38
+ const eventId = await this.deps.sendMcpMessage(message, this.deps.serverPubkey, CTXVM_MESSAGES_KIND, tags, undefined, (eventId) => {
39
+ var _a, _b;
40
+ const progressToken = isRequest
41
+ ? (_b = (_a = message.params) === null || _a === void 0 ? void 0 : _a._meta) === null || _b === void 0 ? void 0 : _b.progressToken
42
+ : undefined;
43
+ const originalRequestContext = isRequest
44
+ ? this.deps.getOriginalRequestContext(message)
45
+ : undefined;
46
+ this.deps.correlationStore.registerRequest(eventId, {
47
+ originalRequestId: isRequest ? message.id : null,
48
+ isInitialize: isRequest && message.method === INITIALIZE_METHOD,
49
+ progressToken: progressToken !== undefined ? String(progressToken) : undefined,
50
+ originalRequestContext,
51
+ });
52
+ if (isRequest &&
53
+ message.method === 'tools/call' &&
54
+ progressToken !== undefined) {
55
+ this.deps.resolvePendingOpenStream(String(progressToken));
56
+ }
57
+ }, giftWrapKind);
58
+ if (isRequest) {
59
+ this.deps.capabilityNegotiator.markDiscoveryTagsSent();
60
+ }
61
+ return eventId;
62
+ }
63
+ async sendOversizedRequest(originalMessage, progressToken, giftWrapKind) {
64
+ const frameRecipientTags = this.deps.createRecipientTags(this.deps.serverPubkey);
65
+ const startFrameTags = this.deps.capabilityNegotiator.buildOutboundTags({
66
+ baseTags: frameRecipientTags,
67
+ includeDiscovery: true,
68
+ });
69
+ const chunkSizeBytes = await this.deps.resolveSafeOversizedChunkSize({
70
+ desiredChunkSizeBytes: this.deps.oversizedChunkSize,
71
+ maxPublishedEventBytes: this.deps.oversizedThreshold,
72
+ recipientPublicKey: this.deps.serverPubkey,
73
+ kind: CTXVM_MESSAGES_KIND,
74
+ progressToken,
75
+ progress: this.deps.serverSupportsOversizedTransfer() ? 2 : 3,
76
+ tags: frameRecipientTags,
77
+ giftWrapKind,
78
+ });
79
+ const serialized = JSON.stringify(originalMessage);
80
+ const endFrameEventId = await sendOversizedClientRequest(serialized, progressToken, {
81
+ chunkSizeBytes,
82
+ acceptTimeoutMs: this.deps.oversizedAcceptTimeoutMs,
83
+ serverPubkey: this.deps.serverPubkey,
84
+ serverSupportsOversizedTransfer: this.deps.serverSupportsOversizedTransfer(),
85
+ giftWrapKind,
86
+ startFrameTags,
87
+ continuationFrameTags: frameRecipientTags,
88
+ }, {
89
+ sendMcpMessage: this.deps.sendMcpMessage,
90
+ waitForAccept: this.deps.waitForAccept,
91
+ logger: this.deps.logger,
92
+ });
93
+ // Register the original request for correlating the final response.
94
+ if (endFrameEventId) {
95
+ this.deps.correlationStore.registerRequest(endFrameEventId, {
96
+ originalRequestId: originalMessage.id,
97
+ isInitialize: originalMessage.method === INITIALIZE_METHOD,
98
+ progressToken,
99
+ originalRequestContext: this.deps.getOriginalRequestContext(originalMessage),
100
+ });
101
+ }
102
+ this.deps.capabilityNegotiator.markDiscoveryTagsSent();
103
+ }
104
+ }
105
+ //# sourceMappingURL=outbound-sender.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outbound-sender.js","sourceRoot":"","sources":["../../../../src/transport/nostr-client/outbound-sender.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { type InitializeResult } from '@modelcontextprotocol/sdk/types.js';
2
+ import { type NostrEvent } from 'nostr-tools';
3
+ export type ListEnvelopeType = 'tools' | 'resources' | 'templates' | 'prompts';
4
+ /**
5
+ * Stores server discovery metadata learned by the client transport.
6
+ */
7
+ export declare class ServerMetadataStore {
8
+ private serverInitializeEvent;
9
+ private serverToolsListEvent;
10
+ private serverPromptsListEvent;
11
+ private serverResourcesListEvent;
12
+ private serverResourceTemplatesListEvent;
13
+ private supportsOversizedTransfer;
14
+ private supportsOpenStream;
15
+ clear(): void;
16
+ setServerInitializeEvent(event: NostrEvent): void;
17
+ getServerInitializeEvent(): NostrEvent | undefined;
18
+ setSupportsOversizedTransfer(supported: boolean): void;
19
+ setSupportsOpenStream(supported: boolean): void;
20
+ getServerSupportsOversizedTransfer(): boolean;
21
+ getServerSupportsOpenStream(): boolean;
22
+ updateListEnvelopeState(type: ListEnvelopeType, event: NostrEvent): void;
23
+ getServerToolsListEvent(): NostrEvent | undefined;
24
+ getServerResourcesListEvent(): NostrEvent | undefined;
25
+ getServerResourceTemplatesListEvent(): NostrEvent | undefined;
26
+ getServerPromptsListEvent(): NostrEvent | undefined;
27
+ getServerInitializeResult(): InitializeResult | undefined;
28
+ serverSupportsEncryption(): boolean;
29
+ serverSupportsEphemeralEncryption(): boolean;
30
+ getServerInitializeName(): string | undefined;
31
+ getServerInitializeAbout(): string | undefined;
32
+ getServerInitializeWebsite(): string | undefined;
33
+ getServerInitializePicture(): string | undefined;
34
+ }
35
+ //# sourceMappingURL=server-metadata-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-metadata-store.d.ts","sourceRoot":"","sources":["../../../../src/transport/nostr-client/server-metadata-store.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAK9C,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,GAAG,SAAS,CAAC;AAE/E;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,qBAAqB,CAAyB;IACtD,OAAO,CAAC,oBAAoB,CAAyB;IACrD,OAAO,CAAC,sBAAsB,CAAyB;IACvD,OAAO,CAAC,wBAAwB,CAAyB;IACzD,OAAO,CAAC,gCAAgC,CAAyB;IACjE,OAAO,CAAC,yBAAyB,CAAS;IAC1C,OAAO,CAAC,kBAAkB,CAAS;IAE5B,KAAK,IAAI,IAAI;IAUb,wBAAwB,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAIjD,wBAAwB,IAAI,UAAU,GAAG,SAAS;IAIlD,4BAA4B,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAItD,qBAAqB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAI/C,kCAAkC,IAAI,OAAO;IAI7C,2BAA2B,IAAI,OAAO;IAItC,uBAAuB,CAC5B,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,UAAU,GAChB,IAAI;IAmBA,uBAAuB,IAAI,UAAU,GAAG,SAAS;IAIjD,2BAA2B,IAAI,UAAU,GAAG,SAAS;IAIrD,mCAAmC,IAAI,UAAU,GAAG,SAAS;IAI7D,yBAAyB,IAAI,UAAU,GAAG,SAAS;IAInD,yBAAyB,IAAI,gBAAgB,GAAG,SAAS;IAgBzD,wBAAwB,IAAI,OAAO;IAKnC,iCAAiC,IAAI,OAAO;IAO5C,uBAAuB,IAAI,MAAM,GAAG,SAAS;IAO7C,wBAAwB,IAAI,MAAM,GAAG,SAAS;IAO9C,0BAA0B,IAAI,MAAM,GAAG,SAAS;IAOhD,0BAA0B,IAAI,MAAM,GAAG,SAAS;CAMxD"}
@@ -0,0 +1,107 @@
1
+ import { InitializeResultSchema, } from '@modelcontextprotocol/sdk/types.js';
2
+ import { NOSTR_TAGS } from '../../core/constants.js';
3
+ import { getNostrEventTag } from '../../core/utils/serializers.js';
4
+ import { queryTags } from '../../core/utils/utils.js';
5
+ /**
6
+ * Stores server discovery metadata learned by the client transport.
7
+ */
8
+ export class ServerMetadataStore {
9
+ constructor() {
10
+ this.supportsOversizedTransfer = false;
11
+ this.supportsOpenStream = false;
12
+ }
13
+ clear() {
14
+ this.serverInitializeEvent = undefined;
15
+ this.serverToolsListEvent = undefined;
16
+ this.serverPromptsListEvent = undefined;
17
+ this.serverResourcesListEvent = undefined;
18
+ this.serverResourceTemplatesListEvent = undefined;
19
+ this.supportsOversizedTransfer = false;
20
+ this.supportsOpenStream = false;
21
+ }
22
+ setServerInitializeEvent(event) {
23
+ this.serverInitializeEvent = event;
24
+ }
25
+ getServerInitializeEvent() {
26
+ return this.serverInitializeEvent;
27
+ }
28
+ setSupportsOversizedTransfer(supported) {
29
+ this.supportsOversizedTransfer || (this.supportsOversizedTransfer = supported);
30
+ }
31
+ setSupportsOpenStream(supported) {
32
+ this.supportsOpenStream || (this.supportsOpenStream = supported);
33
+ }
34
+ getServerSupportsOversizedTransfer() {
35
+ return this.supportsOversizedTransfer;
36
+ }
37
+ getServerSupportsOpenStream() {
38
+ return this.supportsOpenStream;
39
+ }
40
+ updateListEnvelopeState(type, event) {
41
+ switch (type) {
42
+ case 'tools':
43
+ this.serverToolsListEvent = event;
44
+ break;
45
+ case 'resources':
46
+ this.serverResourcesListEvent = event;
47
+ break;
48
+ case 'templates':
49
+ this.serverResourceTemplatesListEvent = event;
50
+ break;
51
+ case 'prompts':
52
+ this.serverPromptsListEvent = event;
53
+ break;
54
+ default:
55
+ break;
56
+ }
57
+ }
58
+ getServerToolsListEvent() {
59
+ return this.serverToolsListEvent;
60
+ }
61
+ getServerResourcesListEvent() {
62
+ return this.serverResourcesListEvent;
63
+ }
64
+ getServerResourceTemplatesListEvent() {
65
+ return this.serverResourceTemplatesListEvent;
66
+ }
67
+ getServerPromptsListEvent() {
68
+ return this.serverPromptsListEvent;
69
+ }
70
+ getServerInitializeResult() {
71
+ if (!this.serverInitializeEvent) {
72
+ return undefined;
73
+ }
74
+ try {
75
+ const content = JSON.parse(this.serverInitializeEvent.content);
76
+ const parse = InitializeResultSchema.safeParse(content.result);
77
+ return parse.success ? parse.data : undefined;
78
+ }
79
+ catch (_a) {
80
+ return undefined;
81
+ }
82
+ }
83
+ serverSupportsEncryption() {
84
+ return queryTags(this.serverInitializeEvent, NOSTR_TAGS.SUPPORT_ENCRYPTION)
85
+ .isFlag;
86
+ }
87
+ serverSupportsEphemeralEncryption() {
88
+ return queryTags(this.serverInitializeEvent, NOSTR_TAGS.SUPPORT_ENCRYPTION_EPHEMERAL).isFlag;
89
+ }
90
+ getServerInitializeName() {
91
+ var _a, _b;
92
+ return getNostrEventTag((_b = (_a = this.serverInitializeEvent) === null || _a === void 0 ? void 0 : _a.tags) !== null && _b !== void 0 ? _b : [], NOSTR_TAGS.NAME);
93
+ }
94
+ getServerInitializeAbout() {
95
+ var _a, _b;
96
+ return getNostrEventTag((_b = (_a = this.serverInitializeEvent) === null || _a === void 0 ? void 0 : _a.tags) !== null && _b !== void 0 ? _b : [], NOSTR_TAGS.ABOUT);
97
+ }
98
+ getServerInitializeWebsite() {
99
+ var _a, _b;
100
+ return getNostrEventTag((_b = (_a = this.serverInitializeEvent) === null || _a === void 0 ? void 0 : _a.tags) !== null && _b !== void 0 ? _b : [], NOSTR_TAGS.WEBSITE);
101
+ }
102
+ getServerInitializePicture() {
103
+ var _a, _b;
104
+ return getNostrEventTag((_b = (_a = this.serverInitializeEvent) === null || _a === void 0 ? void 0 : _a.tags) !== null && _b !== void 0 ? _b : [], NOSTR_TAGS.PICTURE);
105
+ }
106
+ }
107
+ //# sourceMappingURL=server-metadata-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-metadata-store.js","sourceRoot":"","sources":["../../../../src/transport/nostr-client/server-metadata-store.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { InitializeResult, type JSONRPCMessage } from '@modelcontextprotocol/sdk/types.js';
1
+ import { type InitializeResult, type JSONRPCMessage } from '@modelcontextprotocol/sdk/types.js';
2
2
  import type { Transport } from '@modelcontextprotocol/sdk/shared/transport.js';
3
3
  import { BaseNostrTransport, BaseNostrTransportOptions } from './base-nostr-transport.js';
4
4
  import { NostrEvent } from 'nostr-tools';
@@ -6,7 +6,7 @@ import { LogLevel } from '../core/utils/logger.js';
6
6
  import { ClientCorrelationStore, PendingRequest } from './nostr-client/correlation-store.js';
7
7
  import { StatelessModeHandler } from './nostr-client/stateless-mode-handler.js';
8
8
  import { OversizedTransferReceiver, type TransferPolicy } from './oversized-transfer/index.js';
9
- import { OpenStreamReceiver, OpenStreamSession } from './open-stream/index.js';
9
+ import { OpenStreamSession } from './open-stream/index.js';
10
10
  import type { OpenStreamTransportPolicy } from './open-stream-policy.js';
11
11
  /**
12
12
  * Options for configuring the NostrClientTransport.
@@ -86,36 +86,21 @@ export declare class NostrClientTransport extends BaseNostrTransport implements
86
86
  private readonly discoveryRelayUrls;
87
87
  /** Optional non-authoritative operational relays used as a fast fallback. */
88
88
  private readonly fallbackOperationalRelayUrls;
89
- /** Optional list of client-supported PMIs (ordered by preference). */
90
- private clientPmis;
91
- /** The server's initialize event, if received */
92
- private serverInitializeEvent;
93
- /** The latest server tools/list response event envelope, if received. */
94
- private serverToolsListEvent;
95
- /** The latest server prompts/list response event envelope, if received. */
96
- private serverPromptsListEvent;
97
- /** The latest server resources/list response event envelope, if received. */
98
- private serverResourcesListEvent;
99
- /** The latest server resources/templates/list response event envelope, if received. */
100
- private serverResourceTemplatesListEvent;
101
- /** Whether the server has advertised ephemeral gift wrap support via Nostr tags. */
102
- private serverSupportsEphemeralGiftWraps;
103
- /** Whether the server has advertised CEP-22 oversized transfer support. */
104
- private serverSupportsOversizedTransfer;
105
- /** Whether the server has advertised CEP-41 open stream support. */
106
- private serverSupportsOpenStream;
107
- /** Whether this client has already sent its discovery tags to the server. */
108
- private hasSentDiscoveryTags;
89
+ /** Stores server discovery metadata learned from inbound events. */
90
+ private readonly metadataStore;
91
+ private readonly capabilityNegotiator;
92
+ private readonly inboundNotificationDispatcher;
93
+ private readonly eventPipeline;
94
+ private readonly inboundCoordinator;
95
+ private readonly outboundSender;
109
96
  private readonly oversizedEnabled;
110
97
  private readonly oversizedThreshold;
111
98
  private readonly oversizedChunkSize;
112
99
  private readonly oversizedAcceptTimeoutMs;
113
100
  private readonly openStreamEnabled;
114
- private readonly openStreamPolicy;
101
+ private readonly openStreamFactory;
115
102
  /** Receives inbound oversized-transfer frames from the server (server→client responses). */
116
103
  private readonly oversizedReceiver;
117
- /** Receives inbound open-stream frames from the server (server→client notifications). */
118
- private readonly openStreamReceiver;
119
104
  /**
120
105
  * Deduplicate inbound events to avoid redundant work.
121
106
  *
@@ -134,11 +119,6 @@ export declare class NostrClientTransport extends BaseNostrTransport implements
134
119
  * Intended to be called by payments wrappers (e.g. `withClientPayments()`).
135
120
  */
136
121
  setClientPmis(pmis: readonly string[]): void;
137
- private getClientCapabilityTags;
138
- private getClientNegotiationTags;
139
- private getPendingClientDiscoveryTags;
140
- private buildOutboundClientTags;
141
- private markClientDiscoveryTagsSent;
142
122
  /**
143
123
  * Starts the transport, connecting to the relay and setting up event listeners.
144
124
  */
@@ -153,14 +133,6 @@ export declare class NostrClientTransport extends BaseNostrTransport implements
153
133
  * @param message - The JSON-RPC request or notification to send
154
134
  */
155
135
  send(message: JSONRPCMessage): Promise<void>;
156
- /**
157
- * Sends a request and registers it for correlation tracking.
158
- * @param message - The JSON-RPC message to send
159
- * @returns The ID of the published Nostr event
160
- */
161
- private sendRequest;
162
- private sendOversizedRequest;
163
- private chooseOutboundGiftWrapKind;
164
136
  private getOriginalRequestContext;
165
137
  /**
166
138
  * Internal helper used by payments middleware to correlate CEP-8 notifications
@@ -184,6 +156,8 @@ export declare class NostrClientTransport extends BaseNostrTransport implements
184
156
  progressToken: string;
185
157
  stream: OpenStreamSession;
186
158
  }>;
159
+ /** Resolves the next outbound open-stream placeholder with an active session. */
160
+ private resolvePendingOutboundOpenStream;
187
161
  /**
188
162
  * Returns the CEP-41 stream session for a progress token when it already exists.
189
163
  */
@@ -246,8 +220,6 @@ export declare class NostrClientTransport extends BaseNostrTransport implements
246
220
  getServerResourceTemplatesListEvent(): NostrEvent | undefined;
247
221
  /** Gets the server's most recently observed prompts/list event envelope, if any. */
248
222
  getServerPromptsListEvent(): NostrEvent | undefined;
249
- private learnServerDiscovery;
250
- private getInitializeResultCandidate;
251
223
  private resolveOperationalRelayHandler;
252
224
  /**
253
225
  * Handles response messages by correlating them with pending requests.
@@ -260,6 +232,11 @@ export declare class NostrClientTransport extends BaseNostrTransport implements
260
232
  * @param mcpMessage - The JSON-RPC notification message
261
233
  */
262
234
  private handleNotification;
235
+ protected buildOutboundClientTags(params: {
236
+ baseTags: readonly string[][];
237
+ includeDiscovery: boolean;
238
+ }): string[][];
239
+ protected chooseOutboundGiftWrapKind(): number;
263
240
  /**
264
241
  * Test-only accessor for internal state.
265
242
  * @internal
@@ -277,7 +254,7 @@ export declare class NostrClientTransport extends BaseNostrTransport implements
277
254
  serverResourceTemplatesListEvent: import("nostr-tools").Event | undefined;
278
255
  serverPromptsListEvent: import("nostr-tools").Event | undefined;
279
256
  oversizedReceiver: OversizedTransferReceiver;
280
- openStreamReceiver: OpenStreamReceiver;
257
+ openStreamReceiver: import("./open-stream/receiver.js").OpenStreamReceiver;
281
258
  };
282
259
  }
283
260
  //# sourceMappingURL=nostr-client-transport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"nostr-client-transport.d.ts","sourceRoot":"","sources":["../../../src/transport/nostr-client-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nostr-client-transport.d.ts","sourceRoot":"","sources":["../../../src/transport/nostr-client-transport.ts"],"names":[],"mappings":"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"}