@source-repo/rpc-cli 4.3.1 → 4.5.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/dist/broker.d.ts +6 -1
- package/dist/broker.d.ts.map +1 -1
- package/dist/broker.js +1 -1
- package/dist/broker.js.map +1 -1
- package/dist/console.d.ts +9 -0
- package/dist/console.d.ts.map +1 -1
- package/dist/console.js +19 -0
- package/dist/console.js.map +1 -1
- package/dist/extract.d.ts.map +1 -1
- package/dist/extract.js +25 -1
- package/dist/extract.js.map +1 -1
- package/dist/index.js +114 -12
- package/dist/index.js.map +1 -1
- package/dist/mcp.d.ts +18 -0
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +203 -39
- package/dist/mcp.js.map +1 -1
- package/dist/packages.d.ts +12 -0
- package/dist/packages.d.ts.map +1 -1
- package/dist/packages.js +37 -0
- package/dist/packages.js.map +1 -1
- package/dist/strip.d.ts +25 -0
- package/dist/strip.d.ts.map +1 -0
- package/dist/strip.js +124 -0
- package/dist/strip.js.map +1 -0
- package/dist/verbs.d.ts.map +1 -1
- package/dist/verbs.js +6 -5
- package/dist/verbs.js.map +1 -1
- package/dist/web/app.js +10 -10
- package/dist/web/app.js.map +1 -1
- package/package.json +2 -2
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp.d.ts
CHANGED
|
@@ -34,6 +34,24 @@ export interface McpOptions extends NetworkOptions {
|
|
|
34
34
|
* it out of band. A bus able to hand over that key is a bus able to script the node.
|
|
35
35
|
*/
|
|
36
36
|
scriptableBy?: string[];
|
|
37
|
+
/**
|
|
38
|
+
* Serve streamable HTTP on this port as a second door beside stdio. Absent means stdio only,
|
|
39
|
+
* which is where this server has always lived. The door exists because stdio means exactly one
|
|
40
|
+
* client: the field trial found a node already attached to another session, and the second
|
|
41
|
+
* agent's fallback - driving the CLI by hand - forked the scripts state the node was custodian
|
|
42
|
+
* of. Over the door, every client shares one view: one scripts directory, one set of fakes, one
|
|
43
|
+
* memory of watch cursors, because there is only one of everything here.
|
|
44
|
+
*/
|
|
45
|
+
port?: number;
|
|
46
|
+
/** The interface for the door. Default 127.0.0.1; see the warnings startMcp prints. */
|
|
47
|
+
host?: string;
|
|
48
|
+
/**
|
|
49
|
+
* Bearer token the door requires. An HTTP door is a new surface where stdio's authorization was
|
|
50
|
+
* implicit in process ownership, so the rule is fail-closed where it matters: a door widened
|
|
51
|
+
* past loopback without a token refuses to start, and a loopback door without one says plainly
|
|
52
|
+
* that any process on this machine can drive the node.
|
|
53
|
+
*/
|
|
54
|
+
doorToken?: string;
|
|
37
55
|
}
|
|
38
56
|
/**
|
|
39
57
|
* A failure as one line of text.
|
package/dist/mcp.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,cAAc,CAAA;AAqClE,MAAM,WAAW,UAAW,SAAQ,cAAc;IAC9C;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,uFAAuF;IACvF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB;AA2ZD;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,MAAO,OAAO,WAMrC,CAAA;AAED,eAAO,MAAM,QAAQ,YAAmB,UAAU;;;;EAgnBjD,CAAA"}
|
package/dist/mcp.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from 'node:fs';
|
|
2
|
+
import { createServer as createHttpServer } from 'node:http';
|
|
2
3
|
import { join, resolve, sep } from 'node:path';
|
|
3
4
|
import { readableNameFor, validateValue } from '@source-repo/rpc';
|
|
4
5
|
import { connectNetwork } from './network.js';
|
|
5
6
|
import { looksLikeSchema, startFake } from './fake.js';
|
|
6
7
|
import { environmentFor } from './scripts.js';
|
|
8
|
+
import { versionSkewLine } from './packages.js';
|
|
7
9
|
import { ScriptingService, scriptingAuthorizer } from './scripting.js';
|
|
8
10
|
import { checkPeerOn, diffPeersOn } from './conform.js';
|
|
9
11
|
import { openTap } from './tapping.js';
|
|
@@ -24,6 +26,15 @@ import { openTap } from './tapping.js';
|
|
|
24
26
|
*/
|
|
25
27
|
/** What we answer initialize with when the client asks for something we do not recognise. */
|
|
26
28
|
const FALLBACK_PROTOCOL_VERSION = '2025-06-18';
|
|
29
|
+
/** This package's own version, for serverInfo. From the manifest, so it cannot go stale. */
|
|
30
|
+
const ownVersion = () => {
|
|
31
|
+
try {
|
|
32
|
+
return JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf8')).version ?? '0.0.0';
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return '0.0.0';
|
|
36
|
+
}
|
|
37
|
+
};
|
|
27
38
|
/**
|
|
28
39
|
* How long a watching tool may hold the client waiting. A model asking for an hour would get one,
|
|
29
40
|
* and the conversation would look like it had hung.
|
|
@@ -183,7 +194,9 @@ const toolsFor = (contracts, allowExec = false, scripts) => [
|
|
|
183
194
|
{
|
|
184
195
|
name: 'watch_events',
|
|
185
196
|
description: "Subscribe to one of a peer's events for a few seconds and return what it emitted. The subscription is dropped again afterwards, " +
|
|
186
|
-
'so looking does not leave a listener behind on the device.'
|
|
197
|
+
'so looking does not leave a listener behind on the device. The answer also says whether anything was missed since your previous ' +
|
|
198
|
+
'watch of the same stream: "saw nothing" and "saw nothing and missed nothing" are different answers, and `loss` states which one ' +
|
|
199
|
+
'this was - or that the server restarted between watches, which makes the question unanswerable, or that the peer is too old to say.',
|
|
187
200
|
inputSchema: {
|
|
188
201
|
type: 'object',
|
|
189
202
|
properties: {
|
|
@@ -226,12 +239,18 @@ const toolsFor = (contracts, allowExec = false, scripts) => [
|
|
|
226
239
|
description: 'Write a script to the scripts directory. A script is an ESM Node program that imports @source-repo/rpc and is a peer in its own right - ' +
|
|
227
240
|
'so unlike start_fake it is not bound to one contract and can call as well as answer, drive a sequence, watch events, or stand several peers up at once. ' +
|
|
228
241
|
'It runs as its own process. The network this server is on is in the environment as SOURCE_RPC_HUB, SOURCE_RPC_BROKER, SOURCE_RPC_PREFIX and SOURCE_RPC_TOKEN, ' +
|
|
229
|
-
'so a script should read those rather than hardcode a url. Saving does not start it.'
|
|
242
|
+
'so a script should read those rather than hardcode a url. Saving does not start it. ' +
|
|
243
|
+
'IMPORTANT: scripts run under Node type stripping, which cannot run decorators - a script using @rpc or @rpcNamespace dies with a SyntaxError at the @. ' +
|
|
244
|
+
"Use the decorator-free forms instead: exposeMethods(MyClass, { say: { injectInvocation: true }, status: { semantics: 'query' } }) and " +
|
|
245
|
+
"declareRpcNamespace(MyClass, 'chat'), which say everything the decorators say.",
|
|
230
246
|
inputSchema: {
|
|
231
247
|
type: 'object',
|
|
232
248
|
properties: {
|
|
233
249
|
name: { type: 'string', description: 'A name; the file becomes <name>.ts (or <name>.mjs) in the scripts directory.' },
|
|
234
|
-
source: {
|
|
250
|
+
source: {
|
|
251
|
+
type: 'string',
|
|
252
|
+
description: 'The program. TypeScript by default - Node runs it directly, so `import type { Pump } from ...` gives a typed proxy - but no decorators: mark methods with exposeMethods and declare the namespace with declareRpcNamespace.'
|
|
253
|
+
},
|
|
235
254
|
language: { type: 'string', enum: ['ts', 'mjs'], description: 'Default ts. Use mjs for plain JavaScript, or when the server runs on a Node older than 22.6.' },
|
|
236
255
|
node: {
|
|
237
256
|
type: 'string',
|
|
@@ -415,6 +434,14 @@ export const startMcp = async (options) => {
|
|
|
415
434
|
// itself while the bigger one stayed quiet was the wrong way round.
|
|
416
435
|
if (options.scripts)
|
|
417
436
|
process.stderr.write(`source-rpc mcp: --scripts is on, so this server will write and run programs in ${options.scripts} with your privileges, and may install packages there. Development machines only.\n`);
|
|
437
|
+
if (options.scripts) {
|
|
438
|
+
// A statement, not a refusal: an old script against its own pinned library is legitimate.
|
|
439
|
+
// What the line prevents is new code quietly written against the API the directory happens
|
|
440
|
+
// to hold, which is what the first field trial did for an afternoon without noticing.
|
|
441
|
+
const skew = versionSkewLine(options.scripts, 'mcp');
|
|
442
|
+
if (skew)
|
|
443
|
+
process.stderr.write(skew);
|
|
444
|
+
}
|
|
418
445
|
// Louder than the rest, because this is the one that puts it on the network rather than under
|
|
419
446
|
// the person at the keyboard.
|
|
420
447
|
if (options.scriptableBy?.length)
|
|
@@ -517,16 +544,31 @@ export const startMcp = async (options) => {
|
|
|
517
544
|
* The discovery cache: find_capability fills it sweeping the network, call_method validates
|
|
518
545
|
* from it. Short-lived, because a contract can change with a redeploy and a stale cache would
|
|
519
546
|
* refuse arguments the peer now takes - thirty seconds keeps a conversation's worth of calls
|
|
520
|
-
* cheap without remembering last week's shape.
|
|
547
|
+
* cheap without remembering last week's shape. The description hash presence carries cuts the
|
|
548
|
+
* other way too: a peer announcing a hash other than the one this entry was described under is
|
|
549
|
+
* refetched at once rather than trusted out the rest of its thirty seconds, and an unchanged
|
|
550
|
+
* peer costs nothing extra. A peer announcing no hash - anything from before the field
|
|
551
|
+
* existed - keeps the age-based bargain it always had.
|
|
521
552
|
*/
|
|
522
553
|
const described = new Map();
|
|
523
554
|
const DESCRIBE_CACHE_MS = 30_000;
|
|
555
|
+
/**
|
|
556
|
+
* Where each watched event stream stood when its last watch window closed, so the next window
|
|
557
|
+
* can say whether anything fell between them. Held here for the life of this server - the
|
|
558
|
+
* windows are the model's, but the memory of them is one process's, which is exactly the
|
|
559
|
+
* lifetime the answer is honest for: a restarted MCP server starts over at "first watch".
|
|
560
|
+
*/
|
|
561
|
+
const watchCursors = new Map();
|
|
524
562
|
const describedOf = async (peer) => {
|
|
525
563
|
const held = described.get(peer);
|
|
526
|
-
|
|
564
|
+
const announced = network.peers.shapeOf(peer);
|
|
565
|
+
if (held && Date.now() - held.at < DESCRIBE_CACHE_MS && (announced === undefined || held.shape === announced))
|
|
527
566
|
return held.description;
|
|
567
|
+
// Read before the describe, not after: a shape that changes mid-flight then differs from
|
|
568
|
+
// the stored one, and the next lookup refetches rather than trusting a torn pair.
|
|
569
|
+
const shape = announced;
|
|
528
570
|
const description = await describe(peer);
|
|
529
|
-
described.set(peer, { description, at: Date.now() });
|
|
571
|
+
described.set(peer, { description, at: Date.now(), ...(shape !== undefined ? { shape } : {}) });
|
|
530
572
|
return description;
|
|
531
573
|
};
|
|
532
574
|
const callTool = async (name, args) => {
|
|
@@ -792,14 +834,58 @@ export const startMcp = async (options) => {
|
|
|
792
834
|
return { text: 'watch_events needs peer, namespace and event.', isError: true };
|
|
793
835
|
const seconds = Math.min(Math.max(Number(args.seconds ?? 5), 1), MAX_WATCH_SECONDS);
|
|
794
836
|
const heard = [];
|
|
795
|
-
const
|
|
837
|
+
const caller = network.caller;
|
|
838
|
+
const handler = (...emitted) => {
|
|
839
|
+
// Read on the handler's first line, which is the one moment the stamp is this
|
|
840
|
+
// delivery's - see lastDeliveredStamp. Absent means the server does not track it.
|
|
841
|
+
const stamp = caller?.lastDeliveredStamp;
|
|
842
|
+
heard.push({ at: Date.now(), args: emitted, ...(stamp && stamp.event === event ? { seq: stamp.seq } : {}) });
|
|
843
|
+
};
|
|
844
|
+
// The counter's stand at the emitting server, this incarnation. Undefined for a peer
|
|
845
|
+
// that predates cursors or serves no introspection - the loss answer says so rather
|
|
846
|
+
// than pretending. Asking also starts the counter for an ad-hoc event, so even when
|
|
847
|
+
// this watch cannot say, the next one can.
|
|
848
|
+
const cursorOf = async () => {
|
|
849
|
+
try {
|
|
850
|
+
const msgrpc = await network.proxy('msgrpc', peer);
|
|
851
|
+
return await msgrpc.eventCursor(namespace, event);
|
|
852
|
+
}
|
|
853
|
+
catch {
|
|
854
|
+
return undefined;
|
|
855
|
+
}
|
|
856
|
+
};
|
|
796
857
|
try {
|
|
797
858
|
const proxy = await network.proxy(namespace, peer);
|
|
798
859
|
await proxy.on(event, handler);
|
|
799
860
|
await new Promise((resolve) => setTimeout(resolve, seconds * 1000));
|
|
800
861
|
// Dropped again, so a look does not leave a subscription behind on the device.
|
|
801
862
|
await proxy.off(event, handler).catch(() => undefined);
|
|
802
|
-
|
|
863
|
+
const streamKey = `${peer}\u0000${namespace}\u0000${event}`;
|
|
864
|
+
const previous = watchCursors.get(streamKey);
|
|
865
|
+
const cursor = await cursorOf();
|
|
866
|
+
let loss;
|
|
867
|
+
if (!cursor || cursor.seq === null)
|
|
868
|
+
loss = 'unknown - the peer reports no cursor for this event, so nothing can be said about what fell between watches';
|
|
869
|
+
else {
|
|
870
|
+
watchCursors.set(streamKey, { epoch: cursor.epoch, seq: cursor.seq });
|
|
871
|
+
if (!previous)
|
|
872
|
+
loss = 'first watch of this stream here - the next one can say whether anything fell between them';
|
|
873
|
+
else if (previous.epoch !== cursor.epoch)
|
|
874
|
+
loss = 'unknowable - the server restarted between watches, and a fresh incarnation cannot say what happened before it';
|
|
875
|
+
else {
|
|
876
|
+
// Everything that fired since the last watch ended, minus what this one
|
|
877
|
+
// heard, is what fell between them - or was lost mid-watch, which the
|
|
878
|
+
// per-event seq stamps in `heard` distinguish.
|
|
879
|
+
const missed = cursor.seq - previous.seq - heard.length;
|
|
880
|
+
loss =
|
|
881
|
+
missed <= 0
|
|
882
|
+
? `gapless - nothing fired between this watch and the previous one that was not heard (${cursor.seq - previous.seq} fired, ${heard.length} heard)`
|
|
883
|
+
: `missed ${missed} - ${cursor.seq - previous.seq} fired since the previous watch and only ${heard.length} were heard here`;
|
|
884
|
+
}
|
|
885
|
+
}
|
|
886
|
+
return {
|
|
887
|
+
text: JSON.stringify({ watchedFor: seconds, event: `${peer}.${namespace}.${event}`, heard, loss, ...(cursor && cursor.seq !== null ? { cursor } : {}) }, null, 2)
|
|
888
|
+
};
|
|
803
889
|
}
|
|
804
890
|
catch (e) {
|
|
805
891
|
return { text: `cannot watch ${peer}.${namespace}.${event}: ${failureText(e)}`, isError: true };
|
|
@@ -807,11 +893,13 @@ export const startMcp = async (options) => {
|
|
|
807
893
|
}
|
|
808
894
|
return { text: `Unknown tool '${name}'.`, isError: true };
|
|
809
895
|
};
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
896
|
+
/**
|
|
897
|
+
* One answer for one JSON-RPC message, whichever door it arrived through - the same dispatch
|
|
898
|
+
* serves stdio and the streamable HTTP door, which is precisely what makes two clients share
|
|
899
|
+
* one view of the scripts, fakes, watches and cursors: there is only one of everything here.
|
|
900
|
+
* Returns undefined for a notification, which must not be answered at all.
|
|
901
|
+
*/
|
|
902
|
+
const answerTo = async (request) => {
|
|
815
903
|
const isNotification = request.id === undefined || request.id === null;
|
|
816
904
|
switch (request.method) {
|
|
817
905
|
case 'initialize': {
|
|
@@ -819,45 +907,51 @@ export const startMcp = async (options) => {
|
|
|
819
907
|
// any revision that still calls tools the same way, and refusing a version we have
|
|
820
908
|
// simply never heard of would be worse than answering it.
|
|
821
909
|
const asked = request.params?.protocolVersion;
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
'
|
|
832
|
-
|
|
833
|
-
|
|
910
|
+
return {
|
|
911
|
+
result: {
|
|
912
|
+
protocolVersion: typeof asked === 'string' && asked ? asked : FALLBACK_PROTOCOL_VERSION,
|
|
913
|
+
capabilities: { tools: {} },
|
|
914
|
+
// Read from the manifest rather than repeated here: a hardcoded copy sat
|
|
915
|
+
// at 3.0.0 for two majors, and clients show this when reporting which
|
|
916
|
+
// server said what - a wrong number here misdirects exactly the person
|
|
917
|
+
// reading a bug report.
|
|
918
|
+
serverInfo: { name: 'source-rpc', version: ownVersion() },
|
|
919
|
+
instructions: 'This is a live Source RPC network. Start with list_peers, then describe_peer to learn a peer' +
|
|
920
|
+
' contract before calling it. Calls reach real devices, so treat anything that writes as consequential.' +
|
|
921
|
+
' start_fake puts a peer of your own on the same network, built from a contract you supply - use it to try something' +
|
|
922
|
+
' against a device that does not exist yet, rather than against one that does. watch_traffic shows what other peers' +
|
|
923
|
+
' are saying to each other, which is most of what is happening.' +
|
|
924
|
+
' Scripts run under Node type stripping and cannot use decorators - mark methods with exposeMethods(MyClass, { method: options })' +
|
|
925
|
+
' and declare the namespace with declareRpcNamespace(MyClass, name) instead; see save_script.'
|
|
926
|
+
}
|
|
927
|
+
};
|
|
834
928
|
}
|
|
835
929
|
case 'notifications/initialized':
|
|
836
930
|
case 'notifications/cancelled':
|
|
837
|
-
return;
|
|
931
|
+
return undefined;
|
|
838
932
|
case 'ping':
|
|
839
|
-
|
|
840
|
-
respond(request.id, {});
|
|
841
|
-
return;
|
|
933
|
+
return isNotification ? undefined : { result: {} };
|
|
842
934
|
case 'tools/list':
|
|
843
|
-
|
|
844
|
-
return;
|
|
935
|
+
return { result: { tools: toolsFor(options.contracts, options.allowExec, options.scripts) } };
|
|
845
936
|
case 'tools/call': {
|
|
846
937
|
const name = String(request.params?.name ?? '');
|
|
847
938
|
const args = (request.params?.arguments ?? {});
|
|
848
|
-
if (!name)
|
|
849
|
-
|
|
850
|
-
return;
|
|
851
|
-
}
|
|
939
|
+
if (!name)
|
|
940
|
+
return { error: { code: INVALID_PARAMS, message: 'tools/call needs a tool name' } };
|
|
852
941
|
const { text, isError } = await callTool(name, args);
|
|
853
|
-
|
|
854
|
-
return;
|
|
942
|
+
return { result: { content: [{ type: 'text', text }], ...(isError ? { isError: true } : {}) } };
|
|
855
943
|
}
|
|
856
944
|
default:
|
|
857
|
-
|
|
858
|
-
fail(request.id, METHOD_NOT_FOUND, `unknown method '${request.method}'`);
|
|
945
|
+
return isNotification ? undefined : { error: { code: METHOD_NOT_FOUND, message: `unknown method '${request.method}'` } };
|
|
859
946
|
}
|
|
860
947
|
};
|
|
948
|
+
const write = (message) => process.stdout.write(JSON.stringify(message) + '\n');
|
|
949
|
+
const fail = (id, code, message) => write({ jsonrpc: '2.0', id, error: { code, message } });
|
|
950
|
+
const handle = async (request) => {
|
|
951
|
+
const answer = await answerTo(request);
|
|
952
|
+
if (answer)
|
|
953
|
+
write({ jsonrpc: '2.0', id: request.id, ...answer });
|
|
954
|
+
};
|
|
861
955
|
let buffered = '';
|
|
862
956
|
process.stdin.setEncoding('utf8');
|
|
863
957
|
process.stdin.on('data', (chunk) => {
|
|
@@ -889,8 +983,78 @@ export const startMcp = async (options) => {
|
|
|
889
983
|
});
|
|
890
984
|
}
|
|
891
985
|
});
|
|
986
|
+
/**
|
|
987
|
+
* The second door: streamable HTTP, spoken directly for the same reason stdio is - the
|
|
988
|
+
* protocol is a POST carrying one JSON-RPC message and a JSON answer, which is little enough
|
|
989
|
+
* that an SDK would be the bigger dependency. Two deliberate simplifications the spec allows:
|
|
990
|
+
* no session ids are assigned, because the door exists to *share* one process-wide state and
|
|
991
|
+
* a session would only pretend otherwise; and GET's server-initiated stream is declined with
|
|
992
|
+
* 405, because this server has no server-initiated messages to send.
|
|
993
|
+
*/
|
|
994
|
+
let door;
|
|
995
|
+
if (options.port) {
|
|
996
|
+
const doorHost = options.host ?? '127.0.0.1';
|
|
997
|
+
const local = doorHost === '127.0.0.1' || doorHost === 'localhost';
|
|
998
|
+
// Fail closed before the port opens: a wide door with no lock is not started, warned about
|
|
999
|
+
// and left open - it is refused, and the sentence says what would make it acceptable.
|
|
1000
|
+
if (!local && !options.doorToken)
|
|
1001
|
+
throw new Error(`mcp: refusing to serve HTTP on ${doorHost} without a token - the network could drive this node. Set SOURCE_RPC_MCP_TOKEN, or bind 127.0.0.1.`);
|
|
1002
|
+
const MAX_BODY = 4 * 1024 * 1024;
|
|
1003
|
+
door = createHttpServer((request, response) => {
|
|
1004
|
+
if (request.method !== 'POST') {
|
|
1005
|
+
response.writeHead(405, { Allow: 'POST' }).end();
|
|
1006
|
+
return;
|
|
1007
|
+
}
|
|
1008
|
+
if (options.doorToken && request.headers.authorization !== `Bearer ${options.doorToken}`) {
|
|
1009
|
+
response.writeHead(401, { 'WWW-Authenticate': 'Bearer' }).end();
|
|
1010
|
+
return;
|
|
1011
|
+
}
|
|
1012
|
+
let body = '';
|
|
1013
|
+
request.setEncoding('utf8');
|
|
1014
|
+
request.on('data', (chunk) => {
|
|
1015
|
+
body += chunk;
|
|
1016
|
+
if (body.length > MAX_BODY)
|
|
1017
|
+
request.destroy();
|
|
1018
|
+
});
|
|
1019
|
+
request.on('end', () => {
|
|
1020
|
+
let message;
|
|
1021
|
+
try {
|
|
1022
|
+
message = JSON.parse(body);
|
|
1023
|
+
}
|
|
1024
|
+
catch {
|
|
1025
|
+
response.writeHead(400, { 'Content-Type': 'application/json' }).end(JSON.stringify({ jsonrpc: '2.0', id: null, error: { code: INVALID_PARAMS, message: 'the body is not a JSON-RPC message' } }));
|
|
1026
|
+
return;
|
|
1027
|
+
}
|
|
1028
|
+
if (Array.isArray(message)) {
|
|
1029
|
+
response.writeHead(400, { 'Content-Type': 'application/json' }).end(JSON.stringify({ jsonrpc: '2.0', id: null, error: { code: INVALID_PARAMS, message: 'batches are not accepted here - send one message per POST' } }));
|
|
1030
|
+
return;
|
|
1031
|
+
}
|
|
1032
|
+
// A notification is taken and not answered, which over HTTP is 202.
|
|
1033
|
+
if (message.id === undefined || message.id === null) {
|
|
1034
|
+
void answerTo(message).catch((e) => process.stderr.write(`source-rpc mcp: ${failureText(e)}\n`));
|
|
1035
|
+
response.writeHead(202).end();
|
|
1036
|
+
return;
|
|
1037
|
+
}
|
|
1038
|
+
void answerTo(message)
|
|
1039
|
+
.then((answer) => response.writeHead(200, { 'Content-Type': 'application/json' }).end(JSON.stringify({ jsonrpc: '2.0', id: message.id, ...answer })))
|
|
1040
|
+
.catch((e) => response.writeHead(200, { 'Content-Type': 'application/json' }).end(JSON.stringify({ jsonrpc: '2.0', id: message.id, error: { code: INTERNAL_ERROR, message: failureText(e) } })));
|
|
1041
|
+
});
|
|
1042
|
+
});
|
|
1043
|
+
await new Promise((resolvePromise, rejectPromise) => {
|
|
1044
|
+
door.on('error', rejectPromise);
|
|
1045
|
+
door.listen(options.port, doorHost, () => resolvePromise());
|
|
1046
|
+
});
|
|
1047
|
+
process.stderr.write(`source-rpc mcp: streamable HTTP on ${doorHost}:${options.port} - a second client can attach here and sees the same scripts, fakes and watches as stdio.\n`);
|
|
1048
|
+
if (local && !options.doorToken)
|
|
1049
|
+
process.stderr.write('source-rpc mcp: the HTTP door has no token, so any process on this machine can drive this node. SOURCE_RPC_MCP_TOKEN is what gates it.\n');
|
|
1050
|
+
if (!local)
|
|
1051
|
+
// The console's warning, for the same widening.
|
|
1052
|
+
process.stderr.write(`source-rpc mcp: bound to ${doorHost}, so these tools are reachable from the network. Anyone with the token can call, script and fake through this node.\n`);
|
|
1053
|
+
}
|
|
892
1054
|
const close = async () => {
|
|
893
1055
|
process.stdin.removeAllListeners('data');
|
|
1056
|
+
if (door)
|
|
1057
|
+
await new Promise((resolvePromise) => door.close(() => resolvePromise()));
|
|
894
1058
|
// Before the network goes: a fake left running would hold a link this is about to drop.
|
|
895
1059
|
for (const fake of fakes.values())
|
|
896
1060
|
await fake.close().catch(() => undefined);
|