@agent-relay/mcp 2.0.13 → 2.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -3
- package/dist/bin.js +13 -5
- package/dist/bin.js.map +1 -1
- package/dist/client.d.ts +54 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +132 -18
- package/dist/client.js.map +1 -1
- package/dist/cloud.d.ts +12 -0
- package/dist/cloud.d.ts.map +1 -1
- package/dist/cloud.js +125 -1
- package/dist/cloud.js.map +1 -1
- package/dist/file-transport.d.ts +97 -0
- package/dist/file-transport.d.ts.map +1 -0
- package/dist/file-transport.js +197 -0
- package/dist/file-transport.js.map +1 -0
- package/dist/hybrid-client.d.ts +28 -0
- package/dist/hybrid-client.d.ts.map +1 -0
- package/dist/hybrid-client.js +159 -0
- package/dist/hybrid-client.js.map +1 -0
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/install.d.ts +23 -1
- package/dist/install.d.ts.map +1 -1
- package/dist/install.js +229 -31
- package/dist/install.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +7 -1
- package/dist/server.js.map +1 -1
- package/dist/simple.d.ts +1 -1
- package/dist/simple.d.ts.map +1 -1
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +1 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/relay-continuity.d.ts +35 -0
- package/dist/tools/relay-continuity.d.ts.map +1 -0
- package/dist/tools/relay-continuity.js +101 -0
- package/dist/tools/relay-continuity.js.map +1 -0
- package/dist/tools/relay-health.d.ts +1 -4
- package/dist/tools/relay-health.d.ts.map +1 -1
- package/dist/tools/relay-health.js +7 -15
- package/dist/tools/relay-health.js.map +1 -1
- package/dist/tools/relay-logs.d.ts.map +1 -1
- package/dist/tools/relay-logs.js +4 -2
- package/dist/tools/relay-logs.js.map +1 -1
- package/dist/tools/relay-metrics.d.ts +1 -4
- package/dist/tools/relay-metrics.d.ts.map +1 -1
- package/dist/tools/relay-metrics.js +4 -15
- package/dist/tools/relay-metrics.js.map +1 -1
- package/dist/tools/relay-send.d.ts +2 -2
- package/package.json +3 -2
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import type { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
3
|
+
import type { RelayClient } from '../client.js';
|
|
4
|
+
export declare const relayContinuitySchema: z.ZodObject<{
|
|
5
|
+
action: z.ZodEnum<["save", "load", "uncertain"]>;
|
|
6
|
+
current_task: z.ZodOptional<z.ZodString>;
|
|
7
|
+
completed: z.ZodOptional<z.ZodString>;
|
|
8
|
+
in_progress: z.ZodOptional<z.ZodString>;
|
|
9
|
+
key_decisions: z.ZodOptional<z.ZodString>;
|
|
10
|
+
files: z.ZodOptional<z.ZodString>;
|
|
11
|
+
item: z.ZodOptional<z.ZodString>;
|
|
12
|
+
}, "strip", z.ZodTypeAny, {
|
|
13
|
+
action: "save" | "load" | "uncertain";
|
|
14
|
+
current_task?: string | undefined;
|
|
15
|
+
completed?: string | undefined;
|
|
16
|
+
in_progress?: string | undefined;
|
|
17
|
+
key_decisions?: string | undefined;
|
|
18
|
+
files?: string | undefined;
|
|
19
|
+
item?: string | undefined;
|
|
20
|
+
}, {
|
|
21
|
+
action: "save" | "load" | "uncertain";
|
|
22
|
+
current_task?: string | undefined;
|
|
23
|
+
completed?: string | undefined;
|
|
24
|
+
in_progress?: string | undefined;
|
|
25
|
+
key_decisions?: string | undefined;
|
|
26
|
+
files?: string | undefined;
|
|
27
|
+
item?: string | undefined;
|
|
28
|
+
}>;
|
|
29
|
+
export type RelayContinuityInput = z.infer<typeof relayContinuitySchema>;
|
|
30
|
+
export declare const relayContinuityTool: Tool;
|
|
31
|
+
/**
|
|
32
|
+
* Handle continuity actions for session recovery.
|
|
33
|
+
*/
|
|
34
|
+
export declare function handleRelayContinuity(client: RelayClient, input: RelayContinuityInput): Promise<string>;
|
|
35
|
+
//# sourceMappingURL=relay-continuity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"relay-continuity.d.ts","sourceRoot":"","sources":["../../src/tools/relay-continuity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;EAQhC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEzE,eAAO,MAAM,mBAAmB,EAAE,IAgDjC,CAAC;AAeF;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,MAAM,CAAC,CAyCjB"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export const relayContinuitySchema = z.object({
|
|
3
|
+
action: z.enum(['save', 'load', 'uncertain']).describe('Action: save state, load previous state, or mark uncertainty'),
|
|
4
|
+
current_task: z.string().optional().describe('Current task being worked on (for save)'),
|
|
5
|
+
completed: z.string().optional().describe('Completed work summary (for save)'),
|
|
6
|
+
in_progress: z.string().optional().describe('In-progress work summary (for save)'),
|
|
7
|
+
key_decisions: z.string().optional().describe('Key decisions made (for save)'),
|
|
8
|
+
files: z.string().optional().describe('Files being worked on (for save)'),
|
|
9
|
+
item: z.string().optional().describe('Item to mark as uncertain (for uncertain action)'),
|
|
10
|
+
});
|
|
11
|
+
export const relayContinuityTool = {
|
|
12
|
+
name: 'relay_continuity',
|
|
13
|
+
description: `Manage session continuity for agent recovery.
|
|
14
|
+
|
|
15
|
+
Use this to:
|
|
16
|
+
- Save your current state before long operations or session end
|
|
17
|
+
- Load previous context when starting a new session
|
|
18
|
+
- Mark items that need future verification
|
|
19
|
+
|
|
20
|
+
Examples:
|
|
21
|
+
- Save state: action="save", current_task="Implementing auth", completed="User model done"
|
|
22
|
+
- Load state: action="load"
|
|
23
|
+
- Mark uncertain: action="uncertain", item="API rate limit handling unclear"`,
|
|
24
|
+
inputSchema: {
|
|
25
|
+
type: 'object',
|
|
26
|
+
properties: {
|
|
27
|
+
action: {
|
|
28
|
+
type: 'string',
|
|
29
|
+
enum: ['save', 'load', 'uncertain'],
|
|
30
|
+
description: 'Action: save state, load previous state, or mark uncertainty',
|
|
31
|
+
},
|
|
32
|
+
current_task: {
|
|
33
|
+
type: 'string',
|
|
34
|
+
description: 'Current task being worked on (for save)',
|
|
35
|
+
},
|
|
36
|
+
completed: {
|
|
37
|
+
type: 'string',
|
|
38
|
+
description: 'Completed work summary (for save)',
|
|
39
|
+
},
|
|
40
|
+
in_progress: {
|
|
41
|
+
type: 'string',
|
|
42
|
+
description: 'In-progress work summary (for save)',
|
|
43
|
+
},
|
|
44
|
+
key_decisions: {
|
|
45
|
+
type: 'string',
|
|
46
|
+
description: 'Key decisions made (for save)',
|
|
47
|
+
},
|
|
48
|
+
files: {
|
|
49
|
+
type: 'string',
|
|
50
|
+
description: 'Files being worked on (for save)',
|
|
51
|
+
},
|
|
52
|
+
item: {
|
|
53
|
+
type: 'string',
|
|
54
|
+
description: 'Item to mark as uncertain (for uncertain action)',
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
required: ['action'],
|
|
58
|
+
},
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Handle continuity actions for session recovery.
|
|
62
|
+
*/
|
|
63
|
+
export async function handleRelayContinuity(client, input) {
|
|
64
|
+
const extClient = client;
|
|
65
|
+
const { action, current_task, completed, in_progress, key_decisions, files, item } = input;
|
|
66
|
+
switch (action) {
|
|
67
|
+
case 'save': {
|
|
68
|
+
if (!extClient.saveContinuity) {
|
|
69
|
+
return 'Continuity save not supported by this client';
|
|
70
|
+
}
|
|
71
|
+
await extClient.saveContinuity({
|
|
72
|
+
currentTask: current_task,
|
|
73
|
+
completed,
|
|
74
|
+
inProgress: in_progress,
|
|
75
|
+
keyDecisions: key_decisions,
|
|
76
|
+
files,
|
|
77
|
+
});
|
|
78
|
+
return 'Session state saved for recovery';
|
|
79
|
+
}
|
|
80
|
+
case 'load': {
|
|
81
|
+
if (!extClient.loadContinuity) {
|
|
82
|
+
return 'Continuity load not supported by this client';
|
|
83
|
+
}
|
|
84
|
+
await extClient.loadContinuity();
|
|
85
|
+
return 'Previous session context loaded';
|
|
86
|
+
}
|
|
87
|
+
case 'uncertain': {
|
|
88
|
+
if (!extClient.markUncertain) {
|
|
89
|
+
return 'Mark uncertain not supported by this client';
|
|
90
|
+
}
|
|
91
|
+
if (!item) {
|
|
92
|
+
return 'Item required for uncertain action';
|
|
93
|
+
}
|
|
94
|
+
await extClient.markUncertain(item);
|
|
95
|
+
return `Marked as uncertain: ${item}`;
|
|
96
|
+
}
|
|
97
|
+
default:
|
|
98
|
+
return `Unknown action: ${action}`;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=relay-continuity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"relay-continuity.js","sourceRoot":"","sources":["../../src/tools/relay-continuity.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,15 +2,12 @@ import { z } from 'zod';
|
|
|
2
2
|
import type { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
3
3
|
import type { RelayClient } from '../client.js';
|
|
4
4
|
export declare const relayHealthSchema: z.ZodObject<{
|
|
5
|
-
port: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
6
5
|
include_crashes: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
7
6
|
include_alerts: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
8
7
|
}, "strip", z.ZodTypeAny, {
|
|
9
|
-
port: number;
|
|
10
8
|
include_crashes: boolean;
|
|
11
9
|
include_alerts: boolean;
|
|
12
10
|
}, {
|
|
13
|
-
port?: number | undefined;
|
|
14
11
|
include_crashes?: boolean | undefined;
|
|
15
12
|
include_alerts?: boolean | undefined;
|
|
16
13
|
}>;
|
|
@@ -19,5 +16,5 @@ export declare const relayHealthTool: Tool;
|
|
|
19
16
|
/**
|
|
20
17
|
* Get system health, crash insights, and recommendations.
|
|
21
18
|
*/
|
|
22
|
-
export declare function handleRelayHealth(
|
|
19
|
+
export declare function handleRelayHealth(client: RelayClient, input: RelayHealthInput): Promise<string>;
|
|
23
20
|
//# sourceMappingURL=relay-health.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay-health.d.ts","sourceRoot":"","sources":["../../src/tools/relay-health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"relay-health.d.ts","sourceRoot":"","sources":["../../src/tools/relay-health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,cAAc,CAAC;AAEhE,eAAO,MAAM,iBAAiB;;;;;;;;;EAG5B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEjE,eAAO,MAAM,eAAe,EAAE,IAiC7B,CAAC;AAEF;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,gBAAgB,GACtB,OAAO,CAAC,MAAM,CAAC,CA+FjB"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export const relayHealthSchema = z.object({
|
|
3
|
-
port: z.number().optional().default(3888).describe('Dashboard port (default: 3888)'),
|
|
4
3
|
include_crashes: z.boolean().optional().default(true).describe('Include recent crash history'),
|
|
5
4
|
include_alerts: z.boolean().optional().default(true).describe('Include unacknowledged alerts'),
|
|
6
5
|
});
|
|
@@ -24,11 +23,6 @@ Example: Health check without crash history
|
|
|
24
23
|
inputSchema: {
|
|
25
24
|
type: 'object',
|
|
26
25
|
properties: {
|
|
27
|
-
port: {
|
|
28
|
-
type: 'number',
|
|
29
|
-
description: 'Dashboard port (default: 3888)',
|
|
30
|
-
default: 3888,
|
|
31
|
-
},
|
|
32
26
|
include_crashes: {
|
|
33
27
|
type: 'boolean',
|
|
34
28
|
description: 'Include recent crash history',
|
|
@@ -46,14 +40,12 @@ Example: Health check without crash history
|
|
|
46
40
|
/**
|
|
47
41
|
* Get system health, crash insights, and recommendations.
|
|
48
42
|
*/
|
|
49
|
-
export async function handleRelayHealth(
|
|
50
|
-
const port = input.port || 3888;
|
|
43
|
+
export async function handleRelayHealth(client, input) {
|
|
51
44
|
try {
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
const data = await response.json();
|
|
45
|
+
const data = await client.getHealth({
|
|
46
|
+
include_crashes: input.include_crashes,
|
|
47
|
+
include_alerts: input.include_alerts,
|
|
48
|
+
});
|
|
57
49
|
const lines = [];
|
|
58
50
|
// Health score header
|
|
59
51
|
const scoreEmoji = data.healthScore >= 80 ? '✅' :
|
|
@@ -129,8 +121,8 @@ export async function handleRelayHealth(_client, input) {
|
|
|
129
121
|
}
|
|
130
122
|
catch (err) {
|
|
131
123
|
const error = err;
|
|
132
|
-
if (error.code === 'ECONNREFUSED') {
|
|
133
|
-
return `Cannot connect to
|
|
124
|
+
if (error.code === 'ECONNREFUSED' || error.code === 'ENOENT') {
|
|
125
|
+
return `Cannot connect to daemon. Is the daemon running?\n\nRun 'agent-relay up' to start the daemon.`;
|
|
134
126
|
}
|
|
135
127
|
return `Failed to fetch health data: ${error.message || String(err)}`;
|
|
136
128
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay-health.js","sourceRoot":"","sources":["../../src/tools/relay-health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,
|
|
1
|
+
{"version":3,"file":"relay-health.js","sourceRoot":"","sources":["../../src/tools/relay-health.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay-logs.d.ts","sourceRoot":"","sources":["../../src/tools/relay-logs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"relay-logs.d.ts","sourceRoot":"","sources":["../../src/tools/relay-logs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAShD,eAAO,MAAM,eAAe;;;;;;;;;EAG1B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE7D,eAAO,MAAM,aAAa,EAAE,IA4B3B,CAAC;AAWF;;GAEG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,MAAM,CAAC,CA0CjB"}
|
package/dist/tools/relay-logs.js
CHANGED
|
@@ -3,6 +3,7 @@ import fs from 'node:fs';
|
|
|
3
3
|
import path from 'node:path';
|
|
4
4
|
import { promisify } from 'node:util';
|
|
5
5
|
import { exec } from 'node:child_process';
|
|
6
|
+
import { getProjectPaths } from '@agent-relay/config';
|
|
6
7
|
const execAsync = promisify(exec);
|
|
7
8
|
export const relayLogsSchema = z.object({
|
|
8
9
|
agent: z.string().describe('Name of the agent to get logs for'),
|
|
@@ -39,10 +40,11 @@ Example: Get last 100 lines from Worker1
|
|
|
39
40
|
};
|
|
40
41
|
/**
|
|
41
42
|
* Get the worker logs directory path.
|
|
42
|
-
*
|
|
43
|
+
* Uses getProjectPaths from @agent-relay/config to match the bridge package.
|
|
43
44
|
*/
|
|
44
45
|
function getWorkerLogsDir(projectRoot) {
|
|
45
|
-
|
|
46
|
+
const paths = getProjectPaths(projectRoot);
|
|
47
|
+
return path.join(paths.teamDir, 'worker-logs');
|
|
46
48
|
}
|
|
47
49
|
/**
|
|
48
50
|
* Read recent logs from an agent's output file.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay-logs.js","sourceRoot":"","sources":["../../src/tools/relay-logs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"relay-logs.js","sourceRoot":"","sources":["../../src/tools/relay-logs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAElC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IAC/D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;CAC/F,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,aAAa,GAAS;IACjC,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE;;;;;;;;;;uCAUwB;IACrC,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mCAAmC;aACjD;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,2CAA2C;gBACxD,OAAO,EAAE,EAAE;aACZ;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;CACF,CAAC;AAEF;;;GAGG;AACH,SAAS,gBAAgB,CAAC,WAAmB;IAC3C,MAAM,KAAK,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IAC3C,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAmB,EACnB,KAAqB;IAErB,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,KAAK,CAAC;IAEpC,sCAAsC;IACtC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;IACxC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAEpD,MAAM,OAAO,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,MAAM,CAAC,CAAC;IAEnD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,kCAAkC;QAClC,IAAI,eAAe,GAAa,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,eAAe,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC;qBACtC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;qBAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,kCAAkC;QACpC,CAAC;QAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,4BAA4B,KAAK,sCAAsC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAChI,CAAC;QACD,OAAO,4BAA4B,KAAK,8DAA8D,CAAC;IACzG,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,WAAW,KAAK,KAAK,OAAO,GAAG,CAAC,CAAC;QACpE,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAEjC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,YAAY,KAAK,UAAU,KAAK,mCAAmC,CAAC;QAC7E,CAAC;QAED,OAAO,YAAY,KAAK,UAAU,KAAK,aAAa,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,UAAU,EAAE,CAAC;IACtF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,4BAA4B,KAAK,MAAM,OAAO,EAAE,CAAC;IAC1D,CAAC;AACH,CAAC"}
|
|
@@ -3,18 +3,15 @@ import type { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
|
3
3
|
import type { RelayClient } from '../client.js';
|
|
4
4
|
export declare const relayMetricsSchema: z.ZodObject<{
|
|
5
5
|
agent: z.ZodOptional<z.ZodString>;
|
|
6
|
-
port: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
7
6
|
}, "strip", z.ZodTypeAny, {
|
|
8
|
-
port: number;
|
|
9
7
|
agent?: string | undefined;
|
|
10
8
|
}, {
|
|
11
9
|
agent?: string | undefined;
|
|
12
|
-
port?: number | undefined;
|
|
13
10
|
}>;
|
|
14
11
|
export type RelayMetricsInput = z.infer<typeof relayMetricsSchema>;
|
|
15
12
|
export declare const relayMetricsTool: Tool;
|
|
16
13
|
/**
|
|
17
14
|
* Get memory and resource metrics for agents.
|
|
18
15
|
*/
|
|
19
|
-
export declare function handleRelayMetrics(
|
|
16
|
+
export declare function handleRelayMetrics(client: RelayClient, input: RelayMetricsInput): Promise<string>;
|
|
20
17
|
//# sourceMappingURL=relay-metrics.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay-metrics.d.ts","sourceRoot":"","sources":["../../src/tools/relay-metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"relay-metrics.d.ts","sourceRoot":"","sources":["../../src/tools/relay-metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAmB,MAAM,cAAc,CAAC;AAEjE,eAAO,MAAM,kBAAkB;;;;;;EAE7B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEnE,eAAO,MAAM,gBAAgB,EAAE,IA2B9B,CAAC;AAsBF;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,MAAM,CAAC,CA0EjB"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export const relayMetricsSchema = z.object({
|
|
3
3
|
agent: z.string().optional().describe('Filter metrics to a specific agent'),
|
|
4
|
-
port: z.number().optional().default(3888).describe('Dashboard port (default: 3888)'),
|
|
5
4
|
});
|
|
6
5
|
export const relayMetricsTool = {
|
|
7
6
|
name: 'relay_metrics',
|
|
@@ -27,11 +26,6 @@ Example: Get metrics for specific agent
|
|
|
27
26
|
type: 'string',
|
|
28
27
|
description: 'Filter metrics to a specific agent',
|
|
29
28
|
},
|
|
30
|
-
port: {
|
|
31
|
-
type: 'number',
|
|
32
|
-
description: 'Dashboard port (default: 3888)',
|
|
33
|
-
default: 3888,
|
|
34
|
-
},
|
|
35
29
|
},
|
|
36
30
|
required: [],
|
|
37
31
|
},
|
|
@@ -60,14 +54,9 @@ function formatUptime(ms) {
|
|
|
60
54
|
/**
|
|
61
55
|
* Get memory and resource metrics for agents.
|
|
62
56
|
*/
|
|
63
|
-
export async function handleRelayMetrics(
|
|
64
|
-
const port = input.port || 3888;
|
|
57
|
+
export async function handleRelayMetrics(client, input) {
|
|
65
58
|
try {
|
|
66
|
-
const
|
|
67
|
-
if (!response.ok) {
|
|
68
|
-
throw new Error(`HTTP ${response.status}`);
|
|
69
|
-
}
|
|
70
|
-
const data = await response.json();
|
|
59
|
+
const data = await client.getMetrics({ agent: input.agent });
|
|
71
60
|
let agents = data.agents;
|
|
72
61
|
// Filter to specific agent if requested
|
|
73
62
|
if (input.agent) {
|
|
@@ -126,8 +115,8 @@ export async function handleRelayMetrics(_client, input) {
|
|
|
126
115
|
}
|
|
127
116
|
catch (err) {
|
|
128
117
|
const error = err;
|
|
129
|
-
if (error.code === 'ECONNREFUSED') {
|
|
130
|
-
return `Cannot connect to
|
|
118
|
+
if (error.code === 'ECONNREFUSED' || error.code === 'ENOENT') {
|
|
119
|
+
return `Cannot connect to daemon. Is the daemon running?\n\nRun 'agent-relay up' to start the daemon.`;
|
|
131
120
|
}
|
|
132
121
|
return `Failed to fetch metrics: ${error.message || String(err)}`;
|
|
133
122
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay-metrics.js","sourceRoot":"","sources":["../../src/tools/relay-metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"relay-metrics.js","sourceRoot":"","sources":["../../src/tools/relay-metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,14 +8,14 @@ export declare const relaySendSchema: z.ZodObject<{
|
|
|
8
8
|
await_response: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
9
9
|
timeout_ms: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
10
10
|
}, "strip", z.ZodTypeAny, {
|
|
11
|
-
to: string;
|
|
12
11
|
message: string;
|
|
12
|
+
to: string;
|
|
13
13
|
await_response: boolean;
|
|
14
14
|
timeout_ms: number;
|
|
15
15
|
thread?: string | undefined;
|
|
16
16
|
}, {
|
|
17
|
-
to: string;
|
|
18
17
|
message: string;
|
|
18
|
+
to: string;
|
|
19
19
|
thread?: string | undefined;
|
|
20
20
|
await_response?: boolean | undefined;
|
|
21
21
|
timeout_ms?: number | undefined;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agent-relay/mcp",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.14",
|
|
4
4
|
"description": "MCP server for Agent Relay - native messaging tools for AI agents in Claude, Cursor, and VS Code",
|
|
5
5
|
"author": "Agent Workforce Inc.",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -47,8 +47,9 @@
|
|
|
47
47
|
"prepublishOnly": "npm run clean && npm run build && npm test"
|
|
48
48
|
},
|
|
49
49
|
"dependencies": {
|
|
50
|
-
"@agent-relay/config": "2.0.
|
|
50
|
+
"@agent-relay/config": "2.0.14",
|
|
51
51
|
"@modelcontextprotocol/sdk": "^1.0.0",
|
|
52
|
+
"smol-toml": "^1.6.0",
|
|
52
53
|
"zod": "^3.23.8"
|
|
53
54
|
},
|
|
54
55
|
"devDependencies": {
|