bn-slack-mcp-server 0.0.1
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 +243 -0
- package/dist/debug-middleware.d.ts +12 -0
- package/dist/debug-middleware.d.ts.map +1 -0
- package/dist/debug-middleware.js +36 -0
- package/dist/debug-middleware.js.map +1 -0
- package/dist/helpers.d.ts +86 -0
- package/dist/helpers.d.ts.map +1 -0
- package/dist/helpers.js +235 -0
- package/dist/helpers.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +162 -0
- package/dist/index.js.map +1 -0
- package/dist/schemas.d.ts +286 -0
- package/dist/schemas.d.ts.map +1 -0
- package/dist/schemas.js +840 -0
- package/dist/schemas.js.map +1 -0
- package/dist/slack-api-client.d.ts +51 -0
- package/dist/slack-api-client.d.ts.map +1 -0
- package/dist/slack-api-client.js +227 -0
- package/dist/slack-api-client.js.map +1 -0
- package/dist/tool-loader.d.ts +35 -0
- package/dist/tool-loader.d.ts.map +1 -0
- package/dist/tool-loader.js +121 -0
- package/dist/tool-loader.js.map +1 -0
- package/dist/tool-registry.d.ts +44 -0
- package/dist/tool-registry.d.ts.map +1 -0
- package/dist/tool-registry.js +56 -0
- package/dist/tool-registry.js.map +1 -0
- package/dist/tools/cache.d.ts +69 -0
- package/dist/tools/cache.d.ts.map +1 -0
- package/dist/tools/cache.js +94 -0
- package/dist/tools/cache.js.map +1 -0
- package/dist/tools/channels.d.ts +76 -0
- package/dist/tools/channels.d.ts.map +1 -0
- package/dist/tools/channels.js +251 -0
- package/dist/tools/channels.js.map +1 -0
- package/dist/tools/conversations.d.ts +77 -0
- package/dist/tools/conversations.d.ts.map +1 -0
- package/dist/tools/conversations.js +302 -0
- package/dist/tools/conversations.js.map +1 -0
- package/dist/tools/files.d.ts +15 -0
- package/dist/tools/files.d.ts.map +1 -0
- package/dist/tools/files.js +30 -0
- package/dist/tools/files.js.map +1 -0
- package/dist/tools/index.d.ts +12 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +20 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/messages.d.ts +20 -0
- package/dist/tools/messages.d.ts.map +1 -0
- package/dist/tools/messages.js +40 -0
- package/dist/tools/messages.js.map +1 -0
- package/dist/tools/system.d.ts +48 -0
- package/dist/tools/system.d.ts.map +1 -0
- package/dist/tools/system.js +124 -0
- package/dist/tools/system.js.map +1 -0
- package/dist/tools/users.d.ts +69 -0
- package/dist/tools/users.d.ts.map +1 -0
- package/dist/tools/users.js +179 -0
- package/dist/tools/users.js.map +1 -0
- package/dist/tools/workspace.d.ts +50 -0
- package/dist/tools/workspace.d.ts.map +1 -0
- package/dist/tools/workspace.js +56 -0
- package/dist/tools/workspace.js.map +1 -0
- package/dist/types.d.ts +160 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +48 -0
- package/tools.json +483 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Slack MCP Server
|
|
4
|
+
*
|
|
5
|
+
* A stateless Model Context Protocol server for Slack API
|
|
6
|
+
* using Bearer token authentication.
|
|
7
|
+
*/
|
|
8
|
+
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
9
|
+
import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
|
|
10
|
+
import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
11
|
+
import express from "express";
|
|
12
|
+
import { z } from "zod";
|
|
13
|
+
// Import schemas
|
|
14
|
+
import { ConversationsHistorySchema, ConversationsRepliesSchema, ConversationsAddMessageSchema, ConversationsSearchMessagesSchema, BulkConversationsHistorySchema, UsersListSchema, UserInfoSchema, UserPresenceSchema, ChannelInfoSchema, ChannelMembersSchema, ChannelsListSchema, ChannelsDetailedSchema, SetChannelTopicSchema, SetChannelPurposeSchema, MessagePermalinkSchema, AddReactionSchema, FilesListSchema, WorkspaceInfoSchema, InitializeCacheSchema, CacheInfoSchema, ClearCacheSchema, CheckPermissionsSchema, AnalyticsSummarySchema, } from "./schemas.js";
|
|
15
|
+
// Import tool handlers
|
|
16
|
+
import { conversationsHistory, conversationsReplies, conversationsAddMessage, conversationsSearchMessages, bulkConversationsHistory, usersList, userInfo, userPresence, channelInfo, channelMembers, channelsList, channelsDetailed, setChannelTopic, setChannelPurpose, messagePermalink, addReaction, filesList, workspaceInfo, initializeCache, cacheInfo, clearCache, checkPermissions, analyticsSummary, } from "./tools/index.js";
|
|
17
|
+
// Import tool loader
|
|
18
|
+
import { loadToolDefinitions } from "./tool-loader.js";
|
|
19
|
+
// Import tool registry
|
|
20
|
+
import { ToolRegistry } from "./tool-registry.js";
|
|
21
|
+
// Import debug mode flag
|
|
22
|
+
import { DEBUG_MODE } from "./debug-middleware.js";
|
|
23
|
+
// Create tool registry and register all tools
|
|
24
|
+
const toolRegistry = new ToolRegistry();
|
|
25
|
+
// Register Conversation tools (5)
|
|
26
|
+
toolRegistry.register("conversations_history", ConversationsHistorySchema, conversationsHistory);
|
|
27
|
+
toolRegistry.register("conversations_replies", ConversationsRepliesSchema, conversationsReplies);
|
|
28
|
+
toolRegistry.register("conversations_add_message", ConversationsAddMessageSchema, conversationsAddMessage);
|
|
29
|
+
toolRegistry.register("conversations_search_messages", ConversationsSearchMessagesSchema, conversationsSearchMessages);
|
|
30
|
+
toolRegistry.register("bulk_conversations_history", BulkConversationsHistorySchema, bulkConversationsHistory);
|
|
31
|
+
// Register User tools (3)
|
|
32
|
+
toolRegistry.register("users_list", UsersListSchema, usersList);
|
|
33
|
+
toolRegistry.register("user_info", UserInfoSchema, userInfo);
|
|
34
|
+
toolRegistry.register("user_presence", UserPresenceSchema, userPresence);
|
|
35
|
+
// Register Channel tools (6)
|
|
36
|
+
toolRegistry.register("channel_info", ChannelInfoSchema, channelInfo);
|
|
37
|
+
toolRegistry.register("channel_members", ChannelMembersSchema, channelMembers);
|
|
38
|
+
toolRegistry.register("channels_list", ChannelsListSchema, channelsList);
|
|
39
|
+
toolRegistry.register("channels_detailed", ChannelsDetailedSchema, channelsDetailed);
|
|
40
|
+
toolRegistry.register("set_channel_topic", SetChannelTopicSchema, setChannelTopic);
|
|
41
|
+
toolRegistry.register("set_channel_purpose", SetChannelPurposeSchema, setChannelPurpose);
|
|
42
|
+
// Register Message tools (2)
|
|
43
|
+
toolRegistry.register("message_permalink", MessagePermalinkSchema, messagePermalink);
|
|
44
|
+
toolRegistry.register("add_reaction", AddReactionSchema, addReaction);
|
|
45
|
+
// Register File tools (1)
|
|
46
|
+
toolRegistry.register("files_list", FilesListSchema, filesList);
|
|
47
|
+
// Register Workspace tools (1)
|
|
48
|
+
toolRegistry.register("workspace_info", WorkspaceInfoSchema, workspaceInfo);
|
|
49
|
+
// Register Cache tools (3)
|
|
50
|
+
toolRegistry.register("initialize_cache", InitializeCacheSchema, initializeCache);
|
|
51
|
+
toolRegistry.register("cache_info", CacheInfoSchema, cacheInfo);
|
|
52
|
+
toolRegistry.register("clear_cache", ClearCacheSchema, clearCache);
|
|
53
|
+
// Register System tools (2)
|
|
54
|
+
toolRegistry.register("check_permissions", CheckPermissionsSchema, checkPermissions);
|
|
55
|
+
toolRegistry.register("analytics_summary", AnalyticsSummarySchema, analyticsSummary);
|
|
56
|
+
// Create MCP server
|
|
57
|
+
const server = new Server({
|
|
58
|
+
name: "slack-mcp-server",
|
|
59
|
+
version: "1.0.0",
|
|
60
|
+
}, {
|
|
61
|
+
capabilities: {
|
|
62
|
+
tools: {},
|
|
63
|
+
},
|
|
64
|
+
});
|
|
65
|
+
// Register tool handlers
|
|
66
|
+
server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
67
|
+
// Load tool definitions from JSON (reloads on each request in dev mode)
|
|
68
|
+
const toolDefinitions = loadToolDefinitions();
|
|
69
|
+
return {
|
|
70
|
+
tools: toolDefinitions,
|
|
71
|
+
};
|
|
72
|
+
});
|
|
73
|
+
// Store current request in context (set during HTTP request handling)
|
|
74
|
+
let currentRequest = null;
|
|
75
|
+
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
76
|
+
if (!currentRequest) {
|
|
77
|
+
throw new Error("No request context available. This server must be called via HTTP transport.");
|
|
78
|
+
}
|
|
79
|
+
try {
|
|
80
|
+
// Execute tool via registry (includes automatic validation and debug wrapping)
|
|
81
|
+
const result = await toolRegistry.execute(request.params.name, request.params.arguments, currentRequest);
|
|
82
|
+
// Return formatted response with data and optional debug info
|
|
83
|
+
// Debug info is included in the response when DEBUG mode is enabled
|
|
84
|
+
return {
|
|
85
|
+
content: [
|
|
86
|
+
{
|
|
87
|
+
type: "text",
|
|
88
|
+
text: JSON.stringify(result, null, 2),
|
|
89
|
+
},
|
|
90
|
+
],
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
catch (error) {
|
|
94
|
+
if (error instanceof z.ZodError) {
|
|
95
|
+
throw new Error(`Invalid arguments: ${error.message}`);
|
|
96
|
+
}
|
|
97
|
+
throw error;
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
// Create Express app with stateless HTTP transport
|
|
101
|
+
const app = express();
|
|
102
|
+
app.use(express.json());
|
|
103
|
+
// Create stateless transport (no session management)
|
|
104
|
+
const transport = new StreamableHTTPServerTransport({
|
|
105
|
+
sessionIdGenerator: undefined, // Stateless mode
|
|
106
|
+
enableJsonResponse: true,
|
|
107
|
+
});
|
|
108
|
+
// Connect server to transport
|
|
109
|
+
await server.connect(transport);
|
|
110
|
+
// Handle MCP requests
|
|
111
|
+
app.post("/mcp", async (req, res) => {
|
|
112
|
+
try {
|
|
113
|
+
// Store request in context for tool handlers to access headers
|
|
114
|
+
currentRequest = req;
|
|
115
|
+
await transport.handleRequest(req, res, req.body);
|
|
116
|
+
currentRequest = null; // Clear context after request
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
currentRequest = null; // Clear context on error
|
|
120
|
+
console.error("Error handling MCP request:", error);
|
|
121
|
+
res.status(500).json({
|
|
122
|
+
error: "Internal server error",
|
|
123
|
+
message: error instanceof Error ? error.message : "Unknown error",
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
// Health check endpoint
|
|
128
|
+
app.get("/health", (_req, res) => {
|
|
129
|
+
res.json({
|
|
130
|
+
status: "healthy",
|
|
131
|
+
server: "slack-mcp-server",
|
|
132
|
+
version: "1.0.0",
|
|
133
|
+
stateless: true,
|
|
134
|
+
debug: DEBUG_MODE,
|
|
135
|
+
registeredTools: toolRegistry.getToolNames(),
|
|
136
|
+
categories: {
|
|
137
|
+
conversations: 5,
|
|
138
|
+
users: 3,
|
|
139
|
+
channels: 6,
|
|
140
|
+
messages: 2,
|
|
141
|
+
files: 1,
|
|
142
|
+
workspace: 1,
|
|
143
|
+
cache: 3,
|
|
144
|
+
system: 2,
|
|
145
|
+
},
|
|
146
|
+
});
|
|
147
|
+
});
|
|
148
|
+
// Start server
|
|
149
|
+
const PORT = process.env.PORT || 30001;
|
|
150
|
+
app.listen(PORT, () => {
|
|
151
|
+
console.log(`Slack MCP Server running on http://localhost:${PORT}`);
|
|
152
|
+
console.log(`MCP endpoint: http://localhost:${PORT}/mcp`);
|
|
153
|
+
console.log(`Health check: http://localhost:${PORT}/health`);
|
|
154
|
+
console.log("Mode: Stateless (no session management)");
|
|
155
|
+
console.log("Authentication: Bearer token required");
|
|
156
|
+
console.log(`Debug mode: ${DEBUG_MODE ? "ENABLED" : "DISABLED"}`);
|
|
157
|
+
console.log(`Total tools: ${toolRegistry.getToolNames().length}`);
|
|
158
|
+
if (DEBUG_MODE) {
|
|
159
|
+
console.log(`Registered tools: ${toolRegistry.getToolNames().join(", ")}`);
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod schemas for Slack MCP Server tools
|
|
3
|
+
*
|
|
4
|
+
* Each schema includes comprehensive .describe() documentation for LLM-friendly usage.
|
|
5
|
+
* Descriptions include: use cases, examples, parameter relationships, and best practices.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from "zod";
|
|
8
|
+
export declare const ConversationsHistorySchema: z.ZodObject<{
|
|
9
|
+
channel_id: z.ZodString;
|
|
10
|
+
limit: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
11
|
+
include_activity_messages: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
12
|
+
include_user_details: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
13
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
14
|
+
}, "strip", z.ZodTypeAny, {
|
|
15
|
+
channel_id: string;
|
|
16
|
+
limit: string;
|
|
17
|
+
include_activity_messages: boolean;
|
|
18
|
+
include_user_details: boolean;
|
|
19
|
+
cursor?: string | undefined;
|
|
20
|
+
}, {
|
|
21
|
+
channel_id: string;
|
|
22
|
+
limit?: string | undefined;
|
|
23
|
+
include_activity_messages?: boolean | undefined;
|
|
24
|
+
include_user_details?: boolean | undefined;
|
|
25
|
+
cursor?: string | undefined;
|
|
26
|
+
}>;
|
|
27
|
+
export declare const ConversationsRepliesSchema: z.ZodObject<{
|
|
28
|
+
channel_id: z.ZodString;
|
|
29
|
+
thread_ts: z.ZodString;
|
|
30
|
+
limit: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
31
|
+
include_activity_messages: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
32
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
33
|
+
}, "strip", z.ZodTypeAny, {
|
|
34
|
+
channel_id: string;
|
|
35
|
+
limit: string;
|
|
36
|
+
include_activity_messages: boolean;
|
|
37
|
+
thread_ts: string;
|
|
38
|
+
cursor?: string | undefined;
|
|
39
|
+
}, {
|
|
40
|
+
channel_id: string;
|
|
41
|
+
thread_ts: string;
|
|
42
|
+
limit?: string | undefined;
|
|
43
|
+
include_activity_messages?: boolean | undefined;
|
|
44
|
+
cursor?: string | undefined;
|
|
45
|
+
}>;
|
|
46
|
+
export declare const ConversationsAddMessageSchema: z.ZodObject<{
|
|
47
|
+
channel_id: z.ZodString;
|
|
48
|
+
payload: z.ZodString;
|
|
49
|
+
thread_ts: z.ZodOptional<z.ZodString>;
|
|
50
|
+
content_type: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
51
|
+
}, "strip", z.ZodTypeAny, {
|
|
52
|
+
channel_id: string;
|
|
53
|
+
payload: string;
|
|
54
|
+
content_type: string;
|
|
55
|
+
thread_ts?: string | undefined;
|
|
56
|
+
}, {
|
|
57
|
+
channel_id: string;
|
|
58
|
+
payload: string;
|
|
59
|
+
thread_ts?: string | undefined;
|
|
60
|
+
content_type?: string | undefined;
|
|
61
|
+
}>;
|
|
62
|
+
export declare const ConversationsSearchMessagesSchema: z.ZodObject<{
|
|
63
|
+
search_query: z.ZodOptional<z.ZodString>;
|
|
64
|
+
filter_in_channel: z.ZodOptional<z.ZodString>;
|
|
65
|
+
filter_in_im_or_mpim: z.ZodOptional<z.ZodString>;
|
|
66
|
+
filter_users_from: z.ZodOptional<z.ZodString>;
|
|
67
|
+
filter_users_with: z.ZodOptional<z.ZodString>;
|
|
68
|
+
filter_date_before: z.ZodOptional<z.ZodString>;
|
|
69
|
+
filter_date_after: z.ZodOptional<z.ZodString>;
|
|
70
|
+
filter_date_on: z.ZodOptional<z.ZodString>;
|
|
71
|
+
filter_date_during: z.ZodOptional<z.ZodString>;
|
|
72
|
+
filter_threads_only: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
73
|
+
limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
74
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
75
|
+
}, "strip", z.ZodTypeAny, {
|
|
76
|
+
limit: number;
|
|
77
|
+
filter_threads_only: boolean;
|
|
78
|
+
cursor?: string | undefined;
|
|
79
|
+
search_query?: string | undefined;
|
|
80
|
+
filter_in_channel?: string | undefined;
|
|
81
|
+
filter_in_im_or_mpim?: string | undefined;
|
|
82
|
+
filter_users_from?: string | undefined;
|
|
83
|
+
filter_users_with?: string | undefined;
|
|
84
|
+
filter_date_before?: string | undefined;
|
|
85
|
+
filter_date_after?: string | undefined;
|
|
86
|
+
filter_date_on?: string | undefined;
|
|
87
|
+
filter_date_during?: string | undefined;
|
|
88
|
+
}, {
|
|
89
|
+
limit?: number | undefined;
|
|
90
|
+
cursor?: string | undefined;
|
|
91
|
+
search_query?: string | undefined;
|
|
92
|
+
filter_in_channel?: string | undefined;
|
|
93
|
+
filter_in_im_or_mpim?: string | undefined;
|
|
94
|
+
filter_users_from?: string | undefined;
|
|
95
|
+
filter_users_with?: string | undefined;
|
|
96
|
+
filter_date_before?: string | undefined;
|
|
97
|
+
filter_date_after?: string | undefined;
|
|
98
|
+
filter_date_on?: string | undefined;
|
|
99
|
+
filter_date_during?: string | undefined;
|
|
100
|
+
filter_threads_only?: boolean | undefined;
|
|
101
|
+
}>;
|
|
102
|
+
export declare const BulkConversationsHistorySchema: z.ZodObject<{
|
|
103
|
+
channel_ids: z.ZodString;
|
|
104
|
+
limit: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
105
|
+
include_user_details: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
106
|
+
include_activity_messages: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
107
|
+
filter_user: z.ZodOptional<z.ZodString>;
|
|
108
|
+
}, "strip", z.ZodTypeAny, {
|
|
109
|
+
limit: string;
|
|
110
|
+
include_activity_messages: boolean;
|
|
111
|
+
include_user_details: boolean;
|
|
112
|
+
channel_ids: string;
|
|
113
|
+
filter_user?: string | undefined;
|
|
114
|
+
}, {
|
|
115
|
+
channel_ids: string;
|
|
116
|
+
limit?: string | undefined;
|
|
117
|
+
include_activity_messages?: boolean | undefined;
|
|
118
|
+
include_user_details?: boolean | undefined;
|
|
119
|
+
filter_user?: string | undefined;
|
|
120
|
+
}>;
|
|
121
|
+
export declare const UsersListSchema: z.ZodObject<{
|
|
122
|
+
filter_type: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
123
|
+
include_bots: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
124
|
+
limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
125
|
+
}, "strip", z.ZodTypeAny, {
|
|
126
|
+
limit: number;
|
|
127
|
+
filter_type: string;
|
|
128
|
+
include_bots: boolean;
|
|
129
|
+
}, {
|
|
130
|
+
limit?: number | undefined;
|
|
131
|
+
filter_type?: string | undefined;
|
|
132
|
+
include_bots?: boolean | undefined;
|
|
133
|
+
}>;
|
|
134
|
+
export declare const UserInfoSchema: z.ZodObject<{
|
|
135
|
+
user_ids: z.ZodString;
|
|
136
|
+
use_cache: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
137
|
+
}, "strip", z.ZodTypeAny, {
|
|
138
|
+
user_ids: string;
|
|
139
|
+
use_cache: boolean;
|
|
140
|
+
}, {
|
|
141
|
+
user_ids: string;
|
|
142
|
+
use_cache?: boolean | undefined;
|
|
143
|
+
}>;
|
|
144
|
+
export declare const UserPresenceSchema: z.ZodObject<{
|
|
145
|
+
user_id: z.ZodString;
|
|
146
|
+
}, "strip", z.ZodTypeAny, {
|
|
147
|
+
user_id: string;
|
|
148
|
+
}, {
|
|
149
|
+
user_id: string;
|
|
150
|
+
}>;
|
|
151
|
+
export declare const ChannelInfoSchema: z.ZodObject<{
|
|
152
|
+
channel_id: z.ZodString;
|
|
153
|
+
include_locale: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
154
|
+
use_cache: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
155
|
+
}, "strip", z.ZodTypeAny, {
|
|
156
|
+
channel_id: string;
|
|
157
|
+
use_cache: boolean;
|
|
158
|
+
include_locale: boolean;
|
|
159
|
+
}, {
|
|
160
|
+
channel_id: string;
|
|
161
|
+
use_cache?: boolean | undefined;
|
|
162
|
+
include_locale?: boolean | undefined;
|
|
163
|
+
}>;
|
|
164
|
+
export declare const ChannelMembersSchema: z.ZodObject<{
|
|
165
|
+
channel_id: z.ZodString;
|
|
166
|
+
limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
167
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
168
|
+
}, "strip", z.ZodTypeAny, {
|
|
169
|
+
channel_id: string;
|
|
170
|
+
limit: number;
|
|
171
|
+
cursor?: string | undefined;
|
|
172
|
+
}, {
|
|
173
|
+
channel_id: string;
|
|
174
|
+
limit?: number | undefined;
|
|
175
|
+
cursor?: string | undefined;
|
|
176
|
+
}>;
|
|
177
|
+
export declare const ChannelsListSchema: z.ZodObject<{
|
|
178
|
+
channel_types: z.ZodString;
|
|
179
|
+
sort: z.ZodOptional<z.ZodString>;
|
|
180
|
+
limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
181
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
182
|
+
}, "strip", z.ZodTypeAny, {
|
|
183
|
+
limit: number;
|
|
184
|
+
channel_types: string;
|
|
185
|
+
cursor?: string | undefined;
|
|
186
|
+
sort?: string | undefined;
|
|
187
|
+
}, {
|
|
188
|
+
channel_types: string;
|
|
189
|
+
limit?: number | undefined;
|
|
190
|
+
cursor?: string | undefined;
|
|
191
|
+
sort?: string | undefined;
|
|
192
|
+
}>;
|
|
193
|
+
export declare const ChannelsDetailedSchema: z.ZodObject<{
|
|
194
|
+
channel_types: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
195
|
+
sort: z.ZodOptional<z.ZodString>;
|
|
196
|
+
limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
197
|
+
include_detailed_info: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
198
|
+
}, "strip", z.ZodTypeAny, {
|
|
199
|
+
limit: number;
|
|
200
|
+
channel_types: string;
|
|
201
|
+
include_detailed_info: boolean;
|
|
202
|
+
sort?: string | undefined;
|
|
203
|
+
}, {
|
|
204
|
+
limit?: number | undefined;
|
|
205
|
+
sort?: string | undefined;
|
|
206
|
+
channel_types?: string | undefined;
|
|
207
|
+
include_detailed_info?: boolean | undefined;
|
|
208
|
+
}>;
|
|
209
|
+
export declare const SetChannelTopicSchema: z.ZodObject<{
|
|
210
|
+
channel_id: z.ZodString;
|
|
211
|
+
topic: z.ZodString;
|
|
212
|
+
}, "strip", z.ZodTypeAny, {
|
|
213
|
+
channel_id: string;
|
|
214
|
+
topic: string;
|
|
215
|
+
}, {
|
|
216
|
+
channel_id: string;
|
|
217
|
+
topic: string;
|
|
218
|
+
}>;
|
|
219
|
+
export declare const SetChannelPurposeSchema: z.ZodObject<{
|
|
220
|
+
channel_id: z.ZodString;
|
|
221
|
+
purpose: z.ZodString;
|
|
222
|
+
}, "strip", z.ZodTypeAny, {
|
|
223
|
+
channel_id: string;
|
|
224
|
+
purpose: string;
|
|
225
|
+
}, {
|
|
226
|
+
channel_id: string;
|
|
227
|
+
purpose: string;
|
|
228
|
+
}>;
|
|
229
|
+
export declare const MessagePermalinkSchema: z.ZodObject<{
|
|
230
|
+
channel_id: z.ZodString;
|
|
231
|
+
message_ts: z.ZodString;
|
|
232
|
+
}, "strip", z.ZodTypeAny, {
|
|
233
|
+
channel_id: string;
|
|
234
|
+
message_ts: string;
|
|
235
|
+
}, {
|
|
236
|
+
channel_id: string;
|
|
237
|
+
message_ts: string;
|
|
238
|
+
}>;
|
|
239
|
+
export declare const AddReactionSchema: z.ZodObject<{
|
|
240
|
+
channel_id: z.ZodString;
|
|
241
|
+
message_ts: z.ZodString;
|
|
242
|
+
emoji_name: z.ZodString;
|
|
243
|
+
}, "strip", z.ZodTypeAny, {
|
|
244
|
+
channel_id: string;
|
|
245
|
+
message_ts: string;
|
|
246
|
+
emoji_name: string;
|
|
247
|
+
}, {
|
|
248
|
+
channel_id: string;
|
|
249
|
+
message_ts: string;
|
|
250
|
+
emoji_name: string;
|
|
251
|
+
}>;
|
|
252
|
+
export declare const FilesListSchema: z.ZodObject<{
|
|
253
|
+
channel_id: z.ZodOptional<z.ZodString>;
|
|
254
|
+
user_id: z.ZodOptional<z.ZodString>;
|
|
255
|
+
count: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
256
|
+
types: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
257
|
+
}, "strip", z.ZodTypeAny, {
|
|
258
|
+
count: number;
|
|
259
|
+
types: string;
|
|
260
|
+
channel_id?: string | undefined;
|
|
261
|
+
user_id?: string | undefined;
|
|
262
|
+
}, {
|
|
263
|
+
channel_id?: string | undefined;
|
|
264
|
+
user_id?: string | undefined;
|
|
265
|
+
count?: number | undefined;
|
|
266
|
+
types?: string | undefined;
|
|
267
|
+
}>;
|
|
268
|
+
export declare const WorkspaceInfoSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
269
|
+
export declare const InitializeCacheSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
270
|
+
export declare const CacheInfoSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
271
|
+
export declare const ClearCacheSchema: z.ZodObject<{
|
|
272
|
+
cache_type: z.ZodDefault<z.ZodOptional<z.ZodEnum<["users", "channels", "both"]>>>;
|
|
273
|
+
}, "strip", z.ZodTypeAny, {
|
|
274
|
+
cache_type: "users" | "channels" | "both";
|
|
275
|
+
}, {
|
|
276
|
+
cache_type?: "users" | "channels" | "both" | undefined;
|
|
277
|
+
}>;
|
|
278
|
+
export declare const CheckPermissionsSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
279
|
+
export declare const AnalyticsSummarySchema: z.ZodObject<{
|
|
280
|
+
date_range: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
281
|
+
}, "strip", z.ZodTypeAny, {
|
|
282
|
+
date_range: string;
|
|
283
|
+
}, {
|
|
284
|
+
date_range?: string | undefined;
|
|
285
|
+
}>;
|
|
286
|
+
//# sourceMappingURL=schemas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;EAwHrC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;EA2CrC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;EAwFxC,CAAC;AAEH,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwJ5C,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;EAyDzC,CAAC;AAMH,eAAO,MAAM,eAAe;;;;;;;;;;;;EA2C1B,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;EAuCzB,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;EAoB7B,CAAC;AAMH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EA0B5B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAyB/B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;EAoC7B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;EA2BjC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;EAoBhC,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;EAkBlC,CAAC;AAMH,eAAO,MAAM,sBAAsB;;;;;;;;;EAgBjC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAkC5B,CAAC;AAMH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;EAwC1B,CAAC;AAMH,eAAO,MAAM,mBAAmB,gDAmB/B,CAAC;AAMF,eAAO,MAAM,qBAAqB,gDAoBjC,CAAC;AAEF,eAAO,MAAM,eAAe,gDAgB3B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;EAiB3B,CAAC;AAMH,eAAO,MAAM,sBAAsB,gDAwBlC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;EA2BlC,CAAC"}
|