@beeper/desktop-mcp 0.1.2
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/LICENSE +7 -0
- package/README.md +252 -0
- package/code-tool-paths.cjs +6 -0
- package/code-tool-paths.cjs.map +1 -0
- package/code-tool-paths.d.cts +2 -0
- package/code-tool-paths.d.cts.map +1 -0
- package/code-tool-types.d.mts +14 -0
- package/code-tool-types.d.mts.map +1 -0
- package/code-tool-types.d.ts +14 -0
- package/code-tool-types.d.ts.map +1 -0
- package/code-tool-types.js +4 -0
- package/code-tool-types.js.map +1 -0
- package/code-tool-types.mjs +3 -0
- package/code-tool-types.mjs.map +1 -0
- package/code-tool-worker.d.mts +5 -0
- package/code-tool-worker.d.mts.map +1 -0
- package/code-tool-worker.d.ts +5 -0
- package/code-tool-worker.d.ts.map +1 -0
- package/code-tool-worker.js +45 -0
- package/code-tool-worker.js.map +1 -0
- package/code-tool-worker.mjs +40 -0
- package/code-tool-worker.mjs.map +1 -0
- package/code-tool.d.mts +12 -0
- package/code-tool.d.mts.map +1 -0
- package/code-tool.d.ts +12 -0
- package/code-tool.d.ts.map +1 -0
- package/code-tool.js +123 -0
- package/code-tool.js.map +1 -0
- package/code-tool.mjs +120 -0
- package/code-tool.mjs.map +1 -0
- package/compat.d.mts +58 -0
- package/compat.d.mts.map +1 -0
- package/compat.d.ts +58 -0
- package/compat.d.ts.map +1 -0
- package/compat.js +387 -0
- package/compat.js.map +1 -0
- package/compat.mjs +378 -0
- package/compat.mjs.map +1 -0
- package/dynamic-tools.d.mts +12 -0
- package/dynamic-tools.d.mts.map +1 -0
- package/dynamic-tools.d.ts +12 -0
- package/dynamic-tools.d.ts.map +1 -0
- package/dynamic-tools.js +135 -0
- package/dynamic-tools.js.map +1 -0
- package/dynamic-tools.mjs +132 -0
- package/dynamic-tools.mjs.map +1 -0
- package/filtering.d.mts +2 -0
- package/filtering.d.mts.map +1 -0
- package/filtering.d.ts +2 -0
- package/filtering.d.ts.map +1 -0
- package/filtering.js +20 -0
- package/filtering.js.map +1 -0
- package/filtering.mjs +13 -0
- package/filtering.mjs.map +1 -0
- package/headers.d.mts +4 -0
- package/headers.d.mts.map +1 -0
- package/headers.d.ts +4 -0
- package/headers.d.ts.map +1 -0
- package/headers.js +22 -0
- package/headers.js.map +1 -0
- package/headers.mjs +18 -0
- package/headers.mjs.map +1 -0
- package/http.d.mts +5 -0
- package/http.d.mts.map +1 -0
- package/http.d.ts +5 -0
- package/http.d.ts.map +1 -0
- package/http.js +127 -0
- package/http.js.map +1 -0
- package/http.mjs +119 -0
- package/http.mjs.map +1 -0
- package/index.d.mts +3 -0
- package/index.d.mts.map +1 -0
- package/index.d.ts +3 -0
- package/index.d.ts.map +1 -0
- package/index.js +91 -0
- package/index.js.map +1 -0
- package/index.mjs +89 -0
- package/index.mjs.map +1 -0
- package/options.d.mts +19 -0
- package/options.d.mts.map +1 -0
- package/options.d.ts +19 -0
- package/options.d.ts.map +1 -0
- package/options.js +417 -0
- package/options.js.map +1 -0
- package/options.mjs +410 -0
- package/options.mjs.map +1 -0
- package/package.json +206 -0
- package/server.d.mts +35 -0
- package/server.d.mts.map +1 -0
- package/server.d.ts +35 -0
- package/server.d.ts.map +1 -0
- package/server.js +151 -0
- package/server.js.map +1 -0
- package/server.mjs +137 -0
- package/server.mjs.map +1 -0
- package/src/code-tool-paths.cts +3 -0
- package/src/code-tool-types.ts +14 -0
- package/src/code-tool-worker.ts +46 -0
- package/src/code-tool.ts +144 -0
- package/src/compat.ts +483 -0
- package/src/dynamic-tools.ts +159 -0
- package/src/filtering.ts +14 -0
- package/src/headers.ts +23 -0
- package/src/http.ts +137 -0
- package/src/index.ts +108 -0
- package/src/options.ts +456 -0
- package/src/server.ts +184 -0
- package/src/stdio.ts +13 -0
- package/src/tools/accounts/get-accounts.ts +34 -0
- package/src/tools/app/open-app.ts +47 -0
- package/src/tools/chats/archive-chat.ts +42 -0
- package/src/tools/chats/get-chat.ts +46 -0
- package/src/tools/chats/search-chats.ts +101 -0
- package/src/tools/index.ts +89 -0
- package/src/tools/messages/get-attachment.ts +42 -0
- package/src/tools/messages/search-messages.ts +133 -0
- package/src/tools/messages/send-message.ts +46 -0
- package/src/tools/reminders/clear-chat-reminder.ts +38 -0
- package/src/tools/reminders/set-chat-reminder.ts +53 -0
- package/src/tools/types.ts +103 -0
- package/src/tools.ts +1 -0
- package/src/tsconfig.json +11 -0
- package/stdio.d.mts +3 -0
- package/stdio.d.mts.map +1 -0
- package/stdio.d.ts +3 -0
- package/stdio.d.ts.map +1 -0
- package/stdio.js +14 -0
- package/stdio.js.map +1 -0
- package/stdio.mjs +10 -0
- package/stdio.mjs.map +1 -0
- package/tools/accounts/get-accounts.d.mts +45 -0
- package/tools/accounts/get-accounts.d.mts.map +1 -0
- package/tools/accounts/get-accounts.d.ts +45 -0
- package/tools/accounts/get-accounts.d.ts.map +1 -0
- package/tools/accounts/get-accounts.js +31 -0
- package/tools/accounts/get-accounts.js.map +1 -0
- package/tools/accounts/get-accounts.mjs +27 -0
- package/tools/accounts/get-accounts.mjs.map +1 -0
- package/tools/app/open-app.d.mts +45 -0
- package/tools/app/open-app.d.mts.map +1 -0
- package/tools/app/open-app.d.ts +45 -0
- package/tools/app/open-app.d.ts.map +1 -0
- package/tools/app/open-app.js +43 -0
- package/tools/app/open-app.js.map +1 -0
- package/tools/app/open-app.mjs +39 -0
- package/tools/app/open-app.mjs.map +1 -0
- package/tools/chats/archive-chat.d.mts +45 -0
- package/tools/chats/archive-chat.d.mts.map +1 -0
- package/tools/chats/archive-chat.d.ts +45 -0
- package/tools/chats/archive-chat.d.ts.map +1 -0
- package/tools/chats/archive-chat.js +39 -0
- package/tools/chats/archive-chat.js.map +1 -0
- package/tools/chats/archive-chat.mjs +35 -0
- package/tools/chats/archive-chat.mjs.map +1 -0
- package/tools/chats/get-chat.d.mts +45 -0
- package/tools/chats/get-chat.d.mts.map +1 -0
- package/tools/chats/get-chat.d.ts +45 -0
- package/tools/chats/get-chat.d.ts.map +1 -0
- package/tools/chats/get-chat.js +41 -0
- package/tools/chats/get-chat.js.map +1 -0
- package/tools/chats/get-chat.mjs +37 -0
- package/tools/chats/get-chat.mjs.map +1 -0
- package/tools/chats/search-chats.d.mts +45 -0
- package/tools/chats/search-chats.d.mts.map +1 -0
- package/tools/chats/search-chats.d.ts +45 -0
- package/tools/chats/search-chats.d.ts.map +1 -0
- package/tools/chats/search-chats.js +90 -0
- package/tools/chats/search-chats.js.map +1 -0
- package/tools/chats/search-chats.mjs +86 -0
- package/tools/chats/search-chats.mjs.map +1 -0
- package/tools/index.d.mts +10 -0
- package/tools/index.d.mts.map +1 -0
- package/tools/index.d.ts +10 -0
- package/tools/index.d.ts.map +1 -0
- package/tools/index.js +73 -0
- package/tools/index.js.map +1 -0
- package/tools/index.mjs +66 -0
- package/tools/index.mjs.map +1 -0
- package/tools/messages/get-attachment.d.mts +45 -0
- package/tools/messages/get-attachment.d.mts.map +1 -0
- package/tools/messages/get-attachment.d.ts +45 -0
- package/tools/messages/get-attachment.d.ts.map +1 -0
- package/tools/messages/get-attachment.js +39 -0
- package/tools/messages/get-attachment.js.map +1 -0
- package/tools/messages/get-attachment.mjs +35 -0
- package/tools/messages/get-attachment.mjs.map +1 -0
- package/tools/messages/search-messages.d.mts +45 -0
- package/tools/messages/search-messages.d.mts.map +1 -0
- package/tools/messages/search-messages.d.ts +45 -0
- package/tools/messages/search-messages.d.ts.map +1 -0
- package/tools/messages/search-messages.js +121 -0
- package/tools/messages/search-messages.js.map +1 -0
- package/tools/messages/search-messages.mjs +117 -0
- package/tools/messages/search-messages.mjs.map +1 -0
- package/tools/messages/send-message.d.mts +45 -0
- package/tools/messages/send-message.d.mts.map +1 -0
- package/tools/messages/send-message.d.ts +45 -0
- package/tools/messages/send-message.d.ts.map +1 -0
- package/tools/messages/send-message.js +43 -0
- package/tools/messages/send-message.js.map +1 -0
- package/tools/messages/send-message.mjs +39 -0
- package/tools/messages/send-message.mjs.map +1 -0
- package/tools/reminders/clear-chat-reminder.d.mts +45 -0
- package/tools/reminders/clear-chat-reminder.d.mts.map +1 -0
- package/tools/reminders/clear-chat-reminder.d.ts +45 -0
- package/tools/reminders/clear-chat-reminder.d.ts.map +1 -0
- package/tools/reminders/clear-chat-reminder.js +35 -0
- package/tools/reminders/clear-chat-reminder.js.map +1 -0
- package/tools/reminders/clear-chat-reminder.mjs +31 -0
- package/tools/reminders/clear-chat-reminder.mjs.map +1 -0
- package/tools/reminders/set-chat-reminder.d.mts +45 -0
- package/tools/reminders/set-chat-reminder.d.mts.map +1 -0
- package/tools/reminders/set-chat-reminder.d.ts +45 -0
- package/tools/reminders/set-chat-reminder.d.ts.map +1 -0
- package/tools/reminders/set-chat-reminder.js +50 -0
- package/tools/reminders/set-chat-reminder.js.map +1 -0
- package/tools/reminders/set-chat-reminder.mjs +46 -0
- package/tools/reminders/set-chat-reminder.mjs.map +1 -0
- package/tools/types.d.mts +51 -0
- package/tools/types.d.mts.map +1 -0
- package/tools/types.d.ts +51 -0
- package/tools/types.d.ts.map +1 -0
- package/tools/types.js +46 -0
- package/tools/types.js.map +1 -0
- package/tools/types.mjs +42 -0
- package/tools/types.mjs.map +1 -0
- package/tools.d.mts +2 -0
- package/tools.d.mts.map +1 -0
- package/tools.d.ts +2 -0
- package/tools.d.ts.map +1 -0
- package/tools.js +18 -0
- package/tools.js.map +1 -0
- package/tools.mjs +2 -0
- package/tools.mjs.map +1 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
import { asTextContentResult } from '@beeper/desktop-mcp/tools/types';
|
|
3
|
+
export const metadata = {
|
|
4
|
+
resource: 'reminders',
|
|
5
|
+
operation: 'write',
|
|
6
|
+
tags: ['reminders'],
|
|
7
|
+
httpMethod: 'post',
|
|
8
|
+
httpPath: '/v0/clear-chat-reminder',
|
|
9
|
+
operationId: 'clear_chat_reminder',
|
|
10
|
+
};
|
|
11
|
+
export const tool = {
|
|
12
|
+
name: 'clear_chat_reminder',
|
|
13
|
+
description: 'Clear a chat reminder.',
|
|
14
|
+
inputSchema: {
|
|
15
|
+
type: 'object',
|
|
16
|
+
properties: {
|
|
17
|
+
chatID: {
|
|
18
|
+
type: 'string',
|
|
19
|
+
description: 'The identifier of the chat to clear reminder from',
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
required: ['chatID'],
|
|
23
|
+
},
|
|
24
|
+
annotations: {},
|
|
25
|
+
};
|
|
26
|
+
export const handler = async (client, args) => {
|
|
27
|
+
const body = args;
|
|
28
|
+
return asTextContentResult(await client.reminders.clear(body));
|
|
29
|
+
};
|
|
30
|
+
export default { metadata, tool, handler };
|
|
31
|
+
//# sourceMappingURL=clear-chat-reminder.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clear-chat-reminder.mjs","sourceRoot":"","sources":["../../src/tools/reminders/clear-chat-reminder.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAY,mBAAmB,EAAE,MAAM,iCAAiC;AAK/E,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,WAAW;IACrB,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,CAAC,WAAW,CAAC;IACnB,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,yBAAyB;IACnC,WAAW,EAAE,qBAAqB;CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE,wBAAwB;IACrC,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mDAAmD;aACjE;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAqB,EAAE,IAAyC,EAAE,EAAE;IAChG,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,mBAAmB,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Metadata } from '@beeper/desktop-mcp/tools/types';
|
|
2
|
+
import { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
3
|
+
import BeeperDesktop from '@beeper/desktop-api';
|
|
4
|
+
export declare const metadata: Metadata;
|
|
5
|
+
export declare const tool: Tool;
|
|
6
|
+
export declare const handler: (client: BeeperDesktop, args: Record<string, unknown> | undefined) => Promise<import("@beeper/desktop-mcp/tools/types").ToolCallResult>;
|
|
7
|
+
declare const _default: {
|
|
8
|
+
metadata: Metadata;
|
|
9
|
+
tool: {
|
|
10
|
+
[x: string]: unknown;
|
|
11
|
+
name: string;
|
|
12
|
+
inputSchema: {
|
|
13
|
+
[x: string]: unknown;
|
|
14
|
+
type: "object";
|
|
15
|
+
properties?: {
|
|
16
|
+
[x: string]: unknown;
|
|
17
|
+
} | undefined;
|
|
18
|
+
required?: string[] | undefined;
|
|
19
|
+
};
|
|
20
|
+
title?: string | undefined;
|
|
21
|
+
description?: string | undefined;
|
|
22
|
+
outputSchema?: {
|
|
23
|
+
[x: string]: unknown;
|
|
24
|
+
type: "object";
|
|
25
|
+
properties?: {
|
|
26
|
+
[x: string]: unknown;
|
|
27
|
+
} | undefined;
|
|
28
|
+
required?: string[] | undefined;
|
|
29
|
+
} | undefined;
|
|
30
|
+
annotations?: {
|
|
31
|
+
[x: string]: unknown;
|
|
32
|
+
title?: string | undefined;
|
|
33
|
+
readOnlyHint?: boolean | undefined;
|
|
34
|
+
destructiveHint?: boolean | undefined;
|
|
35
|
+
idempotentHint?: boolean | undefined;
|
|
36
|
+
openWorldHint?: boolean | undefined;
|
|
37
|
+
} | undefined;
|
|
38
|
+
_meta?: {
|
|
39
|
+
[x: string]: unknown;
|
|
40
|
+
} | undefined;
|
|
41
|
+
};
|
|
42
|
+
handler: (client: BeeperDesktop, args: Record<string, unknown> | undefined) => Promise<import("@beeper/desktop-mcp/tools/types").ToolCallResult>;
|
|
43
|
+
};
|
|
44
|
+
export default _default;
|
|
45
|
+
//# sourceMappingURL=set-chat-reminder.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-chat-reminder.d.mts","sourceRoot":"","sources":["../../src/tools/reminders/set-chat-reminder.ts"],"names":[],"mappings":"OAEO,EAAE,QAAQ,EAAuB,MAAM,iCAAiC;OAExE,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,aAAa,MAAM,qBAAqB;AAE/C,eAAO,MAAM,QAAQ,EAAE,QAOtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA6BlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,aAAa,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,sEAG7F,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,aAAa,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAK9F,wBAA2C"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Metadata } from '@beeper/desktop-mcp/tools/types';
|
|
2
|
+
import { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
3
|
+
import BeeperDesktop from '@beeper/desktop-api';
|
|
4
|
+
export declare const metadata: Metadata;
|
|
5
|
+
export declare const tool: Tool;
|
|
6
|
+
export declare const handler: (client: BeeperDesktop, args: Record<string, unknown> | undefined) => Promise<import("@beeper/desktop-mcp/tools/types").ToolCallResult>;
|
|
7
|
+
declare const _default: {
|
|
8
|
+
metadata: Metadata;
|
|
9
|
+
tool: {
|
|
10
|
+
[x: string]: unknown;
|
|
11
|
+
name: string;
|
|
12
|
+
inputSchema: {
|
|
13
|
+
[x: string]: unknown;
|
|
14
|
+
type: "object";
|
|
15
|
+
properties?: {
|
|
16
|
+
[x: string]: unknown;
|
|
17
|
+
} | undefined;
|
|
18
|
+
required?: string[] | undefined;
|
|
19
|
+
};
|
|
20
|
+
title?: string | undefined;
|
|
21
|
+
description?: string | undefined;
|
|
22
|
+
outputSchema?: {
|
|
23
|
+
[x: string]: unknown;
|
|
24
|
+
type: "object";
|
|
25
|
+
properties?: {
|
|
26
|
+
[x: string]: unknown;
|
|
27
|
+
} | undefined;
|
|
28
|
+
required?: string[] | undefined;
|
|
29
|
+
} | undefined;
|
|
30
|
+
annotations?: {
|
|
31
|
+
[x: string]: unknown;
|
|
32
|
+
title?: string | undefined;
|
|
33
|
+
readOnlyHint?: boolean | undefined;
|
|
34
|
+
destructiveHint?: boolean | undefined;
|
|
35
|
+
idempotentHint?: boolean | undefined;
|
|
36
|
+
openWorldHint?: boolean | undefined;
|
|
37
|
+
} | undefined;
|
|
38
|
+
_meta?: {
|
|
39
|
+
[x: string]: unknown;
|
|
40
|
+
} | undefined;
|
|
41
|
+
};
|
|
42
|
+
handler: (client: BeeperDesktop, args: Record<string, unknown> | undefined) => Promise<import("@beeper/desktop-mcp/tools/types").ToolCallResult>;
|
|
43
|
+
};
|
|
44
|
+
export default _default;
|
|
45
|
+
//# sourceMappingURL=set-chat-reminder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-chat-reminder.d.ts","sourceRoot":"","sources":["../../src/tools/reminders/set-chat-reminder.ts"],"names":[],"mappings":"OAEO,EAAE,QAAQ,EAAuB,MAAM,iCAAiC;OAExE,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,aAAa,MAAM,qBAAqB;AAE/C,eAAO,MAAM,QAAQ,EAAE,QAOtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA6BlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,aAAa,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,sEAG7F,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,aAAa,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAK9F,wBAA2C"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.handler = exports.tool = exports.metadata = void 0;
|
|
5
|
+
const types_1 = require("@beeper/desktop-mcp/tools/types");
|
|
6
|
+
exports.metadata = {
|
|
7
|
+
resource: 'reminders',
|
|
8
|
+
operation: 'write',
|
|
9
|
+
tags: ['reminders'],
|
|
10
|
+
httpMethod: 'post',
|
|
11
|
+
httpPath: '/v0/set-chat-reminder',
|
|
12
|
+
operationId: 'set_chat_reminder',
|
|
13
|
+
};
|
|
14
|
+
exports.tool = {
|
|
15
|
+
name: 'set_chat_reminder',
|
|
16
|
+
description: 'Set a reminder for a chat at a specific time.',
|
|
17
|
+
inputSchema: {
|
|
18
|
+
type: 'object',
|
|
19
|
+
properties: {
|
|
20
|
+
chatID: {
|
|
21
|
+
type: 'string',
|
|
22
|
+
description: 'The identifier of the chat to set reminder for',
|
|
23
|
+
},
|
|
24
|
+
reminder: {
|
|
25
|
+
type: 'object',
|
|
26
|
+
description: 'Reminder configuration',
|
|
27
|
+
properties: {
|
|
28
|
+
remindAtMs: {
|
|
29
|
+
type: 'number',
|
|
30
|
+
description: 'Unix timestamp in milliseconds when reminder should trigger',
|
|
31
|
+
},
|
|
32
|
+
dismissOnIncomingMessage: {
|
|
33
|
+
type: 'boolean',
|
|
34
|
+
description: 'Cancel reminder if someone messages in the chat',
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
required: ['remindAtMs'],
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
required: ['chatID', 'reminder'],
|
|
41
|
+
},
|
|
42
|
+
annotations: {},
|
|
43
|
+
};
|
|
44
|
+
const handler = async (client, args) => {
|
|
45
|
+
const body = args;
|
|
46
|
+
return (0, types_1.asTextContentResult)(await client.reminders.set(body));
|
|
47
|
+
};
|
|
48
|
+
exports.handler = handler;
|
|
49
|
+
exports.default = { metadata: exports.metadata, tool: exports.tool, handler: exports.handler };
|
|
50
|
+
//# sourceMappingURL=set-chat-reminder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-chat-reminder.js","sourceRoot":"","sources":["../../src/tools/reminders/set-chat-reminder.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,2DAAgF;AAKnE,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,WAAW;IACrB,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,CAAC,WAAW,CAAC;IACnB,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,uBAAuB;IACjC,WAAW,EAAE,mBAAmB;CACjC,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,+CAA+C;IAC5D,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gDAAgD;aAC9D;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wBAAwB;gBACrC,UAAU,EAAE;oBACV,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,6DAA6D;qBAC3E;oBACD,wBAAwB,EAAE;wBACxB,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,iDAAiD;qBAC/D;iBACF;gBACD,QAAQ,EAAE,CAAC,YAAY,CAAC;aACzB;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;KACjC;IACD,WAAW,EAAE,EAAE;CAChB,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAqB,EAAE,IAAyC,EAAE,EAAE;IAChG,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,IAAA,2BAAmB,EAAC,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC;AAHW,QAAA,OAAO,WAGlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
import { asTextContentResult } from '@beeper/desktop-mcp/tools/types';
|
|
3
|
+
export const metadata = {
|
|
4
|
+
resource: 'reminders',
|
|
5
|
+
operation: 'write',
|
|
6
|
+
tags: ['reminders'],
|
|
7
|
+
httpMethod: 'post',
|
|
8
|
+
httpPath: '/v0/set-chat-reminder',
|
|
9
|
+
operationId: 'set_chat_reminder',
|
|
10
|
+
};
|
|
11
|
+
export const tool = {
|
|
12
|
+
name: 'set_chat_reminder',
|
|
13
|
+
description: 'Set a reminder for a chat at a specific time.',
|
|
14
|
+
inputSchema: {
|
|
15
|
+
type: 'object',
|
|
16
|
+
properties: {
|
|
17
|
+
chatID: {
|
|
18
|
+
type: 'string',
|
|
19
|
+
description: 'The identifier of the chat to set reminder for',
|
|
20
|
+
},
|
|
21
|
+
reminder: {
|
|
22
|
+
type: 'object',
|
|
23
|
+
description: 'Reminder configuration',
|
|
24
|
+
properties: {
|
|
25
|
+
remindAtMs: {
|
|
26
|
+
type: 'number',
|
|
27
|
+
description: 'Unix timestamp in milliseconds when reminder should trigger',
|
|
28
|
+
},
|
|
29
|
+
dismissOnIncomingMessage: {
|
|
30
|
+
type: 'boolean',
|
|
31
|
+
description: 'Cancel reminder if someone messages in the chat',
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
required: ['remindAtMs'],
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
required: ['chatID', 'reminder'],
|
|
38
|
+
},
|
|
39
|
+
annotations: {},
|
|
40
|
+
};
|
|
41
|
+
export const handler = async (client, args) => {
|
|
42
|
+
const body = args;
|
|
43
|
+
return asTextContentResult(await client.reminders.set(body));
|
|
44
|
+
};
|
|
45
|
+
export default { metadata, tool, handler };
|
|
46
|
+
//# sourceMappingURL=set-chat-reminder.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-chat-reminder.mjs","sourceRoot":"","sources":["../../src/tools/reminders/set-chat-reminder.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAY,mBAAmB,EAAE,MAAM,iCAAiC;AAK/E,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,WAAW;IACrB,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,CAAC,WAAW,CAAC;IACnB,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,uBAAuB;IACjC,WAAW,EAAE,mBAAmB;CACjC,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,+CAA+C;IAC5D,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gDAAgD;aAC9D;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wBAAwB;gBACrC,UAAU,EAAE;oBACV,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,6DAA6D;qBAC3E;oBACD,wBAAwB,EAAE;wBACxB,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,iDAAiD;qBAC/D;iBACF;gBACD,QAAQ,EAAE,CAAC,YAAY,CAAC;aACzB;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;KACjC;IACD,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAqB,EAAE,IAAyC,EAAE,EAAE;IAChG,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,mBAAmB,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import BeeperDesktop from '@beeper/desktop-api';
|
|
2
|
+
import { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
3
|
+
type TextContentBlock = {
|
|
4
|
+
type: 'text';
|
|
5
|
+
text: string;
|
|
6
|
+
};
|
|
7
|
+
type ImageContentBlock = {
|
|
8
|
+
type: 'image';
|
|
9
|
+
data: string;
|
|
10
|
+
mimeType: string;
|
|
11
|
+
};
|
|
12
|
+
type AudioContentBlock = {
|
|
13
|
+
type: 'audio';
|
|
14
|
+
data: string;
|
|
15
|
+
mimeType: string;
|
|
16
|
+
};
|
|
17
|
+
type ResourceContentBlock = {
|
|
18
|
+
type: 'resource';
|
|
19
|
+
resource: {
|
|
20
|
+
uri: string;
|
|
21
|
+
mimeType: string;
|
|
22
|
+
text: string;
|
|
23
|
+
} | {
|
|
24
|
+
uri: string;
|
|
25
|
+
mimeType: string;
|
|
26
|
+
blob: string;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
export type ContentBlock = TextContentBlock | ImageContentBlock | AudioContentBlock | ResourceContentBlock;
|
|
30
|
+
export type ToolCallResult = {
|
|
31
|
+
content: ContentBlock[];
|
|
32
|
+
isError?: boolean;
|
|
33
|
+
};
|
|
34
|
+
export type HandlerFunction = (client: BeeperDesktop, args: Record<string, unknown> | undefined) => Promise<ToolCallResult>;
|
|
35
|
+
export declare function asTextContentResult(result: unknown): ToolCallResult;
|
|
36
|
+
export declare function asBinaryContentResult(response: Response): Promise<ToolCallResult>;
|
|
37
|
+
export type Metadata = {
|
|
38
|
+
resource: string;
|
|
39
|
+
operation: 'read' | 'write';
|
|
40
|
+
tags: string[];
|
|
41
|
+
httpMethod?: string;
|
|
42
|
+
httpPath?: string;
|
|
43
|
+
operationId?: string;
|
|
44
|
+
};
|
|
45
|
+
export type Endpoint = {
|
|
46
|
+
metadata: Metadata;
|
|
47
|
+
tool: Tool;
|
|
48
|
+
handler: HandlerFunction;
|
|
49
|
+
};
|
|
50
|
+
export {};
|
|
51
|
+
//# sourceMappingURL=types.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.mts","sourceRoot":"","sources":["../src/tools/types.ts"],"names":[],"mappings":"OAEO,aAAa,MAAM,qBAAqB;OACxC,EAAE,IAAI,EAAE,MAAM,oCAAoC;AAEzD,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EACJ;QACE,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;KACd,GACD;QACE,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACP,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;AAE3G,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,CAC5B,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,KACtC,OAAO,CAAC,cAAc,CAAC,CAAC;AAE7B,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,cAAc,CASnE;AAED,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,CA2BvF;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,eAAe,CAAC;CAC1B,CAAC"}
|
package/tools/types.d.ts
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import BeeperDesktop from '@beeper/desktop-api';
|
|
2
|
+
import { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
3
|
+
type TextContentBlock = {
|
|
4
|
+
type: 'text';
|
|
5
|
+
text: string;
|
|
6
|
+
};
|
|
7
|
+
type ImageContentBlock = {
|
|
8
|
+
type: 'image';
|
|
9
|
+
data: string;
|
|
10
|
+
mimeType: string;
|
|
11
|
+
};
|
|
12
|
+
type AudioContentBlock = {
|
|
13
|
+
type: 'audio';
|
|
14
|
+
data: string;
|
|
15
|
+
mimeType: string;
|
|
16
|
+
};
|
|
17
|
+
type ResourceContentBlock = {
|
|
18
|
+
type: 'resource';
|
|
19
|
+
resource: {
|
|
20
|
+
uri: string;
|
|
21
|
+
mimeType: string;
|
|
22
|
+
text: string;
|
|
23
|
+
} | {
|
|
24
|
+
uri: string;
|
|
25
|
+
mimeType: string;
|
|
26
|
+
blob: string;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
export type ContentBlock = TextContentBlock | ImageContentBlock | AudioContentBlock | ResourceContentBlock;
|
|
30
|
+
export type ToolCallResult = {
|
|
31
|
+
content: ContentBlock[];
|
|
32
|
+
isError?: boolean;
|
|
33
|
+
};
|
|
34
|
+
export type HandlerFunction = (client: BeeperDesktop, args: Record<string, unknown> | undefined) => Promise<ToolCallResult>;
|
|
35
|
+
export declare function asTextContentResult(result: unknown): ToolCallResult;
|
|
36
|
+
export declare function asBinaryContentResult(response: Response): Promise<ToolCallResult>;
|
|
37
|
+
export type Metadata = {
|
|
38
|
+
resource: string;
|
|
39
|
+
operation: 'read' | 'write';
|
|
40
|
+
tags: string[];
|
|
41
|
+
httpMethod?: string;
|
|
42
|
+
httpPath?: string;
|
|
43
|
+
operationId?: string;
|
|
44
|
+
};
|
|
45
|
+
export type Endpoint = {
|
|
46
|
+
metadata: Metadata;
|
|
47
|
+
tool: Tool;
|
|
48
|
+
handler: HandlerFunction;
|
|
49
|
+
};
|
|
50
|
+
export {};
|
|
51
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/tools/types.ts"],"names":[],"mappings":"OAEO,aAAa,MAAM,qBAAqB;OACxC,EAAE,IAAI,EAAE,MAAM,oCAAoC;AAEzD,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EACJ;QACE,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;KACd,GACD;QACE,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACP,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;AAE3G,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,CAC5B,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,KACtC,OAAO,CAAC,cAAc,CAAC,CAAC;AAE7B,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,cAAc,CASnE;AAED,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,CA2BvF;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,eAAe,CAAC;CAC1B,CAAC"}
|
package/tools/types.js
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.asTextContentResult = asTextContentResult;
|
|
5
|
+
exports.asBinaryContentResult = asBinaryContentResult;
|
|
6
|
+
function asTextContentResult(result) {
|
|
7
|
+
return {
|
|
8
|
+
content: [
|
|
9
|
+
{
|
|
10
|
+
type: 'text',
|
|
11
|
+
text: JSON.stringify(result, null, 2),
|
|
12
|
+
},
|
|
13
|
+
],
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
async function asBinaryContentResult(response) {
|
|
17
|
+
const blob = await response.blob();
|
|
18
|
+
const mimeType = blob.type;
|
|
19
|
+
const data = Buffer.from(await blob.arrayBuffer()).toString('base64');
|
|
20
|
+
if (mimeType.startsWith('image/')) {
|
|
21
|
+
return {
|
|
22
|
+
content: [{ type: 'image', mimeType, data }],
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
else if (mimeType.startsWith('audio/')) {
|
|
26
|
+
return {
|
|
27
|
+
content: [{ type: 'audio', mimeType, data }],
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
return {
|
|
32
|
+
content: [
|
|
33
|
+
{
|
|
34
|
+
type: 'resource',
|
|
35
|
+
resource: {
|
|
36
|
+
// We must give a URI, even though this isn't actually an MCP resource.
|
|
37
|
+
uri: 'resource://tool-response',
|
|
38
|
+
mimeType,
|
|
39
|
+
blob: data,
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
],
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/tools/types.ts"],"names":[],"mappings":";AAAA,sFAAsF;;AAiDtF,kDASC;AAED,sDA2BC;AAtCD,SAAgB,mBAAmB,CAAC,MAAe;IACjD,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;aACtC;SACF;KACF,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,qBAAqB,CAAC,QAAkB;IAC5D,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;IAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACtE,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SAC7C,CAAC;IACJ,CAAC;SAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SAC7C,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,UAAU;oBAChB,QAAQ,EAAE;wBACR,uEAAuE;wBACvE,GAAG,EAAE,0BAA0B;wBAC/B,QAAQ;wBACR,IAAI,EAAE,IAAI;qBACX;iBACF;aACF;SACF,CAAC;IACJ,CAAC;AACH,CAAC"}
|
package/tools/types.mjs
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
export function asTextContentResult(result) {
|
|
3
|
+
return {
|
|
4
|
+
content: [
|
|
5
|
+
{
|
|
6
|
+
type: 'text',
|
|
7
|
+
text: JSON.stringify(result, null, 2),
|
|
8
|
+
},
|
|
9
|
+
],
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
export async function asBinaryContentResult(response) {
|
|
13
|
+
const blob = await response.blob();
|
|
14
|
+
const mimeType = blob.type;
|
|
15
|
+
const data = Buffer.from(await blob.arrayBuffer()).toString('base64');
|
|
16
|
+
if (mimeType.startsWith('image/')) {
|
|
17
|
+
return {
|
|
18
|
+
content: [{ type: 'image', mimeType, data }],
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
else if (mimeType.startsWith('audio/')) {
|
|
22
|
+
return {
|
|
23
|
+
content: [{ type: 'audio', mimeType, data }],
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
return {
|
|
28
|
+
content: [
|
|
29
|
+
{
|
|
30
|
+
type: 'resource',
|
|
31
|
+
resource: {
|
|
32
|
+
// We must give a URI, even though this isn't actually an MCP resource.
|
|
33
|
+
uri: 'resource://tool-response',
|
|
34
|
+
mimeType,
|
|
35
|
+
blob: data,
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=types.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.mjs","sourceRoot":"","sources":["../src/tools/types.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAiDtF,MAAM,UAAU,mBAAmB,CAAC,MAAe;IACjD,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;aACtC;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,QAAkB;IAC5D,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;IAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACtE,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SAC7C,CAAC;IACJ,CAAC;SAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SAC7C,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,UAAU;oBAChB,QAAQ,EAAE;wBACR,uEAAuE;wBACvE,GAAG,EAAE,0BAA0B;wBAC/B,QAAQ;wBACR,IAAI,EAAE,IAAI;qBACX;iBACF;aACF;SACF,CAAC;IACJ,CAAC;AACH,CAAC"}
|
package/tools.d.mts
ADDED
package/tools.d.mts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.d.mts","sourceRoot":"","sources":["src/tools.ts"],"names":[],"mappings":""}
|
package/tools.d.ts
ADDED
package/tools.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["src/tools.ts"],"names":[],"mappings":""}
|
package/tools.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./tools/index.js"), exports);
|
|
18
|
+
//# sourceMappingURL=tools.js.map
|
package/tools.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["src/tools.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAA8B"}
|
package/tools.mjs
ADDED
package/tools.mjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.mjs","sourceRoot":"","sources":["src/tools.ts"],"names":[],"mappings":""}
|