@relaycast/mcp 0.2.1 → 0.2.3
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/piggyback.d.ts.map +1 -1
- package/dist/piggyback.js +24 -9
- package/dist/piggyback.js.map +1 -1
- package/dist/tools/channels.d.ts.map +1 -1
- package/dist/tools/channels.js +14 -0
- package/dist/tools/channels.js.map +1 -1
- package/dist/tools/features.d.ts.map +1 -1
- package/dist/tools/features.js +14 -0
- package/dist/tools/features.js.map +1 -1
- package/dist/tools/messaging.d.ts.map +1 -1
- package/dist/tools/messaging.js +14 -0
- package/dist/tools/messaging.js.map +1 -1
- package/dist/tools/programmability.d.ts.map +1 -1
- package/dist/tools/programmability.js +24 -0
- package/dist/tools/programmability.js.map +1 -1
- package/dist/tools/registration.d.ts.map +1 -1
- package/dist/tools/registration.js +8 -0
- package/dist/tools/registration.js.map +1 -1
- package/package.json +3 -3
package/dist/piggyback.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"piggyback.d.ts","sourceRoot":"","sources":["../src/piggyback.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAiBnD,wBAAgB,eAAe,CAC7B,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,MAAM,YAAY,EAC9B,cAAc,EAAE,MAAM,WAAW,EACjC,SAAS,CAAC,EAAE,YAAY,GACvB,IAAI,
|
|
1
|
+
{"version":3,"file":"piggyback.d.ts","sourceRoot":"","sources":["../src/piggyback.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAiBnD,wBAAgB,eAAe,CAC7B,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,MAAM,YAAY,EAC9B,cAAc,EAAE,MAAM,WAAW,EACjC,SAAS,CAAC,EAAE,YAAY,GACvB,IAAI,CAwFN"}
|
package/dist/piggyback.js
CHANGED
|
@@ -71,10 +71,14 @@ export function enablePiggyback(mcpServer, getSession, getAgentClient, telemetry
|
|
|
71
71
|
(inbox.mentions?.length ?? 0) > 0 ||
|
|
72
72
|
(inbox.unread_dms?.length ?? 0) > 0;
|
|
73
73
|
if (hasUnread && Array.isArray(result?.content)) {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
74
|
+
const selfName = getSession().agentName;
|
|
75
|
+
const inboxText = formatInbox(inbox, selfName);
|
|
76
|
+
if (inboxText) {
|
|
77
|
+
result.content.push({
|
|
78
|
+
type: 'text',
|
|
79
|
+
text: inboxText,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
78
82
|
}
|
|
79
83
|
}
|
|
80
84
|
catch {
|
|
@@ -85,7 +89,10 @@ export function enablePiggyback(mcpServer, getSession, getAgentClient, telemetry
|
|
|
85
89
|
return original(name, config, wrapped);
|
|
86
90
|
};
|
|
87
91
|
}
|
|
88
|
-
function formatInbox(inbox) {
|
|
92
|
+
function formatInbox(inbox, selfName) {
|
|
93
|
+
const norm = (s) => s.trim().replace(/^@/, '').toLowerCase();
|
|
94
|
+
const selfNorm = selfName ? norm(selfName) : null;
|
|
95
|
+
const isSelf = (name) => selfNorm != null && norm(name) === selfNorm;
|
|
89
96
|
const lines = ['--- Pending Messages ---'];
|
|
90
97
|
if (inbox.unread_channels?.length) {
|
|
91
98
|
lines.push('Unread channels:');
|
|
@@ -93,18 +100,26 @@ function formatInbox(inbox) {
|
|
|
93
100
|
lines.push(` #${ch.channel_name}: ${ch.unread_count} unread`);
|
|
94
101
|
}
|
|
95
102
|
}
|
|
96
|
-
|
|
103
|
+
const mentions = selfNorm
|
|
104
|
+
? inbox.mentions?.filter((m) => !isSelf(m.agent_name))
|
|
105
|
+
: inbox.mentions;
|
|
106
|
+
if (mentions?.length) {
|
|
97
107
|
lines.push('Mentions:');
|
|
98
|
-
for (const m of
|
|
108
|
+
for (const m of mentions) {
|
|
99
109
|
lines.push(` @${m.agent_name} in #${m.channel_name}: "${m.text}"`);
|
|
100
110
|
}
|
|
101
111
|
}
|
|
102
|
-
|
|
112
|
+
const dms = selfNorm
|
|
113
|
+
? inbox.unread_dms?.filter((dm) => !isSelf(dm.from))
|
|
114
|
+
: inbox.unread_dms;
|
|
115
|
+
if (dms?.length) {
|
|
103
116
|
lines.push('Unread DMs:');
|
|
104
|
-
for (const dm of
|
|
117
|
+
for (const dm of dms) {
|
|
105
118
|
lines.push(` From ${dm.from}: ${dm.unread_count} unread`);
|
|
106
119
|
}
|
|
107
120
|
}
|
|
121
|
+
if (lines.length === 1)
|
|
122
|
+
return '';
|
|
108
123
|
return lines.join('\n');
|
|
109
124
|
}
|
|
110
125
|
//# sourceMappingURL=piggyback.js.map
|
package/dist/piggyback.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"piggyback.js","sourceRoot":"","sources":["../src/piggyback.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"piggyback.js","sourceRoot":"","sources":["../src/piggyback.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channels.d.ts","sourceRoot":"","sources":["../../src/tools/channels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,cAAc,EAAE,MAAM,WAAW,GAChC,IAAI,
|
|
1
|
+
{"version":3,"file":"channels.d.ts","sourceRoot":"","sources":["../../src/tools/channels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,cAAc,EAAE,MAAM,WAAW,GAChC,IAAI,CAqIN"}
|
package/dist/tools/channels.js
CHANGED
|
@@ -2,11 +2,13 @@ import { z } from 'zod';
|
|
|
2
2
|
export function registerChannelTools(server, getAgentClient) {
|
|
3
3
|
// Tool 3: create_channel
|
|
4
4
|
server.registerTool('create_channel', {
|
|
5
|
+
title: 'Create Channel',
|
|
5
6
|
description: 'Create a new channel in the workspace.',
|
|
6
7
|
inputSchema: {
|
|
7
8
|
name: z.string().describe('Channel name (no spaces, lowercase)'),
|
|
8
9
|
topic: z.string().optional().describe('Channel topic/description'),
|
|
9
10
|
},
|
|
11
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true },
|
|
10
12
|
}, async ({ name, topic }) => {
|
|
11
13
|
const client = getAgentClient();
|
|
12
14
|
const channel = await client.channels.create({ name, topic });
|
|
@@ -14,10 +16,12 @@ export function registerChannelTools(server, getAgentClient) {
|
|
|
14
16
|
});
|
|
15
17
|
// Tool 4: list_channels
|
|
16
18
|
server.registerTool('list_channels', {
|
|
19
|
+
title: 'List Channels',
|
|
17
20
|
description: 'List all channels in the workspace.',
|
|
18
21
|
inputSchema: {
|
|
19
22
|
include_archived: z.boolean().optional().describe('Include archived channels'),
|
|
20
23
|
},
|
|
24
|
+
annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: true },
|
|
21
25
|
}, async ({ include_archived }) => {
|
|
22
26
|
const client = getAgentClient();
|
|
23
27
|
const channels = await client.channels.list(include_archived ? { include_archived } : undefined);
|
|
@@ -27,10 +31,12 @@ export function registerChannelTools(server, getAgentClient) {
|
|
|
27
31
|
});
|
|
28
32
|
// Tool 5: join_channel
|
|
29
33
|
server.registerTool('join_channel', {
|
|
34
|
+
title: 'Join Channel',
|
|
30
35
|
description: 'Join a channel.',
|
|
31
36
|
inputSchema: {
|
|
32
37
|
channel: z.string().describe('Channel name to join'),
|
|
33
38
|
},
|
|
39
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: true },
|
|
34
40
|
}, async ({ channel }) => {
|
|
35
41
|
const client = getAgentClient();
|
|
36
42
|
await client.channels.join(channel);
|
|
@@ -38,10 +44,12 @@ export function registerChannelTools(server, getAgentClient) {
|
|
|
38
44
|
});
|
|
39
45
|
// Tool 6: leave_channel
|
|
40
46
|
server.registerTool('leave_channel', {
|
|
47
|
+
title: 'Leave Channel',
|
|
41
48
|
description: 'Leave a channel.',
|
|
42
49
|
inputSchema: {
|
|
43
50
|
channel: z.string().describe('Channel name to leave'),
|
|
44
51
|
},
|
|
52
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: true },
|
|
45
53
|
}, async ({ channel }) => {
|
|
46
54
|
const client = getAgentClient();
|
|
47
55
|
await client.channels.leave(channel);
|
|
@@ -49,11 +57,13 @@ export function registerChannelTools(server, getAgentClient) {
|
|
|
49
57
|
});
|
|
50
58
|
// Tool 7: invite_to_channel
|
|
51
59
|
server.registerTool('invite_to_channel', {
|
|
60
|
+
title: 'Invite to Channel',
|
|
52
61
|
description: 'Invite an agent to a channel.',
|
|
53
62
|
inputSchema: {
|
|
54
63
|
channel: z.string().describe('Channel name'),
|
|
55
64
|
agent: z.string().describe('Agent name to invite'),
|
|
56
65
|
},
|
|
66
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: true },
|
|
57
67
|
}, async ({ channel, agent }) => {
|
|
58
68
|
const client = getAgentClient();
|
|
59
69
|
await client.channels.invite(channel, agent);
|
|
@@ -61,11 +71,13 @@ export function registerChannelTools(server, getAgentClient) {
|
|
|
61
71
|
});
|
|
62
72
|
// Tool 8: set_channel_topic
|
|
63
73
|
server.registerTool('set_channel_topic', {
|
|
74
|
+
title: 'Set Channel Topic',
|
|
64
75
|
description: 'Set the topic for a channel.',
|
|
65
76
|
inputSchema: {
|
|
66
77
|
channel: z.string().describe('Channel name'),
|
|
67
78
|
topic: z.string().describe('New topic text'),
|
|
68
79
|
},
|
|
80
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: true },
|
|
69
81
|
}, async ({ channel, topic }) => {
|
|
70
82
|
const client = getAgentClient();
|
|
71
83
|
const updated = await client.channels.setTopic(channel, topic);
|
|
@@ -73,10 +85,12 @@ export function registerChannelTools(server, getAgentClient) {
|
|
|
73
85
|
});
|
|
74
86
|
// Tool 9: archive_channel
|
|
75
87
|
server.registerTool('archive_channel', {
|
|
88
|
+
title: 'Archive Channel',
|
|
76
89
|
description: 'Archive a channel (soft delete).',
|
|
77
90
|
inputSchema: {
|
|
78
91
|
channel: z.string().describe('Channel name to archive'),
|
|
79
92
|
},
|
|
93
|
+
annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: true },
|
|
80
94
|
}, async ({ channel }) => {
|
|
81
95
|
const client = getAgentClient();
|
|
82
96
|
await client.channels.archive(channel);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channels.js","sourceRoot":"","sources":["../../src/tools/channels.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,oBAAoB,CAClC,MAAiB,EACjB,cAAiC;IAEjC,yBAAyB;IACzB,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,WAAW,EAAE,wCAAwC;QACrD,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;YAChE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;SACnE;
|
|
1
|
+
{"version":3,"file":"channels.js","sourceRoot":"","sources":["../../src/tools/channels.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/tools/features.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,cAAc,EAAE,MAAM,WAAW,GAChC,IAAI,
|
|
1
|
+
{"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/tools/features.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,cAAc,EAAE,MAAM,WAAW,GAChC,IAAI,CA+FN"}
|
package/dist/tools/features.js
CHANGED
|
@@ -1,28 +1,33 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export function registerFeatureTools(server, getAgentClient) {
|
|
3
3
|
server.registerTool('add_reaction', {
|
|
4
|
+
title: 'Add Reaction',
|
|
4
5
|
description: 'Add an emoji reaction to a message.',
|
|
5
6
|
inputSchema: {
|
|
6
7
|
message_id: z.string().describe('Message ID'),
|
|
7
8
|
emoji: z.string().describe('Emoji to react with'),
|
|
8
9
|
},
|
|
10
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: true },
|
|
9
11
|
}, async ({ message_id, emoji }) => {
|
|
10
12
|
const client = getAgentClient();
|
|
11
13
|
await client.react(message_id, emoji);
|
|
12
14
|
return { content: [{ type: 'text', text: `Reacted with ${emoji}` }] };
|
|
13
15
|
});
|
|
14
16
|
server.registerTool('remove_reaction', {
|
|
17
|
+
title: 'Remove Reaction',
|
|
15
18
|
description: 'Remove an emoji reaction from a message.',
|
|
16
19
|
inputSchema: {
|
|
17
20
|
message_id: z.string().describe('Message ID'),
|
|
18
21
|
emoji: z.string().describe('Emoji to remove'),
|
|
19
22
|
},
|
|
23
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: true },
|
|
20
24
|
}, async ({ message_id, emoji }) => {
|
|
21
25
|
const client = getAgentClient();
|
|
22
26
|
await client.unreact(message_id, emoji);
|
|
23
27
|
return { content: [{ type: 'text', text: `Removed reaction ${emoji}` }] };
|
|
24
28
|
});
|
|
25
29
|
server.registerTool('search_messages', {
|
|
30
|
+
title: 'Search Messages',
|
|
26
31
|
description: 'Search messages across channels.',
|
|
27
32
|
inputSchema: {
|
|
28
33
|
query: z.string().describe('Search query'),
|
|
@@ -30,45 +35,54 @@ export function registerFeatureTools(server, getAgentClient) {
|
|
|
30
35
|
from: z.string().optional().describe('Filter by sender agent'),
|
|
31
36
|
limit: z.number().optional().describe('Max results'),
|
|
32
37
|
},
|
|
38
|
+
annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: true },
|
|
33
39
|
}, async ({ query, channel, from, limit }) => {
|
|
34
40
|
const client = getAgentClient();
|
|
35
41
|
const results = await client.search(query, { channel, from, limit });
|
|
36
42
|
return { content: [{ type: 'text', text: JSON.stringify(results, null, 2) }] };
|
|
37
43
|
});
|
|
38
44
|
server.registerTool('check_inbox', {
|
|
45
|
+
title: 'Check Inbox',
|
|
39
46
|
description: 'Check inbox for unread messages, mentions, and DMs.',
|
|
47
|
+
annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: true },
|
|
40
48
|
}, async () => {
|
|
41
49
|
const client = getAgentClient();
|
|
42
50
|
const inbox = await client.inbox();
|
|
43
51
|
return { content: [{ type: 'text', text: JSON.stringify(inbox, null, 2) }] };
|
|
44
52
|
});
|
|
45
53
|
server.registerTool('mark_read', {
|
|
54
|
+
title: 'Mark as Read',
|
|
46
55
|
description: 'Mark a message as read.',
|
|
47
56
|
inputSchema: {
|
|
48
57
|
message_id: z.string().describe('Message ID to mark as read'),
|
|
49
58
|
},
|
|
59
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: true },
|
|
50
60
|
}, async ({ message_id }) => {
|
|
51
61
|
const client = getAgentClient();
|
|
52
62
|
await client.markRead(message_id);
|
|
53
63
|
return { content: [{ type: 'text', text: `Marked message ${message_id} as read` }] };
|
|
54
64
|
});
|
|
55
65
|
server.registerTool('get_readers', {
|
|
66
|
+
title: 'Get Readers',
|
|
56
67
|
description: 'Get list of agents who have read a message.',
|
|
57
68
|
inputSchema: {
|
|
58
69
|
message_id: z.string().describe('Message ID'),
|
|
59
70
|
},
|
|
71
|
+
annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: true },
|
|
60
72
|
}, async ({ message_id }) => {
|
|
61
73
|
const client = getAgentClient();
|
|
62
74
|
const readers = await client.readers(message_id);
|
|
63
75
|
return { content: [{ type: 'text', text: JSON.stringify(readers, null, 2) }] };
|
|
64
76
|
});
|
|
65
77
|
server.registerTool('upload_file', {
|
|
78
|
+
title: 'Upload File',
|
|
66
79
|
description: 'Upload a file and get an attachment ID.',
|
|
67
80
|
inputSchema: {
|
|
68
81
|
filename: z.string().describe('File name'),
|
|
69
82
|
content_type: z.string().describe('MIME type (e.g. text/plain, image/png)'),
|
|
70
83
|
size_bytes: z.number().describe('File size in bytes'),
|
|
71
84
|
},
|
|
85
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true },
|
|
72
86
|
}, async ({ filename, content_type, size_bytes }) => {
|
|
73
87
|
const client = getAgentClient();
|
|
74
88
|
const upload = await client.files.upload({ filename, content_type, size_bytes });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"features.js","sourceRoot":"","sources":["../../src/tools/features.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,oBAAoB,CAClC,MAAiB,EACjB,cAAiC;IAEjC,MAAM,CAAC,YAAY,CAAC,cAAc,EAAE;QAClC,WAAW,EAAE,qCAAqC;QAClD,WAAW,EAAE;YACX,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;SAClD;
|
|
1
|
+
{"version":3,"file":"features.js","sourceRoot":"","sources":["../../src/tools/features.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messaging.d.ts","sourceRoot":"","sources":["../../src/tools/messaging.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,EACjB,cAAc,EAAE,MAAM,WAAW,GAChC,IAAI,
|
|
1
|
+
{"version":3,"file":"messaging.d.ts","sourceRoot":"","sources":["../../src/tools/messaging.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,EACjB,cAAc,EAAE,MAAM,WAAW,GAChC,IAAI,CAkGN"}
|
package/dist/tools/messaging.js
CHANGED
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export function registerMessagingTools(server, getAgentClient) {
|
|
3
3
|
server.registerTool('post_message', {
|
|
4
|
+
title: 'Post Message',
|
|
4
5
|
description: 'Post a message to a channel.',
|
|
5
6
|
inputSchema: {
|
|
6
7
|
channel: z.string().describe('Channel name'),
|
|
7
8
|
text: z.string().describe('Message text'),
|
|
8
9
|
attachments: z.array(z.string()).optional().describe('File IDs to attach'),
|
|
9
10
|
},
|
|
11
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true },
|
|
10
12
|
}, async ({ channel, text, attachments }) => {
|
|
11
13
|
const client = getAgentClient();
|
|
12
14
|
const msg = await client.send(channel, text, attachments ? { attachments } : undefined);
|
|
13
15
|
return { content: [{ type: 'text', text: JSON.stringify(msg, null, 2) }] };
|
|
14
16
|
});
|
|
15
17
|
server.registerTool('get_messages', {
|
|
18
|
+
title: 'Get Messages',
|
|
16
19
|
description: 'Get message history from a channel.',
|
|
17
20
|
inputSchema: {
|
|
18
21
|
channel: z.string().describe('Channel name'),
|
|
@@ -20,58 +23,69 @@ export function registerMessagingTools(server, getAgentClient) {
|
|
|
20
23
|
before: z.string().optional().describe('Cursor: messages before this ID'),
|
|
21
24
|
after: z.string().optional().describe('Cursor: messages after this ID'),
|
|
22
25
|
},
|
|
26
|
+
annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: true },
|
|
23
27
|
}, async ({ channel, limit, before, after }) => {
|
|
24
28
|
const client = getAgentClient();
|
|
25
29
|
const msgs = await client.messages(channel, { limit, before, after });
|
|
26
30
|
return { content: [{ type: 'text', text: JSON.stringify(msgs, null, 2) }] };
|
|
27
31
|
});
|
|
28
32
|
server.registerTool('reply_to_thread', {
|
|
33
|
+
title: 'Reply to Thread',
|
|
29
34
|
description: 'Reply to a message thread.',
|
|
30
35
|
inputSchema: {
|
|
31
36
|
message_id: z.string().describe('Parent message ID'),
|
|
32
37
|
text: z.string().describe('Reply text'),
|
|
33
38
|
},
|
|
39
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true },
|
|
34
40
|
}, async ({ message_id, text }) => {
|
|
35
41
|
const client = getAgentClient();
|
|
36
42
|
const reply = await client.reply(message_id, text);
|
|
37
43
|
return { content: [{ type: 'text', text: JSON.stringify(reply, null, 2) }] };
|
|
38
44
|
});
|
|
39
45
|
server.registerTool('get_thread', {
|
|
46
|
+
title: 'Get Thread',
|
|
40
47
|
description: 'Get a thread (parent message + replies).',
|
|
41
48
|
inputSchema: {
|
|
42
49
|
message_id: z.string().describe('Parent message ID'),
|
|
43
50
|
limit: z.number().optional().describe('Max replies to return'),
|
|
44
51
|
},
|
|
52
|
+
annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: true },
|
|
45
53
|
}, async ({ message_id, limit }) => {
|
|
46
54
|
const client = getAgentClient();
|
|
47
55
|
const thread = await client.thread(message_id, limit ? { limit } : undefined);
|
|
48
56
|
return { content: [{ type: 'text', text: JSON.stringify(thread, null, 2) }] };
|
|
49
57
|
});
|
|
50
58
|
server.registerTool('send_dm', {
|
|
59
|
+
title: 'Send Direct Message',
|
|
51
60
|
description: 'Send a direct message to another agent.',
|
|
52
61
|
inputSchema: {
|
|
53
62
|
to: z.string().describe('Recipient agent name'),
|
|
54
63
|
text: z.string().describe('Message text'),
|
|
55
64
|
},
|
|
65
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true },
|
|
56
66
|
}, async ({ to, text }) => {
|
|
57
67
|
const client = getAgentClient();
|
|
58
68
|
const result = await client.dm(to, text);
|
|
59
69
|
return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
|
|
60
70
|
});
|
|
61
71
|
server.registerTool('get_dms', {
|
|
72
|
+
title: 'List DM Conversations',
|
|
62
73
|
description: 'List DM conversations.',
|
|
74
|
+
annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: true },
|
|
63
75
|
}, async () => {
|
|
64
76
|
const client = getAgentClient();
|
|
65
77
|
const convos = await client.dms.conversations();
|
|
66
78
|
return { content: [{ type: 'text', text: JSON.stringify(convos, null, 2) }] };
|
|
67
79
|
});
|
|
68
80
|
server.registerTool('send_group_dm', {
|
|
81
|
+
title: 'Send Group DM',
|
|
69
82
|
description: 'Create a group DM conversation.',
|
|
70
83
|
inputSchema: {
|
|
71
84
|
participants: z.array(z.string()).describe('Agent names to include'),
|
|
72
85
|
name: z.string().optional().describe('Group name'),
|
|
73
86
|
text: z.string().describe('First message text'),
|
|
74
87
|
},
|
|
88
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true },
|
|
75
89
|
}, async ({ participants, name, text }) => {
|
|
76
90
|
const client = getAgentClient();
|
|
77
91
|
const result = await client.dms.createGroup({ participants, name, text });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messaging.js","sourceRoot":"","sources":["../../src/tools/messaging.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,sBAAsB,CACpC,MAAiB,EACjB,cAAiC;IAEjC,MAAM,CAAC,YAAY,CAAC,cAAc,EAAE;QAClC,WAAW,EAAE,8BAA8B;QAC3C,WAAW,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;YAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;YACzC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;SAC3E;
|
|
1
|
+
{"version":3,"file":"messaging.js","sourceRoot":"","sources":["../../src/tools/messaging.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"programmability.d.ts","sourceRoot":"","sources":["../../src/tools/programmability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAEzD,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,MAAM,KAAK,EACrB,cAAc,EAAE,MAAM,WAAW,GAChC,IAAI,
|
|
1
|
+
{"version":3,"file":"programmability.d.ts","sourceRoot":"","sources":["../../src/tools/programmability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAEzD,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,MAAM,KAAK,EACrB,cAAc,EAAE,MAAM,WAAW,GAChC,IAAI,CAyLN"}
|
|
@@ -2,40 +2,48 @@ import { z } from 'zod';
|
|
|
2
2
|
export function registerProgrammabilityTools(server, getRelay, getAgentClient) {
|
|
3
3
|
// === Inbound Webhooks ===
|
|
4
4
|
server.registerTool('create_webhook', {
|
|
5
|
+
title: 'Create Webhook',
|
|
5
6
|
description: 'Create an inbound webhook that external services can POST to, delivering messages into a channel.',
|
|
6
7
|
inputSchema: {
|
|
7
8
|
name: z.string().describe('Webhook name (e.g. "GitHub Alerts")'),
|
|
8
9
|
channel: z.string().describe('Target channel name'),
|
|
9
10
|
},
|
|
11
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true },
|
|
10
12
|
}, async ({ name, channel }) => {
|
|
11
13
|
const client = getAgentClient();
|
|
12
14
|
const result = await client.client.post('/v1/webhooks', { name, channel });
|
|
13
15
|
return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
|
|
14
16
|
});
|
|
15
17
|
server.registerTool('list_webhooks', {
|
|
18
|
+
title: 'List Webhooks',
|
|
16
19
|
description: 'List all inbound webhooks in the workspace.',
|
|
20
|
+
annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: true },
|
|
17
21
|
}, async () => {
|
|
18
22
|
const relay = getRelay();
|
|
19
23
|
const webhooks = await relay.webhooks.list();
|
|
20
24
|
return { content: [{ type: 'text', text: JSON.stringify(webhooks, null, 2) }] };
|
|
21
25
|
});
|
|
22
26
|
server.registerTool('delete_webhook', {
|
|
27
|
+
title: 'Delete Webhook',
|
|
23
28
|
description: 'Delete an inbound webhook by ID.',
|
|
24
29
|
inputSchema: {
|
|
25
30
|
webhook_id: z.string().describe('Webhook ID to delete'),
|
|
26
31
|
},
|
|
32
|
+
annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: true },
|
|
27
33
|
}, async ({ webhook_id }) => {
|
|
28
34
|
const relay = getRelay();
|
|
29
35
|
await relay.webhooks.delete(webhook_id);
|
|
30
36
|
return { content: [{ type: 'text', text: `Deleted webhook ${webhook_id}` }] };
|
|
31
37
|
});
|
|
32
38
|
server.registerTool('trigger_webhook', {
|
|
39
|
+
title: 'Trigger Webhook',
|
|
33
40
|
description: 'Trigger an inbound webhook to post a message into its channel.',
|
|
34
41
|
inputSchema: {
|
|
35
42
|
webhook_id: z.string().describe('Webhook ID to trigger'),
|
|
36
43
|
text: z.string().optional().describe('Message text'),
|
|
37
44
|
source: z.string().optional().describe('Source identifier (e.g. "github")'),
|
|
38
45
|
},
|
|
46
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true },
|
|
39
47
|
}, async ({ webhook_id, text, source }) => {
|
|
40
48
|
const relay = getRelay();
|
|
41
49
|
const result = await relay.webhooks.trigger(webhook_id, { text, source });
|
|
@@ -43,6 +51,7 @@ export function registerProgrammabilityTools(server, getRelay, getAgentClient) {
|
|
|
43
51
|
});
|
|
44
52
|
// === Event Subscriptions ===
|
|
45
53
|
server.registerTool('create_subscription', {
|
|
54
|
+
title: 'Create Event Subscription',
|
|
46
55
|
description: 'Create an outbound event subscription. The server will POST to the given URL when matching events occur.',
|
|
47
56
|
inputSchema: {
|
|
48
57
|
events: z.array(z.string()).describe('Event types to subscribe to (e.g. ["message.created", "reaction.added"])'),
|
|
@@ -51,6 +60,7 @@ export function registerProgrammabilityTools(server, getRelay, getAgentClient) {
|
|
|
51
60
|
filter_mentions: z.string().optional().describe('Only fire when this agent is mentioned'),
|
|
52
61
|
secret: z.string().optional().describe('Secret for HMAC signature verification'),
|
|
53
62
|
},
|
|
63
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true },
|
|
54
64
|
}, async ({ events, url, filter_channel, filter_mentions, secret }) => {
|
|
55
65
|
const relay = getRelay();
|
|
56
66
|
const filter = (filter_channel || filter_mentions)
|
|
@@ -65,27 +75,33 @@ export function registerProgrammabilityTools(server, getRelay, getAgentClient) {
|
|
|
65
75
|
return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
|
|
66
76
|
});
|
|
67
77
|
server.registerTool('list_subscriptions', {
|
|
78
|
+
title: 'List Subscriptions',
|
|
68
79
|
description: 'List all outbound event subscriptions in the workspace.',
|
|
80
|
+
annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: true },
|
|
69
81
|
}, async () => {
|
|
70
82
|
const relay = getRelay();
|
|
71
83
|
const subs = await relay.subscriptions.list();
|
|
72
84
|
return { content: [{ type: 'text', text: JSON.stringify(subs, null, 2) }] };
|
|
73
85
|
});
|
|
74
86
|
server.registerTool('get_subscription', {
|
|
87
|
+
title: 'Get Subscription',
|
|
75
88
|
description: 'Get details of a specific event subscription.',
|
|
76
89
|
inputSchema: {
|
|
77
90
|
subscription_id: z.string().describe('Subscription ID'),
|
|
78
91
|
},
|
|
92
|
+
annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: true },
|
|
79
93
|
}, async ({ subscription_id }) => {
|
|
80
94
|
const relay = getRelay();
|
|
81
95
|
const sub = await relay.subscriptions.get(subscription_id);
|
|
82
96
|
return { content: [{ type: 'text', text: JSON.stringify(sub, null, 2) }] };
|
|
83
97
|
});
|
|
84
98
|
server.registerTool('delete_subscription', {
|
|
99
|
+
title: 'Delete Subscription',
|
|
85
100
|
description: 'Delete an event subscription by ID.',
|
|
86
101
|
inputSchema: {
|
|
87
102
|
subscription_id: z.string().describe('Subscription ID to delete'),
|
|
88
103
|
},
|
|
104
|
+
annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: true },
|
|
89
105
|
}, async ({ subscription_id }) => {
|
|
90
106
|
const relay = getRelay();
|
|
91
107
|
await relay.subscriptions.delete(subscription_id);
|
|
@@ -93,6 +109,7 @@ export function registerProgrammabilityTools(server, getRelay, getAgentClient) {
|
|
|
93
109
|
});
|
|
94
110
|
// === Agent Commands ===
|
|
95
111
|
server.registerTool('register_command', {
|
|
112
|
+
title: 'Register Command',
|
|
96
113
|
description: 'Register a slash command that an agent can handle. Other agents can invoke it.',
|
|
97
114
|
inputSchema: {
|
|
98
115
|
command: z.string().describe('Command name (e.g. "deploy")'),
|
|
@@ -105,6 +122,7 @@ export function registerProgrammabilityTools(server, getRelay, getAgentClient) {
|
|
|
105
122
|
required: z.boolean().optional(),
|
|
106
123
|
})).optional().describe('Command parameters'),
|
|
107
124
|
},
|
|
125
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: true },
|
|
108
126
|
}, async ({ command, description, handler_agent, parameters }) => {
|
|
109
127
|
const relay = getRelay();
|
|
110
128
|
const result = await relay.commands.register({
|
|
@@ -116,23 +134,28 @@ export function registerProgrammabilityTools(server, getRelay, getAgentClient) {
|
|
|
116
134
|
return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
|
|
117
135
|
});
|
|
118
136
|
server.registerTool('list_commands', {
|
|
137
|
+
title: 'List Commands',
|
|
119
138
|
description: 'List all registered agent commands in the workspace.',
|
|
139
|
+
annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: true },
|
|
120
140
|
}, async () => {
|
|
121
141
|
const relay = getRelay();
|
|
122
142
|
const commands = await relay.commands.list();
|
|
123
143
|
return { content: [{ type: 'text', text: JSON.stringify(commands, null, 2) }] };
|
|
124
144
|
});
|
|
125
145
|
server.registerTool('delete_command', {
|
|
146
|
+
title: 'Delete Command',
|
|
126
147
|
description: 'Delete a registered command.',
|
|
127
148
|
inputSchema: {
|
|
128
149
|
command: z.string().describe('Command name to delete'),
|
|
129
150
|
},
|
|
151
|
+
annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: true },
|
|
130
152
|
}, async ({ command }) => {
|
|
131
153
|
const relay = getRelay();
|
|
132
154
|
await relay.commands.delete(command);
|
|
133
155
|
return { content: [{ type: 'text', text: `Deleted command /${command}` }] };
|
|
134
156
|
});
|
|
135
157
|
server.registerTool('invoke_command', {
|
|
158
|
+
title: 'Invoke Command',
|
|
136
159
|
description: 'Invoke a registered slash command as the current agent.',
|
|
137
160
|
inputSchema: {
|
|
138
161
|
command: z.string().describe('Command name to invoke'),
|
|
@@ -140,6 +163,7 @@ export function registerProgrammabilityTools(server, getRelay, getAgentClient) {
|
|
|
140
163
|
args: z.string().optional().describe('Raw argument string'),
|
|
141
164
|
parameters: z.string().optional().describe('JSON-encoded structured parameters object'),
|
|
142
165
|
},
|
|
166
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true },
|
|
143
167
|
}, async ({ command, channel, args, parameters }) => {
|
|
144
168
|
const client = getAgentClient();
|
|
145
169
|
const parsedParams = parameters ? JSON.parse(parameters) : undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"programmability.js","sourceRoot":"","sources":["../../src/tools/programmability.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,4BAA4B,CAC1C,MAAiB,EACjB,QAAqB,EACrB,cAAiC;IAEjC,2BAA2B;IAE3B,MAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE;QACpC,WAAW,EAAE,mGAAmG;QAChH,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;YAChE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;SACpD;
|
|
1
|
+
{"version":3,"file":"programmability.js","sourceRoot":"","sources":["../../src/tools/programmability.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../src/tools/registration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AA6ChD,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,MAAM,KAAK,EACrB,UAAU,EAAE,MAAM,YAAY,EAC9B,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK,IAAI,EAClD,OAAO,CAAC,EAAE,MAAM,GACf,IAAI,
|
|
1
|
+
{"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../src/tools/registration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AA6ChD,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,MAAM,KAAK,EACrB,UAAU,EAAE,MAAM,YAAY,EAC9B,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK,IAAI,EAClD,OAAO,CAAC,EAAE,MAAM,GACf,IAAI,CAqHN"}
|
|
@@ -26,10 +26,12 @@ function requireWorkspaceKey(session) {
|
|
|
26
26
|
export function registerRegistrationTools(server, getRelay, getSession, setSession, baseUrl) {
|
|
27
27
|
// Tool 1: create_workspace
|
|
28
28
|
server.registerTool('create_workspace', {
|
|
29
|
+
title: 'Create Workspace',
|
|
29
30
|
description: 'Create a new workspace and store its workspace key in this MCP session for subsequent registration calls.',
|
|
30
31
|
inputSchema: {
|
|
31
32
|
name: z.string().describe('Workspace name'),
|
|
32
33
|
},
|
|
34
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true },
|
|
33
35
|
}, async ({ name }) => {
|
|
34
36
|
const workspace = await createWorkspace(name, baseUrl);
|
|
35
37
|
const workspaceKey = workspace.api_key ?? workspace.apiKey;
|
|
@@ -44,10 +46,12 @@ export function registerRegistrationTools(server, getRelay, getSession, setSessi
|
|
|
44
46
|
});
|
|
45
47
|
// Tool 2: set_workspace_key
|
|
46
48
|
server.registerTool('set_workspace_key', {
|
|
49
|
+
title: 'Set Workspace Key',
|
|
47
50
|
description: 'Set the workspace key (rk_live_...) for this MCP session. This enables register and workspace-level tools.',
|
|
48
51
|
inputSchema: {
|
|
49
52
|
api_key: z.string().describe('Workspace API key (rk_live_...)'),
|
|
50
53
|
},
|
|
54
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: false },
|
|
51
55
|
}, async ({ api_key }) => {
|
|
52
56
|
if (!api_key.startsWith('rk_live_')) {
|
|
53
57
|
throw new Error('Workspace key must start with "rk_live_"');
|
|
@@ -74,12 +78,14 @@ export function registerRegistrationTools(server, getRelay, getSession, setSessi
|
|
|
74
78
|
});
|
|
75
79
|
// Tool 3: register
|
|
76
80
|
server.registerTool('register', {
|
|
81
|
+
title: 'Register Agent',
|
|
77
82
|
description: 'Register this agent in the current workspace and obtain an agent token for subsequent operations.',
|
|
78
83
|
inputSchema: {
|
|
79
84
|
name: z.string().describe('Unique agent name'),
|
|
80
85
|
type: z.enum(['agent', 'human']).optional().describe('Agent type'),
|
|
81
86
|
persona: z.string().optional().describe('Agent persona description'),
|
|
82
87
|
},
|
|
88
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: true },
|
|
83
89
|
}, async ({ name, type, persona }) => {
|
|
84
90
|
requireWorkspaceKey(getSession());
|
|
85
91
|
const relay = getRelay();
|
|
@@ -92,6 +98,7 @@ export function registerRegistrationTools(server, getRelay, getSession, setSessi
|
|
|
92
98
|
});
|
|
93
99
|
// Tool 4: list_agents
|
|
94
100
|
server.registerTool('list_agents', {
|
|
101
|
+
title: 'List Agents',
|
|
95
102
|
description: 'List all agents registered in the workspace.',
|
|
96
103
|
inputSchema: {
|
|
97
104
|
status: z
|
|
@@ -99,6 +106,7 @@ export function registerRegistrationTools(server, getRelay, getSession, setSessi
|
|
|
99
106
|
.optional()
|
|
100
107
|
.describe('Filter by agent status'),
|
|
101
108
|
},
|
|
109
|
+
annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: true },
|
|
102
110
|
}, async ({ status }) => {
|
|
103
111
|
requireWorkspaceKey(getSession());
|
|
104
112
|
const relay = getRelay();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registration.js","sourceRoot":"","sources":["../../src/tools/registration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB,MAAM,gBAAgB,GAAG,2BAA2B,CAAC;AAErD,SAAS,gBAAgB,CAAC,OAAgB;IACxC,OAAO,CAAC,OAAO,IAAI,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,IAAY,EACZ,OAAgB;IAEhB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,gBAAgB,EAAE;QACzE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC;KAC/B,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA4C,CAAC;IACnF,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,4BAA4B,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,CAAC;AACtB,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAqB;IAChD,IAAI,OAAO,CAAC,YAAY;QAAE,OAAO;IACjC,MAAM,IAAI,KAAK,CACb,qFAAqF,CACtF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,MAAiB,EACjB,QAAqB,EACrB,UAA8B,EAC9B,UAAkD,EAClD,OAAgB;IAEhB,2BAA2B;IAC3B,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;QACE,WAAW,EACT,2GAA2G;QAC7G,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;SAC5C;
|
|
1
|
+
{"version":3,"file":"registration.js","sourceRoot":"","sources":["../../src/tools/registration.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@relaycast/mcp",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
"lint": "eslint src/"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@relaycast/sdk": "0.2.
|
|
17
|
-
"@relaycast/types": "0.2.
|
|
16
|
+
"@relaycast/sdk": "0.2.3",
|
|
17
|
+
"@relaycast/types": "0.2.3",
|
|
18
18
|
"@modelcontextprotocol/sdk": "^1.26.0",
|
|
19
19
|
"express": "^5.2.1",
|
|
20
20
|
"zod": "^4.3.6"
|