integrate-sdk 0.8.28 → 0.8.30-dev.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/auto-routes.js +397 -0
- package/dist/adapters/index.js +397 -0
- package/dist/adapters/nextjs.js +397 -0
- package/dist/adapters/node.js +397 -0
- package/dist/adapters/svelte-kit.js +397 -0
- package/dist/adapters/tanstack-start.js +397 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +434 -1
- package/dist/oauth.js +397 -0
- package/dist/server.js +406 -0
- package/dist/src/client.d.ts +10 -1
- package/dist/src/client.d.ts.map +1 -1
- package/dist/src/index.d.ts +18 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/integrations/airtable-client.d.ts +260 -0
- package/dist/src/integrations/airtable-client.d.ts.map +1 -0
- package/dist/src/integrations/airtable.d.ts +37 -0
- package/dist/src/integrations/airtable.d.ts.map +1 -0
- package/dist/src/integrations/gcal-client.d.ts +370 -0
- package/dist/src/integrations/gcal-client.d.ts.map +1 -0
- package/dist/src/integrations/gcal.d.ts +37 -0
- package/dist/src/integrations/gcal.d.ts.map +1 -0
- package/dist/src/integrations/linear-client.d.ts +309 -0
- package/dist/src/integrations/linear-client.d.ts.map +1 -0
- package/dist/src/integrations/linear.d.ts +37 -0
- package/dist/src/integrations/linear.d.ts.map +1 -0
- package/dist/src/integrations/outlook-client.d.ts +433 -0
- package/dist/src/integrations/outlook-client.d.ts.map +1 -0
- package/dist/src/integrations/outlook.d.ts +37 -0
- package/dist/src/integrations/outlook.d.ts.map +1 -0
- package/dist/src/integrations/slack-client.d.ts +271 -0
- package/dist/src/integrations/slack-client.d.ts.map +1 -0
- package/dist/src/integrations/slack.d.ts +37 -0
- package/dist/src/integrations/slack.d.ts.map +1 -0
- package/dist/src/integrations/stripe-client.d.ts +412 -0
- package/dist/src/integrations/stripe-client.d.ts.map +1 -0
- package/dist/src/integrations/stripe.d.ts +37 -0
- package/dist/src/integrations/stripe.d.ts.map +1 -0
- package/dist/src/integrations/todoist-client.d.ts +253 -0
- package/dist/src/integrations/todoist-client.d.ts.map +1 -0
- package/dist/src/integrations/todoist.d.ts +37 -0
- package/dist/src/integrations/todoist.d.ts.map +1 -0
- package/dist/src/integrations/vercel-client.d.ts +278 -0
- package/dist/src/integrations/vercel-client.d.ts.map +1 -0
- package/dist/src/integrations/vercel.d.ts +37 -0
- package/dist/src/integrations/vercel.d.ts.map +1 -0
- package/dist/src/integrations/zendesk-client.d.ts +395 -0
- package/dist/src/integrations/zendesk-client.d.ts.map +1 -0
- package/dist/src/integrations/zendesk.d.ts +39 -0
- package/dist/src/integrations/zendesk.d.ts.map +1 -0
- package/dist/src/server.d.ts +9 -0
- package/dist/src/server.d.ts.map +1 -1
- package/index.ts +18 -0
- package/package.json +2 -2
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Slack Integration Client Types
|
|
3
|
+
* Fully typed interface for Slack integration methods
|
|
4
|
+
*/
|
|
5
|
+
import type { MCPToolCallResponse } from "../protocol/messages.js";
|
|
6
|
+
/**
|
|
7
|
+
* Slack Channel
|
|
8
|
+
*/
|
|
9
|
+
export interface SlackChannel {
|
|
10
|
+
id: string;
|
|
11
|
+
name: string;
|
|
12
|
+
is_channel: boolean;
|
|
13
|
+
is_group: boolean;
|
|
14
|
+
is_im: boolean;
|
|
15
|
+
is_mpim: boolean;
|
|
16
|
+
is_private: boolean;
|
|
17
|
+
created: number;
|
|
18
|
+
creator: string;
|
|
19
|
+
is_archived: boolean;
|
|
20
|
+
is_general: boolean;
|
|
21
|
+
name_normalized: string;
|
|
22
|
+
is_member: boolean;
|
|
23
|
+
topic?: {
|
|
24
|
+
value: string;
|
|
25
|
+
creator: string;
|
|
26
|
+
last_set: number;
|
|
27
|
+
};
|
|
28
|
+
purpose?: {
|
|
29
|
+
value: string;
|
|
30
|
+
creator: string;
|
|
31
|
+
last_set: number;
|
|
32
|
+
};
|
|
33
|
+
num_members?: number;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Slack User
|
|
37
|
+
*/
|
|
38
|
+
export interface SlackUser {
|
|
39
|
+
id: string;
|
|
40
|
+
team_id: string;
|
|
41
|
+
name: string;
|
|
42
|
+
deleted: boolean;
|
|
43
|
+
real_name?: string;
|
|
44
|
+
tz?: string;
|
|
45
|
+
tz_label?: string;
|
|
46
|
+
tz_offset?: number;
|
|
47
|
+
profile: {
|
|
48
|
+
avatar_hash?: string;
|
|
49
|
+
status_text?: string;
|
|
50
|
+
status_emoji?: string;
|
|
51
|
+
real_name?: string;
|
|
52
|
+
display_name?: string;
|
|
53
|
+
email?: string;
|
|
54
|
+
image_24?: string;
|
|
55
|
+
image_32?: string;
|
|
56
|
+
image_48?: string;
|
|
57
|
+
image_72?: string;
|
|
58
|
+
image_192?: string;
|
|
59
|
+
image_512?: string;
|
|
60
|
+
};
|
|
61
|
+
is_admin?: boolean;
|
|
62
|
+
is_owner?: boolean;
|
|
63
|
+
is_primary_owner?: boolean;
|
|
64
|
+
is_bot?: boolean;
|
|
65
|
+
updated?: number;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Slack Message
|
|
69
|
+
*/
|
|
70
|
+
export interface SlackMessage {
|
|
71
|
+
type: string;
|
|
72
|
+
user?: string;
|
|
73
|
+
text: string;
|
|
74
|
+
ts: string;
|
|
75
|
+
thread_ts?: string;
|
|
76
|
+
reply_count?: number;
|
|
77
|
+
reply_users_count?: number;
|
|
78
|
+
latest_reply?: string;
|
|
79
|
+
reactions?: Array<{
|
|
80
|
+
name: string;
|
|
81
|
+
count: number;
|
|
82
|
+
users: string[];
|
|
83
|
+
}>;
|
|
84
|
+
attachments?: Array<Record<string, unknown>>;
|
|
85
|
+
blocks?: Array<Record<string, unknown>>;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Slack Integration Client Interface
|
|
89
|
+
* Provides type-safe methods for all Slack operations
|
|
90
|
+
*/
|
|
91
|
+
export interface SlackIntegrationClient {
|
|
92
|
+
/**
|
|
93
|
+
* Send a message to a Slack channel
|
|
94
|
+
*
|
|
95
|
+
* @example
|
|
96
|
+
* ```typescript
|
|
97
|
+
* const result = await client.slack.sendMessage({
|
|
98
|
+
* channel: "C1234567890",
|
|
99
|
+
* text: "Hello, World!"
|
|
100
|
+
* });
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
sendMessage(params: {
|
|
104
|
+
/** Channel, private group, or IM channel to send message to */
|
|
105
|
+
channel: string;
|
|
106
|
+
/** Text of the message to send */
|
|
107
|
+
text: string;
|
|
108
|
+
/** Thread timestamp to reply in a thread */
|
|
109
|
+
thread_ts?: string;
|
|
110
|
+
/** Disable link previews */
|
|
111
|
+
unfurl_links?: boolean;
|
|
112
|
+
/** Disable media previews */
|
|
113
|
+
unfurl_media?: boolean;
|
|
114
|
+
}): Promise<MCPToolCallResponse>;
|
|
115
|
+
/**
|
|
116
|
+
* List channels in the workspace
|
|
117
|
+
*
|
|
118
|
+
* @example
|
|
119
|
+
* ```typescript
|
|
120
|
+
* const channels = await client.slack.listChannels({
|
|
121
|
+
* types: "public_channel,private_channel"
|
|
122
|
+
* });
|
|
123
|
+
* ```
|
|
124
|
+
*/
|
|
125
|
+
listChannels(params?: {
|
|
126
|
+
/** Mix and match channel types */
|
|
127
|
+
types?: string;
|
|
128
|
+
/** Exclude archived channels */
|
|
129
|
+
exclude_archived?: boolean;
|
|
130
|
+
/** Limit results */
|
|
131
|
+
limit?: number;
|
|
132
|
+
/** Pagination cursor */
|
|
133
|
+
cursor?: string;
|
|
134
|
+
}): Promise<MCPToolCallResponse>;
|
|
135
|
+
/**
|
|
136
|
+
* Get information about a channel
|
|
137
|
+
*
|
|
138
|
+
* @example
|
|
139
|
+
* ```typescript
|
|
140
|
+
* const channel = await client.slack.getChannel({
|
|
141
|
+
* channel: "C1234567890"
|
|
142
|
+
* });
|
|
143
|
+
* ```
|
|
144
|
+
*/
|
|
145
|
+
getChannel(params: {
|
|
146
|
+
/** Channel to get info for */
|
|
147
|
+
channel: string;
|
|
148
|
+
}): Promise<MCPToolCallResponse>;
|
|
149
|
+
/**
|
|
150
|
+
* List users in the workspace
|
|
151
|
+
*
|
|
152
|
+
* @example
|
|
153
|
+
* ```typescript
|
|
154
|
+
* const users = await client.slack.listUsers({
|
|
155
|
+
* limit: 100
|
|
156
|
+
* });
|
|
157
|
+
* ```
|
|
158
|
+
*/
|
|
159
|
+
listUsers(params?: {
|
|
160
|
+
/** Limit results */
|
|
161
|
+
limit?: number;
|
|
162
|
+
/** Pagination cursor */
|
|
163
|
+
cursor?: string;
|
|
164
|
+
}): Promise<MCPToolCallResponse>;
|
|
165
|
+
/**
|
|
166
|
+
* Get information about a user
|
|
167
|
+
*
|
|
168
|
+
* @example
|
|
169
|
+
* ```typescript
|
|
170
|
+
* const user = await client.slack.getUser({
|
|
171
|
+
* user: "U1234567890"
|
|
172
|
+
* });
|
|
173
|
+
* ```
|
|
174
|
+
*/
|
|
175
|
+
getUser(params: {
|
|
176
|
+
/** User to get info for */
|
|
177
|
+
user: string;
|
|
178
|
+
}): Promise<MCPToolCallResponse>;
|
|
179
|
+
/**
|
|
180
|
+
* List messages in a channel
|
|
181
|
+
*
|
|
182
|
+
* @example
|
|
183
|
+
* ```typescript
|
|
184
|
+
* const messages = await client.slack.listMessages({
|
|
185
|
+
* channel: "C1234567890",
|
|
186
|
+
* limit: 50
|
|
187
|
+
* });
|
|
188
|
+
* ```
|
|
189
|
+
*/
|
|
190
|
+
listMessages(params: {
|
|
191
|
+
/** Channel to fetch messages from */
|
|
192
|
+
channel: string;
|
|
193
|
+
/** Number of messages to return */
|
|
194
|
+
limit?: number;
|
|
195
|
+
/** Start of time range */
|
|
196
|
+
oldest?: string;
|
|
197
|
+
/** End of time range */
|
|
198
|
+
latest?: string;
|
|
199
|
+
/** Pagination cursor */
|
|
200
|
+
cursor?: string;
|
|
201
|
+
}): Promise<MCPToolCallResponse>;
|
|
202
|
+
/**
|
|
203
|
+
* Add a reaction to a message
|
|
204
|
+
*
|
|
205
|
+
* @example
|
|
206
|
+
* ```typescript
|
|
207
|
+
* await client.slack.addReaction({
|
|
208
|
+
* channel: "C1234567890",
|
|
209
|
+
* timestamp: "1234567890.123456",
|
|
210
|
+
* name: "thumbsup"
|
|
211
|
+
* });
|
|
212
|
+
* ```
|
|
213
|
+
*/
|
|
214
|
+
addReaction(params: {
|
|
215
|
+
/** Channel where the message is */
|
|
216
|
+
channel: string;
|
|
217
|
+
/** Timestamp of the message */
|
|
218
|
+
timestamp: string;
|
|
219
|
+
/** Reaction emoji name (without colons) */
|
|
220
|
+
name: string;
|
|
221
|
+
}): Promise<MCPToolCallResponse>;
|
|
222
|
+
/**
|
|
223
|
+
* Search for messages
|
|
224
|
+
*
|
|
225
|
+
* @example
|
|
226
|
+
* ```typescript
|
|
227
|
+
* const results = await client.slack.searchMessages({
|
|
228
|
+
* query: "important announcement"
|
|
229
|
+
* });
|
|
230
|
+
* ```
|
|
231
|
+
*/
|
|
232
|
+
searchMessages(params: {
|
|
233
|
+
/** Search query */
|
|
234
|
+
query: string;
|
|
235
|
+
/** Sort order (score or timestamp) */
|
|
236
|
+
sort?: "score" | "timestamp";
|
|
237
|
+
/** Sort direction */
|
|
238
|
+
sort_dir?: "asc" | "desc";
|
|
239
|
+
/** Number of results per page */
|
|
240
|
+
count?: number;
|
|
241
|
+
/** Page number */
|
|
242
|
+
page?: number;
|
|
243
|
+
}): Promise<MCPToolCallResponse>;
|
|
244
|
+
/**
|
|
245
|
+
* Upload a file to Slack
|
|
246
|
+
*
|
|
247
|
+
* @example
|
|
248
|
+
* ```typescript
|
|
249
|
+
* await client.slack.uploadFile({
|
|
250
|
+
* channels: "C1234567890",
|
|
251
|
+
* content: "file content here",
|
|
252
|
+
* filename: "example.txt"
|
|
253
|
+
* });
|
|
254
|
+
* ```
|
|
255
|
+
*/
|
|
256
|
+
uploadFile(params: {
|
|
257
|
+
/** Comma-separated list of channel IDs */
|
|
258
|
+
channels?: string;
|
|
259
|
+
/** File contents */
|
|
260
|
+
content?: string;
|
|
261
|
+
/** Filename */
|
|
262
|
+
filename?: string;
|
|
263
|
+
/** File type identifier */
|
|
264
|
+
filetype?: string;
|
|
265
|
+
/** Initial comment */
|
|
266
|
+
initial_comment?: string;
|
|
267
|
+
/** Title of file */
|
|
268
|
+
title?: string;
|
|
269
|
+
}): Promise<MCPToolCallResponse>;
|
|
270
|
+
}
|
|
271
|
+
//# sourceMappingURL=slack-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slack-client.d.ts","sourceRoot":"","sources":["../../../src/integrations/slack-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Slack Integration
|
|
3
|
+
* Enables Slack tools with OAuth configuration
|
|
4
|
+
*/
|
|
5
|
+
import type { MCPIntegration } from "./types.js";
|
|
6
|
+
/**
|
|
7
|
+
* Slack integration configuration
|
|
8
|
+
*
|
|
9
|
+
* SERVER-SIDE: Automatically reads SLACK_CLIENT_ID and SLACK_CLIENT_SECRET from environment.
|
|
10
|
+
* You can override by providing explicit clientId and clientSecret values.
|
|
11
|
+
* CLIENT-SIDE: Omit clientId and clientSecret when using createMCPClient()
|
|
12
|
+
*/
|
|
13
|
+
export interface SlackIntegrationConfig {
|
|
14
|
+
/** Slack OAuth client ID (defaults to SLACK_CLIENT_ID env var) */
|
|
15
|
+
clientId?: string;
|
|
16
|
+
/** Slack OAuth client secret (defaults to SLACK_CLIENT_SECRET env var) */
|
|
17
|
+
clientSecret?: string;
|
|
18
|
+
/** Additional OAuth scopes (default: ['chat:write', 'channels:read', 'users:read']) */
|
|
19
|
+
scopes?: string[];
|
|
20
|
+
/** OAuth redirect URI */
|
|
21
|
+
redirectUri?: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Default Slack tools that this integration enables
|
|
25
|
+
* These should match the tool names exposed by your MCP server
|
|
26
|
+
*/
|
|
27
|
+
declare const SLACK_TOOLS: readonly ["slack_send_message", "slack_list_channels", "slack_get_channel", "slack_list_users", "slack_get_user", "slack_list_messages", "slack_add_reaction", "slack_search_messages", "slack_upload_file"];
|
|
28
|
+
export declare function slackIntegration(config?: SlackIntegrationConfig): MCPIntegration<"slack">;
|
|
29
|
+
/**
|
|
30
|
+
* Export tool names for type inference
|
|
31
|
+
*/
|
|
32
|
+
export type SlackTools = typeof SLACK_TOOLS[number];
|
|
33
|
+
/**
|
|
34
|
+
* Export Slack client types
|
|
35
|
+
*/
|
|
36
|
+
export type { SlackIntegrationClient } from "./slack-client.js";
|
|
37
|
+
//# sourceMappingURL=slack.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slack.d.ts","sourceRoot":"","sources":["../../../src/integrations/slack.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,YAAY,CAAC;AAG9D;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uFAAuF;IACvF,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,QAAA,MAAM,WAAW,8MAUP,CAAC;AAGX,wBAAgB,gBAAgB,CAAC,MAAM,GAAE,sBAA2B,GAAG,cAAc,CAAC,OAAO,CAAC,CAyB7F;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;AAEpD;;GAEG;AACH,YAAY,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC"}
|