claude-yolo 1.6.4 → 1.9.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/.claude/settings.local.json +6 -0
- package/.cursor/mcp.json +0 -0
- package/.cursor/rules/cursor-tools.mdc +161 -0
- package/.cursorindexingignore +3 -0
- package/.mcp.json +13 -0
- package/.specstory/history/2025-02-26_13-24-checking-recent-tweets.md +124 -0
- package/.specstory/history/2025-03-10_15-17-sending-a-yo-to-my-server.md +32 -0
- package/.specstory/history/2025-03-10_17-20-sending-a-simple-yo-message.md +104 -0
- package/.specstory/history/2025-03-12_08-37-documentation-retrieval-for-repomix-repo.md +32 -0
- package/.specstory/history/2025-03-12_09-23-interactive-browser-session-setup.md +7864 -0
- package/.specstory/history/2025-03-12_17-16-chat-name-generation.md +430 -0
- package/.specstory/history/2025-03-13_01-22-python-pi-calculation-and-notification.md +254 -0
- package/.specstory/history/2025-03-13_22-46-server-update-for-eric.md +35 -0
- package/.specstory/history/2025-03-13_23-02-sending-a-simple-yo-message.md +18 -0
- package/.specstory/history/2025-03-13_23-10-casual-greetings.md +80 -0
- package/.specstory/history/2025-03-14_13-07-casual-greetings-sending-a-yo.md +44 -0
- package/.specstory/history/2025-03-14_13-28-casual-greetings.md +924 -0
- package/.specstory/history/2025-03-14_13-37-sending-a-yo-message.md +34 -0
- package/.specstory/history/2025-03-14_13-48-casual-greetings.md +76 -0
- package/.specstory/history/2025-03-14_13-53-casual-greetings.md +44 -0
- package/.specstory/history/2025-03-14_13-57-casual-greetings.md +64 -0
- package/.specstory/history/2025-03-14_21-41-simple-greeting-send-a-yo.md +34 -0
- package/.specstory/history/2025-03-15_13-44-casual-greeting-request.md +26 -0
- package/.specstory/history/2025-03-16_21-17-using-curl-to-fetch-url-content.md +3728 -0
- package/.specstory/history/2025-10-25_08-17-create-a-new-repository-with-gh-cli.md +173 -0
- package/.specstory/history/casual-greetings-1.md +32 -0
- package/AGENTS.md +1 -0
- package/README.md +104 -24
- package/bin/cl +113 -0
- package/bin/claude-yolo.js +194 -11
- package/demo.txt +1 -0
- package/package.json +14 -10
- package/test.txt +1 -0
- package/yolo-test.txt +1 -0
- package/make-yolo.sh +0 -74
|
@@ -0,0 +1,924 @@
|
|
|
1
|
+
<!-- Generated by SpecStory -->
|
|
2
|
+
|
|
3
|
+
# Casual Greetings (2025-03-14 14:28:53)
|
|
4
|
+
|
|
5
|
+
_**User**_
|
|
6
|
+
|
|
7
|
+
Send me a yo
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
_**Assistant**_
|
|
12
|
+
|
|
13
|
+
Let me send a "yo" message using the MCP protocol.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
I apologize, but it seems there was an error with the MCP yo protocol. Let me try using cursor-tools instead, which is available in this environment.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
cursor-tools mcp run "send a yo message"
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
Checking for local .env file at: /Users/andy/repos/claude-yolo/.cursor-tools.env
|
|
31
|
+
Checking for home .env file at: /Users/andy/.cursor-tools/.env
|
|
32
|
+
Home .env file found, loading...
|
|
33
|
+
Fetching MCP servers from marketplace...
|
|
34
|
+
Using Google Generative Language provider
|
|
35
|
+
https://raw.githubusercontent.com/ykhli/mcp-send-email/main/README.md
|
|
36
|
+
Attempting to fetch README from: https://raw.githubusercontent.com/ykhli/mcp-sen
|
|
37
|
+
d-email/main/README.md
|
|
38
|
+
https://raw.githubusercontent.com/pashpashpash/mcp-discord/main/README.md
|
|
39
|
+
Attempting to fetch README from: https://raw.githubusercontent.com/pashpashpash/
|
|
40
|
+
mcp-discord/main/README.md
|
|
41
|
+
https://raw.githubusercontent.com/modelcontextprotocol/servers/main/src/slack/RE
|
|
42
|
+
ADME.md
|
|
43
|
+
Attempting to fetch README from: https://raw.githubusercontent.com/modelcontextp
|
|
44
|
+
rotocol/servers/main/src/sla
|
|
45
|
+
ck/README.md
|
|
46
|
+
Found 3 matching MCP server(s):
|
|
47
|
+
- Email Sender
|
|
48
|
+
- Discord
|
|
49
|
+
- Slack
|
|
50
|
+
Using Google Generative Language provider
|
|
51
|
+
Using Google Generative Language provider
|
|
52
|
+
Using Google Generative Language provider
|
|
53
|
+
uvxPath /opt/homebrew/bin/uvx
|
|
54
|
+
Error generating MCP config: MCPConfigError: Required environment variable "DISC
|
|
55
|
+
ORD_TOKEN" is not set
|
|
56
|
+
at populateEnv (file:///opt/homebrew/lib/node_modules/cursor-tools/dist/inde
|
|
57
|
+
x.mjs:3236:225)
|
|
58
|
+
at B3.generateMCPConfig (file:///opt/homebrew/lib/node_modules/cursor-tools/
|
|
59
|
+
dist/index.mjs:3285:2067)
|
|
60
|
+
at async file:///opt/homebrew/lib/node_modules/cursor-tools/dist/index.mjs:3
|
|
61
|
+
291:58
|
|
62
|
+
at async Promise.all (index 1)
|
|
63
|
+
at async B3.execute (file:///opt/homebrew/lib/node_modules/cursor-tools/dist
|
|
64
|
+
/index.mjs:3289:13)
|
|
65
|
+
at async D2.execute (file:///opt/homebrew/lib/node_modules/cursor-tools/dist
|
|
66
|
+
/index.mjs:3323:565)
|
|
67
|
+
at async main (file:///opt/homebrew/lib/node_modules/cursor-tools/dist/index
|
|
68
|
+
.mjs:3655:1024)
|
|
69
|
+
npxPath /opt/homebrew/bin/npx
|
|
70
|
+
Error generating MCP config: MCPConfigError: Required environment variable "RESE
|
|
71
|
+
ND_API_KEY" is not set
|
|
72
|
+
at populateEnv (file:///opt/homebrew/lib/node_modules/cursor-tools/dist/inde
|
|
73
|
+
x.mjs:3236:225)
|
|
74
|
+
at B3.generateMCPConfig (file:///opt/homebrew/lib/node_modules/cursor-tools/
|
|
75
|
+
dist/index.mjs:3285:2067)
|
|
76
|
+
at process.processTicksAndRejections (node:internal/process/task_queues:105:
|
|
77
|
+
5)
|
|
78
|
+
at async file:///opt/homebrew/lib/node_modules/cursor-tools/dist/index.mjs:3
|
|
79
|
+
291:58
|
|
80
|
+
at async Promise.all (index 0)
|
|
81
|
+
at async B3.execute (file:///opt/homebrew/lib/node_modules/cursor-tools/dist
|
|
82
|
+
/index.mjs:3289:13)
|
|
83
|
+
at async D2.execute (file:///opt/homebrew/lib/node_modules/cursor-tools/dist
|
|
84
|
+
/index.mjs:3323:565)
|
|
85
|
+
at async main (file:///opt/homebrew/lib/node_modules/cursor-tools/dist/index
|
|
86
|
+
.mjs:3655:1024)
|
|
87
|
+
Error generating MCP config: MCPConfigError: Required environment variable "SLAC
|
|
88
|
+
K_BOT_TOKEN" is not set
|
|
89
|
+
at populateEnv (file:///opt/homebrew/lib/node_modules/cursor-tools/dist/inde
|
|
90
|
+
x.mjs:3236:225)
|
|
91
|
+
at B3.generateMCPConfig (file:///opt/homebrew/lib/node_modules/cursor-tools/
|
|
92
|
+
dist/index.mjs:3285:2067)
|
|
93
|
+
at process.processTicksAndRejections (node:internal/process/task_queues:105:
|
|
94
|
+
5)
|
|
95
|
+
at async file:///opt/homebrew/lib/node_modules/cursor-tools/dist/index.mjs:3
|
|
96
|
+
291:58
|
|
97
|
+
at async Promise.all (index 2)
|
|
98
|
+
at async B3.execute (file:///opt/homebrew/lib/node_modules/cursor-tools/dist
|
|
99
|
+
/index.mjs:3289:13)
|
|
100
|
+
at async D2.execute (file:///opt/homebrew/lib/node_modules/cursor-tools/dist
|
|
101
|
+
/index.mjs:3323:565)
|
|
102
|
+
at async main (file:///opt/homebrew/lib/node_modules/cursor-tools/dist/index
|
|
103
|
+
.mjs:3655:1024)
|
|
104
|
+
Email Sender:
|
|
105
|
+
Attempting to initialize Email Sender...
|
|
106
|
+
|
|
107
|
+
Email Sender: Error generating arguments for Email Sender: MCPConfigError: Requi
|
|
108
|
+
red environment variable "RE
|
|
109
|
+
SEND_API_KEY" is not set
|
|
110
|
+
|
|
111
|
+
Discord:
|
|
112
|
+
Attempting to initialize Discord...
|
|
113
|
+
|
|
114
|
+
Discord: Error generating arguments for Discord: MCPConfigError: Required enviro
|
|
115
|
+
nment variable "DISCORD_TOKE
|
|
116
|
+
N" is not set
|
|
117
|
+
|
|
118
|
+
Slack:
|
|
119
|
+
Attempting to initialize Slack...
|
|
120
|
+
|
|
121
|
+
Slack: Error generating arguments for Slack: MCPConfigError: Required environmen
|
|
122
|
+
t variable "SLACK_BOT_TOKEN"
|
|
123
|
+
is not set
|
|
124
|
+
|
|
125
|
+
Error: Failed to initialize any MCP servers after 5 attempts each.
|
|
126
|
+
|
|
127
|
+
Server READMEs:
|
|
128
|
+
|
|
129
|
+
=== Email Sender README ===
|
|
130
|
+
# Email sending MCP 💌
|
|
131
|
+
|
|
132
|
+
[](https://smi
|
|
133
|
+
thery.ai/server/@ykhli/mcp-s
|
|
134
|
+
end-email)
|
|
135
|
+
|
|
136
|
+
This is a simple MCP server that sends emails using Resend's API. Why? Now you c
|
|
137
|
+
an let Cursor or Claude Desk
|
|
138
|
+
top compose emails for you and send it right away without having to copy and pas
|
|
139
|
+
te the email content.
|
|
140
|
+
Built with:
|
|
141
|
+
|
|
142
|
+
- [Resend](https://resend.com/)
|
|
143
|
+
- [Anthropic MCP](https://docs.anthropic.com/en/docs/agents-and-tools/mcp)
|
|
144
|
+
- [Cursor](https://cursor.so/)
|
|
145
|
+
|
|
146
|
+
**DEMO**
|
|
147
|
+
|
|
148
|
+
https://github.com/user-attachments/assets/8c05cbf0-1664-4b3b-afb1-663b46af3464
|
|
149
|
+
|
|
150
|
+
**Cursor**
|
|
151
|
+
|
|
152
|
+
1. First, you need to authorize Resend to send emails from your domain or email.
|
|
153
|
+
Follow the steps [here](htt
|
|
154
|
+
ps://resend.com/docs/send-with-nodejs) to set that up and get a Resend API key.
|
|
155
|
+
2. Clone this project locally. Edit index.ts and rep
|
|
156
|
+
lace me@yoko.dev to your own email to send emails from
|
|
157
|
+
3. Run `npm install`, `npm run build` under the project dir. You should now see
|
|
158
|
+
a /build/index.js generated
|
|
159
|
+
- this is the MCP server script!
|
|
160
|
+
|
|
161
|
+
Then go to Cursor Settings -> MCP -> Add new MCP server
|
|
162
|
+
|
|
163
|
+
- Name = [choose your own name]
|
|
164
|
+
- Type = command
|
|
165
|
+
- Command: `node ABSOLUTE_PATH_TO_MCP_SERVER/build/index.js --key=YOUR_RESEND_AP
|
|
166
|
+
I_KEY --sender=OPTIONAL_SEND
|
|
167
|
+
ER_EMAIL_ADDRESS --reply-to=OPTIONAL_REPLY_TO_EMAIL_ADDRESS_ONE --reply-to=OPTIO
|
|
168
|
+
NAL_REPLY_TO_EMAIL_ADDRESS_TWO`
|
|
169
|
+
|
|
170
|
+
You can get Resend API key here: https://resend.com/
|
|
171
|
+
|
|
172
|
+
Now you can test out sending emails by going to email.md, replace the to: email
|
|
173
|
+
address, select all in email
|
|
174
|
+
md, and hit cmd+l. You can now tell cursor to "send this as an email" in the ch
|
|
175
|
+
at. Make sure Cursor chat is in Agent mode by selecting "Agent" on lower left si
|
|
176
|
+
de dropdown
|
|
177
|
+
<img width="441" alt="Screenshot 2025-02-25 at 9 13 05 AM" src="https://github.c
|
|
178
|
+
om/user-attachments/assets/b
|
|
179
|
+
07e9cbf-42d8-4910-8e90-3761d8d3bc06" />
|
|
180
|
+
|
|
181
|
+
**Claude desktop**
|
|
182
|
+
|
|
183
|
+
Same set up as above, and then add the following MCP config
|
|
184
|
+
|
|
185
|
+
```
|
|
186
|
+
{
|
|
187
|
+
"mcpServers": {
|
|
188
|
+
"resend": {
|
|
189
|
+
"command": "node",
|
|
190
|
+
"args": ["ABSOLUTE_PATH_TO_MCP_SERVER/build/index.js"],
|
|
191
|
+
"env": {
|
|
192
|
+
"RESEND_API_KEY": [YOUR_API_KEY],
|
|
193
|
+
"SENDER_EMAIL_ADDRESS": [OPTIONAL_SENDER_EMAIL_ADDRESS],
|
|
194
|
+
"REPLY_TO_EMAIL_ADDRESSES": [OPTIONAL_REPLY_TO_EMAIL_ADDRESSES_COMMA_DEL
|
|
195
|
+
IMITED]
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
**Develop**
|
|
203
|
+
|
|
204
|
+
`npm install`
|
|
205
|
+
`npm run build`
|
|
206
|
+
=== End of Email Sender README ===
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
=== Discord README ===
|
|
210
|
+
# Discord MCP Server
|
|
211
|
+
|
|
212
|
+
A Model Context Protocol (MCP) server that provides Discord integration capabili
|
|
213
|
+
ties to MCP clients like Cla
|
|
214
|
+
ude Desktop.
|
|
215
|
+
|
|
216
|
+
<a href="https://glama.ai/mcp/servers/wvwjgcnppa"><img width="380" height="200"
|
|
217
|
+
src="https://glama.ai/mcp/se
|
|
218
|
+
rvers/wvwjgcnppa/badge" alt="mcp-discord MCP server" /></a>
|
|
219
|
+
|
|
220
|
+
## Features
|
|
221
|
+
|
|
222
|
+
### Server Information
|
|
223
|
+
- `get_server_info`: Get detailed server information
|
|
224
|
+
- `list_members`: List server members and their roles
|
|
225
|
+
|
|
226
|
+
### Message Management
|
|
227
|
+
- `send_message`: Send a message to a channel
|
|
228
|
+
- `read_messages`: Read recent message history
|
|
229
|
+
- `add_reaction`: Add a reaction to a message
|
|
230
|
+
- `add_multiple_reactions`: Add multiple reactions to a message
|
|
231
|
+
- `remove_reaction`: Remove a reaction from a message
|
|
232
|
+
- `moderate_message`: Delete messages and timeout users
|
|
233
|
+
|
|
234
|
+
### Channel Management
|
|
235
|
+
- `create_text_channel`: Create a new text channel
|
|
236
|
+
- `delete_channel`: Delete an existing channel
|
|
237
|
+
|
|
238
|
+
### Role Management
|
|
239
|
+
- `add_role`: Add a role to a user
|
|
240
|
+
- `remove_role`: Remove a role from a user
|
|
241
|
+
|
|
242
|
+
### Webhook Management
|
|
243
|
+
- `create_webhook`: Create a new webhook
|
|
244
|
+
- `list_webhooks`: List webhooks in a channel
|
|
245
|
+
- `send_webhook_message`: Send messages via webhook
|
|
246
|
+
- `modify_webhook`: Update webhook settings
|
|
247
|
+
- `delete_webhook`: Delete a webhook
|
|
248
|
+
|
|
249
|
+
## Prerequisites
|
|
250
|
+
|
|
251
|
+
1. **Set up your Discord bot**:
|
|
252
|
+
- Create a new application at [Discord Developer Portal](https://discord.com/
|
|
253
|
+
developers/applications)
|
|
254
|
+
- Create a bot and copy the token
|
|
255
|
+
- Enable required privileged intents:
|
|
256
|
+
- MESSAGE CONTENT INTENT
|
|
257
|
+
- PRESENCE INTENT
|
|
258
|
+
- SERVER MEMBERS INTENT
|
|
259
|
+
- Invite the bot to your server using OAuth2 URL Generator
|
|
260
|
+
|
|
261
|
+
2. **Python Requirements**:
|
|
262
|
+
- Python 3.8 or higher
|
|
263
|
+
- pip (Python package installer)
|
|
264
|
+
|
|
265
|
+
## Installation
|
|
266
|
+
|
|
267
|
+
1. **Clone the Repository**:
|
|
268
|
+
```bash
|
|
269
|
+
git clone https://github.com/pashpashpash/mcp-discord.git
|
|
270
|
+
cd mcp-discord
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
2. **Create and Activate Virtual Environment**:
|
|
274
|
+
```bash
|
|
275
|
+
# On Windows
|
|
276
|
+
python -m venv venv
|
|
277
|
+
venv\Scripts\activate
|
|
278
|
+
|
|
279
|
+
# On macOS/Linux
|
|
280
|
+
python -m venv venv
|
|
281
|
+
source venv/bin/activate
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
3. **Install Dependencies**:
|
|
285
|
+
```bash
|
|
286
|
+
pip install -e .
|
|
287
|
+
```
|
|
288
|
+
Note: If using Python 3.13+, also install audioop: `pip install audioop-lts`
|
|
289
|
+
|
|
290
|
+
4. **Configure Claude Desktop**:
|
|
291
|
+
|
|
292
|
+
Add this to your claude_desktop_config.json:
|
|
293
|
+
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
294
|
+
- Windows: `%APPDATA%/Claude/claude_desktop_config.json`
|
|
295
|
+
|
|
296
|
+
```json
|
|
297
|
+
{
|
|
298
|
+
"mcpServers": {
|
|
299
|
+
"discord": {
|
|
300
|
+
"command": "python",
|
|
301
|
+
"args": ["-m", "mcp_discord"],
|
|
302
|
+
"cwd": "path/to/mcp-discord",
|
|
303
|
+
"env": {
|
|
304
|
+
"DISCORD_TOKEN": "your_bot_token"
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
```
|
|
310
|
+
Note:
|
|
311
|
+
- Replace "path/to/mcp-discord" with the actual path to your cloned repository
|
|
312
|
+
- Replace "your_bot_token" with your Discord bot token
|
|
313
|
+
|
|
314
|
+
## Debugging
|
|
315
|
+
|
|
316
|
+
If you run into issues, check Claude Desktop's MCP logs:
|
|
317
|
+
```bash
|
|
318
|
+
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
Common issues:
|
|
322
|
+
1. **Token Errors**:
|
|
323
|
+
- Verify your Discord bot token is correct
|
|
324
|
+
- Check that all required intents are enabled
|
|
325
|
+
|
|
326
|
+
2. **Permission Issues**:
|
|
327
|
+
- Ensure the bot has proper permissions in your Discord server
|
|
328
|
+
- Verify the bot's role hierarchy for role management commands
|
|
329
|
+
|
|
330
|
+
3. **Installation Issues**:
|
|
331
|
+
- Make sure you're using the correct Python version
|
|
332
|
+
- Try recreating the virtual environment
|
|
333
|
+
- Check that all dependencies are installed correctly
|
|
334
|
+
|
|
335
|
+
## License
|
|
336
|
+
|
|
337
|
+
MIT License - see LICENSE file for details.
|
|
338
|
+
|
|
339
|
+
---
|
|
340
|
+
Note: This is a fork of the [original mcp-discord repository](https://github.com
|
|
341
|
+
/hanweg/mcp-discord).
|
|
342
|
+
=== End of Discord README ===
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
=== Slack README ===
|
|
346
|
+
# Slack MCP Server
|
|
347
|
+
|
|
348
|
+
MCP Server for the Slack API, enabling Claude to interact with Slack workspaces.
|
|
349
|
+
|
|
350
|
+
## Tools
|
|
351
|
+
|
|
352
|
+
1. `slack_list_channels`
|
|
353
|
+
- List public channels in the workspace
|
|
354
|
+
- Optional inputs:
|
|
355
|
+
- `limit` (number, default: 100, max: 200): Maximum number of channels to r
|
|
356
|
+
eturn
|
|
357
|
+
- `cursor` (string): Pagination cursor for next page
|
|
358
|
+
- Returns: List of channels with their IDs and information
|
|
359
|
+
|
|
360
|
+
2. `slack_post_message`
|
|
361
|
+
- Post a new message to a Slack channel
|
|
362
|
+
- Required inputs:
|
|
363
|
+
- `channel_id` (string): The ID of the channel to post to
|
|
364
|
+
- `text` (string): The message text to post
|
|
365
|
+
- Returns: Message posting confirmation and timestamp
|
|
366
|
+
|
|
367
|
+
3. `slack_reply_to_thread`
|
|
368
|
+
- Reply to a specific message thread
|
|
369
|
+
- Required inputs:
|
|
370
|
+
- `channel_id` (string): The channel containing the thread
|
|
371
|
+
- `thread_ts` (string): Timestamp of the parent message
|
|
372
|
+
- `text` (string): The reply text
|
|
373
|
+
- Returns: Reply confirmation and timestamp
|
|
374
|
+
|
|
375
|
+
4. `slack_add_reaction`
|
|
376
|
+
- Add an emoji reaction to a message
|
|
377
|
+
- Required inputs:
|
|
378
|
+
- `channel_id` (string): The channel containing the message
|
|
379
|
+
- `timestamp` (string): Message timestamp to react to
|
|
380
|
+
- `reaction` (string): Emoji name without colons
|
|
381
|
+
- Returns: Reaction confirmation
|
|
382
|
+
|
|
383
|
+
5. `slack_get_channel_history`
|
|
384
|
+
- Get recent messages from a channel
|
|
385
|
+
- Required inputs:
|
|
386
|
+
- `channel_id` (string): The channel ID
|
|
387
|
+
- Optional inputs:
|
|
388
|
+
- `limit` (number, default: 10): Number of messages to retrieve
|
|
389
|
+
- Returns: List of messages with their content and metadata
|
|
390
|
+
|
|
391
|
+
6. `slack_get_thread_replies`
|
|
392
|
+
- Get all replies in a message thread
|
|
393
|
+
- Required inputs:
|
|
394
|
+
- `channel_id` (string): The channel containing the thread
|
|
395
|
+
- `thread_ts` (string): Timestamp of the parent message
|
|
396
|
+
- Returns: List of replies with their content and metadata
|
|
397
|
+
|
|
398
|
+
|
|
399
|
+
7. `slack_get_users`
|
|
400
|
+
- Get list of workspace users with basic profile information
|
|
401
|
+
- Optional inputs:
|
|
402
|
+
- `cursor` (string): Pagination cursor for next page
|
|
403
|
+
- `limit` (number, default: 100, max: 200): Maximum users to return
|
|
404
|
+
- Returns: List of users with their basic profiles
|
|
405
|
+
|
|
406
|
+
8. `slack_get_user_profile`
|
|
407
|
+
- Get detailed profile information for a specific user
|
|
408
|
+
- Required inputs:
|
|
409
|
+
- `user_id` (string): The user's ID
|
|
410
|
+
- Returns: Detailed user profile information
|
|
411
|
+
|
|
412
|
+
## Setup
|
|
413
|
+
|
|
414
|
+
1. Create a Slack App:
|
|
415
|
+
- Visit the [Slack Apps page](https://api.slack.com/apps)
|
|
416
|
+
- Click "Create New App"
|
|
417
|
+
- Choose "From scratch"
|
|
418
|
+
- Name your app and select your workspace
|
|
419
|
+
|
|
420
|
+
2. Configure Bot Token Scopes:
|
|
421
|
+
Navigate to "OAuth & Permissions" and add these scopes:
|
|
422
|
+
- `channels:history` - View messages and other content in public channels
|
|
423
|
+
- `channels:read` - View basic channel information
|
|
424
|
+
- `chat:write` - Send messages as the app
|
|
425
|
+
- `reactions:write` - Add emoji reactions to messages
|
|
426
|
+
- `users:read` - View users and their basic information
|
|
427
|
+
|
|
428
|
+
4. Install App to Workspace:
|
|
429
|
+
- Click "Install to Workspace" and authorize the app
|
|
430
|
+
- Save the "Bot User OAuth Token" that starts with `xoxb-`
|
|
431
|
+
|
|
432
|
+
5. Get your Team ID (starts with a `T`) by following [this guidance](https://sla
|
|
433
|
+
ck.com/help/articles/2217693
|
|
434
|
+
28-Locate-your-Slack-URL-or-ID#find-your-workspace-or-org-id)
|
|
435
|
+
|
|
436
|
+
### Usage with Claude Desktop
|
|
437
|
+
|
|
438
|
+
Add the following to your `claude_desktop_config.json`:
|
|
439
|
+
|
|
440
|
+
#### npx
|
|
441
|
+
|
|
442
|
+
```json
|
|
443
|
+
{
|
|
444
|
+
"mcpServers": {
|
|
445
|
+
"slack": {
|
|
446
|
+
"command": "npx",
|
|
447
|
+
"args": [
|
|
448
|
+
"-y",
|
|
449
|
+
"@modelcontextprotocol/server-slack"
|
|
450
|
+
],
|
|
451
|
+
"env": {
|
|
452
|
+
"SLACK_BOT_TOKEN": "xoxb-your-bot-token",
|
|
453
|
+
"SLACK_TEAM_ID": "T01234567"
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
```
|
|
459
|
+
|
|
460
|
+
#### docker
|
|
461
|
+
|
|
462
|
+
```json
|
|
463
|
+
{
|
|
464
|
+
"mcpServers": {
|
|
465
|
+
"slack": {
|
|
466
|
+
"command": "docker",
|
|
467
|
+
"args": [
|
|
468
|
+
"run",
|
|
469
|
+
"-i",
|
|
470
|
+
"--rm",
|
|
471
|
+
"-e",
|
|
472
|
+
"SLACK_BOT_TOKEN",
|
|
473
|
+
"-e",
|
|
474
|
+
"SLACK_TEAM_ID",
|
|
475
|
+
"mcp/slack"
|
|
476
|
+
],
|
|
477
|
+
"env": {
|
|
478
|
+
"SLACK_BOT_TOKEN": "xoxb-your-bot-token",
|
|
479
|
+
"SLACK_TEAM_ID": "T01234567"
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
```
|
|
485
|
+
|
|
486
|
+
### Troubleshooting
|
|
487
|
+
|
|
488
|
+
If you encounter permission errors, verify that:
|
|
489
|
+
1. All required scopes are added to your Slack app
|
|
490
|
+
2. The app is properly installed to your workspace
|
|
491
|
+
3. The tokens and workspace ID are correctly copied to your configuration
|
|
492
|
+
4. The app has been added to the channels it needs to access
|
|
493
|
+
|
|
494
|
+
## Build
|
|
495
|
+
|
|
496
|
+
Docker build:
|
|
497
|
+
|
|
498
|
+
```bash
|
|
499
|
+
docker build -t mcp/slack -f src/slack/Dockerfile .
|
|
500
|
+
```
|
|
501
|
+
|
|
502
|
+
## License
|
|
503
|
+
|
|
504
|
+
This MCP server is licensed under the MIT License. This means you are free to us
|
|
505
|
+
e, modify, and distribute th
|
|
506
|
+
e software, subject to the terms and conditions of the MIT License. For more det
|
|
507
|
+
ails, please see the LICENSE file in the project repository.
|
|
508
|
+
=== End of Slack README
|
|
509
|
+
===
|
|
510
|
+
|
|
511
|
+
|
|
512
|
+
Failed servers and their errors:
|
|
513
|
+
- Email Sender: MCPConfigError: Required environment variable "RESEND_API_KEY" i
|
|
514
|
+
s not set
|
|
515
|
+
- Discord: MCPConfigError: Required environment variable "DISCORD_TOKEN" is not
|
|
516
|
+
set
|
|
517
|
+
- Slack: MCPConfigError: Required environment variable "SLACK_BOT_TOKEN" is not
|
|
518
|
+
set
|
|
519
|
+
undefined
|
|
520
|
+
Error: Failed to initialize any MCP servers after 5 attempts each.
|
|
521
|
+
|
|
522
|
+
Server READMEs:
|
|
523
|
+
|
|
524
|
+
=== Email Sender README ===
|
|
525
|
+
# Email sending MCP 💌
|
|
526
|
+
|
|
527
|
+
[](https://smi
|
|
528
|
+
thery.ai/server/@ykhli/mcp-s
|
|
529
|
+
end-email)
|
|
530
|
+
|
|
531
|
+
This is a simple MCP server that sends emails using Resend's API. Why? Now you c
|
|
532
|
+
an let Cursor or Claude Desk
|
|
533
|
+
top compose emails for you and send it right away without having to copy and pas
|
|
534
|
+
te the email content.
|
|
535
|
+
Built with:
|
|
536
|
+
|
|
537
|
+
- [Resend](https://resend.com/)
|
|
538
|
+
- [Anthropic MCP](https://docs.anthropic.com/en/docs/agents-and-tools/mcp)
|
|
539
|
+
- [Cursor](https://cursor.so/)
|
|
540
|
+
|
|
541
|
+
**DEMO**
|
|
542
|
+
|
|
543
|
+
https://github.com/user-attachments/assets/8c05cbf0-1664-4b3b-afb1-663b46af3464
|
|
544
|
+
|
|
545
|
+
**Cursor**
|
|
546
|
+
|
|
547
|
+
1. First, you need to authorize Resend to send emails from your domain or email.
|
|
548
|
+
Follow the steps [here](htt
|
|
549
|
+
ps://resend.com/docs/send-with-nodejs) to set that up and get a Resend API key.
|
|
550
|
+
2. Clone this project locally. Edit index.ts and rep
|
|
551
|
+
lace me@yoko.dev to your own email to send emails from
|
|
552
|
+
3. Run `npm install`, `npm run build` under the project dir. You should now see
|
|
553
|
+
a /build/index.js generated
|
|
554
|
+
- this is the MCP server script!
|
|
555
|
+
|
|
556
|
+
Then go to Cursor Settings -> MCP -> Add new MCP server
|
|
557
|
+
|
|
558
|
+
- Name = [choose your own name]
|
|
559
|
+
- Type = command
|
|
560
|
+
- Command: `node ABSOLUTE_PATH_TO_MCP_SERVER/build/index.js --key=YOUR_RESEND_AP
|
|
561
|
+
I_KEY --sender=OPTIONAL_SEND
|
|
562
|
+
ER_EMAIL_ADDRESS --reply-to=OPTIONAL_REPLY_TO_EMAIL_ADDRESS_ONE --reply-to=OPTIO
|
|
563
|
+
NAL_REPLY_TO_EMAIL_ADDRESS_TWO`
|
|
564
|
+
|
|
565
|
+
You can get Resend API key here: https://resend.com/
|
|
566
|
+
|
|
567
|
+
Now you can test out sending emails by going to email.md, replace the to: email
|
|
568
|
+
address, select all in email
|
|
569
|
+
md, and hit cmd+l. You can now tell cursor to "send this as an email" in the ch
|
|
570
|
+
at. Make sure Cursor chat is in Agent mode by selecting "Agent" on lower left si
|
|
571
|
+
de dropdown
|
|
572
|
+
<img width="441" alt="Screenshot 2025-02-25 at 9 13 05 AM" src="https://github.c
|
|
573
|
+
om/user-attachments/assets/b
|
|
574
|
+
07e9cbf-42d8-4910-8e90-3761d8d3bc06" />
|
|
575
|
+
|
|
576
|
+
**Claude desktop**
|
|
577
|
+
|
|
578
|
+
Same set up as above, and then add the following MCP config
|
|
579
|
+
|
|
580
|
+
```
|
|
581
|
+
{
|
|
582
|
+
"mcpServers": {
|
|
583
|
+
"resend": {
|
|
584
|
+
"command": "node",
|
|
585
|
+
"args": ["ABSOLUTE_PATH_TO_MCP_SERVER/build/index.js"],
|
|
586
|
+
"env": {
|
|
587
|
+
"RESEND_API_KEY": [YOUR_API_KEY],
|
|
588
|
+
"SENDER_EMAIL_ADDRESS": [OPTIONAL_SENDER_EMAIL_ADDRESS],
|
|
589
|
+
"REPLY_TO_EMAIL_ADDRESSES": [OPTIONAL_REPLY_TO_EMAIL_ADDRESSES_COMMA_DEL
|
|
590
|
+
IMITED]
|
|
591
|
+
}
|
|
592
|
+
}
|
|
593
|
+
}
|
|
594
|
+
}
|
|
595
|
+
```
|
|
596
|
+
|
|
597
|
+
**Develop**
|
|
598
|
+
|
|
599
|
+
`npm install`
|
|
600
|
+
`npm run build`
|
|
601
|
+
=== End of Email Sender README ===
|
|
602
|
+
|
|
603
|
+
|
|
604
|
+
=== Discord README ===
|
|
605
|
+
# Discord MCP Server
|
|
606
|
+
|
|
607
|
+
A Model Context Protocol (MCP) server that provides Discord integration capabili
|
|
608
|
+
ties to MCP clients like Cla
|
|
609
|
+
ude Desktop.
|
|
610
|
+
|
|
611
|
+
<a href="https://glama.ai/mcp/servers/wvwjgcnppa"><img width="380" height="200"
|
|
612
|
+
src="https://glama.ai/mcp/se
|
|
613
|
+
rvers/wvwjgcnppa/badge" alt="mcp-discord MCP server" /></a>
|
|
614
|
+
|
|
615
|
+
## Features
|
|
616
|
+
|
|
617
|
+
### Server Information
|
|
618
|
+
- `get_server_info`: Get detailed server information
|
|
619
|
+
- `list_members`: List server members and their roles
|
|
620
|
+
|
|
621
|
+
### Message Management
|
|
622
|
+
- `send_message`: Send a message to a channel
|
|
623
|
+
- `read_messages`: Read recent message history
|
|
624
|
+
- `add_reaction`: Add a reaction to a message
|
|
625
|
+
- `add_multiple_reactions`: Add multiple reactions to a message
|
|
626
|
+
- `remove_reaction`: Remove a reaction from a message
|
|
627
|
+
- `moderate_message`: Delete messages and timeout users
|
|
628
|
+
|
|
629
|
+
### Channel Management
|
|
630
|
+
- `create_text_channel`: Create a new text channel
|
|
631
|
+
- `delete_channel`: Delete an existing channel
|
|
632
|
+
|
|
633
|
+
### Role Management
|
|
634
|
+
- `add_role`: Add a role to a user
|
|
635
|
+
- `remove_role`: Remove a role from a user
|
|
636
|
+
|
|
637
|
+
### Webhook Management
|
|
638
|
+
- `create_webhook`: Create a new webhook
|
|
639
|
+
- `list_webhooks`: List webhooks in a channel
|
|
640
|
+
- `send_webhook_message`: Send messages via webhook
|
|
641
|
+
- `modify_webhook`: Update webhook settings
|
|
642
|
+
- `delete_webhook`: Delete a webhook
|
|
643
|
+
|
|
644
|
+
## Prerequisites
|
|
645
|
+
|
|
646
|
+
1. **Set up your Discord bot**:
|
|
647
|
+
- Create a new application at [Discord Developer Portal](https://discord.com/
|
|
648
|
+
developers/applications)
|
|
649
|
+
- Create a bot and copy the token
|
|
650
|
+
- Enable required privileged intents:
|
|
651
|
+
- MESSAGE CONTENT INTENT
|
|
652
|
+
- PRESENCE INTENT
|
|
653
|
+
- SERVER MEMBERS INTENT
|
|
654
|
+
- Invite the bot to your server using OAuth2 URL Generator
|
|
655
|
+
|
|
656
|
+
2. **Python Requirements**:
|
|
657
|
+
- Python 3.8 or higher
|
|
658
|
+
- pip (Python package installer)
|
|
659
|
+
|
|
660
|
+
## Installation
|
|
661
|
+
|
|
662
|
+
1. **Clone the Repository**:
|
|
663
|
+
```bash
|
|
664
|
+
git clone https://github.com/pashpashpash/mcp-discord.git
|
|
665
|
+
cd mcp-discord
|
|
666
|
+
```
|
|
667
|
+
|
|
668
|
+
2. **Create and Activate Virtual Environment**:
|
|
669
|
+
```bash
|
|
670
|
+
# On Windows
|
|
671
|
+
python -m venv venv
|
|
672
|
+
venv\Scripts\activate
|
|
673
|
+
|
|
674
|
+
# On macOS/Linux
|
|
675
|
+
python -m venv venv
|
|
676
|
+
source venv/bin/activate
|
|
677
|
+
```
|
|
678
|
+
|
|
679
|
+
3. **Install Dependencies**:
|
|
680
|
+
```bash
|
|
681
|
+
pip install -e .
|
|
682
|
+
```
|
|
683
|
+
Note: If using Python 3.13+, also install audioop: `pip install audioop-lts`
|
|
684
|
+
|
|
685
|
+
4. **Configure Claude Desktop**:
|
|
686
|
+
|
|
687
|
+
Add this to your claude_desktop_config.json:
|
|
688
|
+
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
689
|
+
- Windows: `%APPDATA%/Claude/claude_desktop_config.json`
|
|
690
|
+
|
|
691
|
+
```json
|
|
692
|
+
{
|
|
693
|
+
"mcpServers": {
|
|
694
|
+
"discord": {
|
|
695
|
+
"command": "python",
|
|
696
|
+
"args": ["-m", "mcp_discord"],
|
|
697
|
+
"cwd": "path/to/mcp-discord",
|
|
698
|
+
"env": {
|
|
699
|
+
"DISCORD_TOKEN": "your_bot_token"
|
|
700
|
+
}
|
|
701
|
+
}
|
|
702
|
+
}
|
|
703
|
+
}
|
|
704
|
+
```
|
|
705
|
+
Note:
|
|
706
|
+
- Replace "path/to/mcp-discord" with the actual path to your cloned repository
|
|
707
|
+
- Replace "your_bot_token" with your Discord bot token
|
|
708
|
+
|
|
709
|
+
## Debugging
|
|
710
|
+
|
|
711
|
+
If you run into issues, check Claude Desktop's MCP logs:
|
|
712
|
+
```bash
|
|
713
|
+
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
|
|
714
|
+
```
|
|
715
|
+
|
|
716
|
+
Common issues:
|
|
717
|
+
1. **Token Errors**:
|
|
718
|
+
- Verify your Discord bot token is correct
|
|
719
|
+
- Check that all required intents are enabled
|
|
720
|
+
|
|
721
|
+
2. **Permission Issues**:
|
|
722
|
+
- Ensure the bot has proper permissions in your Discord server
|
|
723
|
+
- Verify the bot's role hierarchy for role management commands
|
|
724
|
+
|
|
725
|
+
3. **Installation Issues**:
|
|
726
|
+
- Make sure you're using the correct Python version
|
|
727
|
+
- Try recreating the virtual environment
|
|
728
|
+
- Check that all dependencies are installed correctly
|
|
729
|
+
|
|
730
|
+
## License
|
|
731
|
+
|
|
732
|
+
MIT License - see LICENSE file for details.
|
|
733
|
+
|
|
734
|
+
---
|
|
735
|
+
Note: This is a fork of the [original mcp-discord repository](https://github.com
|
|
736
|
+
/hanweg/mcp-discord).
|
|
737
|
+
=== End of Discord README ===
|
|
738
|
+
|
|
739
|
+
|
|
740
|
+
=== Slack README ===
|
|
741
|
+
# Slack MCP Server
|
|
742
|
+
|
|
743
|
+
MCP Server for the Slack API, enabling Claude to interact with Slack workspaces.
|
|
744
|
+
|
|
745
|
+
## Tools
|
|
746
|
+
|
|
747
|
+
1. `slack_list_channels`
|
|
748
|
+
- List public channels in the workspace
|
|
749
|
+
- Optional inputs:
|
|
750
|
+
- `limit` (number, default: 100, max: 200): Maximum number of channels to r
|
|
751
|
+
eturn
|
|
752
|
+
- `cursor` (string): Pagination cursor for next page
|
|
753
|
+
- Returns: List of channels with their IDs and information
|
|
754
|
+
|
|
755
|
+
2. `slack_post_message`
|
|
756
|
+
- Post a new message to a Slack channel
|
|
757
|
+
- Required inputs:
|
|
758
|
+
- `channel_id` (string): The ID of the channel to post to
|
|
759
|
+
- `text` (string): The message text to post
|
|
760
|
+
- Returns: Message posting confirmation and timestamp
|
|
761
|
+
|
|
762
|
+
3. `slack_reply_to_thread`
|
|
763
|
+
- Reply to a specific message thread
|
|
764
|
+
- Required inputs:
|
|
765
|
+
- `channel_id` (string): The channel containing the thread
|
|
766
|
+
- `thread_ts` (string): Timestamp of the parent message
|
|
767
|
+
- `text` (string): The reply text
|
|
768
|
+
- Returns: Reply confirmation and timestamp
|
|
769
|
+
|
|
770
|
+
4. `slack_add_reaction`
|
|
771
|
+
- Add an emoji reaction to a message
|
|
772
|
+
- Required inputs:
|
|
773
|
+
- `channel_id` (string): The channel containing the message
|
|
774
|
+
- `timestamp` (string): Message timestamp to react to
|
|
775
|
+
- `reaction` (string): Emoji name without colons
|
|
776
|
+
- Returns: Reaction confirmation
|
|
777
|
+
|
|
778
|
+
5. `slack_get_channel_history`
|
|
779
|
+
- Get recent messages from a channel
|
|
780
|
+
- Required inputs:
|
|
781
|
+
- `channel_id` (string): The channel ID
|
|
782
|
+
- Optional inputs:
|
|
783
|
+
- `limit` (number, default: 10): Number of messages to retrieve
|
|
784
|
+
- Returns: List of messages with their content and metadata
|
|
785
|
+
|
|
786
|
+
6. `slack_get_thread_replies`
|
|
787
|
+
- Get all replies in a message thread
|
|
788
|
+
- Required inputs:
|
|
789
|
+
- `channel_id` (string): The channel containing the thread
|
|
790
|
+
- `thread_ts` (string): Timestamp of the parent message
|
|
791
|
+
- Returns: List of replies with their content and metadata
|
|
792
|
+
|
|
793
|
+
|
|
794
|
+
7. `slack_get_users`
|
|
795
|
+
- Get list of workspace users with basic profile information
|
|
796
|
+
- Optional inputs:
|
|
797
|
+
- `cursor` (string): Pagination cursor for next page
|
|
798
|
+
- `limit` (number, default: 100, max: 200): Maximum users to return
|
|
799
|
+
- Returns: List of users with their basic profiles
|
|
800
|
+
|
|
801
|
+
8. `slack_get_user_profile`
|
|
802
|
+
- Get detailed profile information for a specific user
|
|
803
|
+
- Required inputs:
|
|
804
|
+
- `user_id` (string): The user's ID
|
|
805
|
+
- Returns: Detailed user profile information
|
|
806
|
+
|
|
807
|
+
## Setup
|
|
808
|
+
|
|
809
|
+
1. Create a Slack App:
|
|
810
|
+
- Visit the [Slack Apps page](https://api.slack.com/apps)
|
|
811
|
+
- Click "Create New App"
|
|
812
|
+
- Choose "From scratch"
|
|
813
|
+
- Name your app and select your workspace
|
|
814
|
+
|
|
815
|
+
2. Configure Bot Token Scopes:
|
|
816
|
+
Navigate to "OAuth & Permissions" and add these scopes:
|
|
817
|
+
- `channels:history` - View messages and other content in public channels
|
|
818
|
+
- `channels:read` - View basic channel information
|
|
819
|
+
- `chat:write` - Send messages as the app
|
|
820
|
+
- `reactions:write` - Add emoji reactions to messages
|
|
821
|
+
- `users:read` - View users and their basic information
|
|
822
|
+
|
|
823
|
+
4. Install App to Workspace:
|
|
824
|
+
- Click "Install to Workspace" and authorize the app
|
|
825
|
+
- Save the "Bot User OAuth Token" that starts with `xoxb-`
|
|
826
|
+
|
|
827
|
+
5. Get your Team ID (starts with a `T`) by following [this guidance](https://sla
|
|
828
|
+
ck.com/help/articles/2217693
|
|
829
|
+
28-Locate-your-Slack-URL-or-ID#find-your-workspace-or-org-id)
|
|
830
|
+
|
|
831
|
+
### Usage with Claude Desktop
|
|
832
|
+
|
|
833
|
+
Add the following to your `claude_desktop_config.json`:
|
|
834
|
+
|
|
835
|
+
#### npx
|
|
836
|
+
|
|
837
|
+
```json
|
|
838
|
+
{
|
|
839
|
+
"mcpServers": {
|
|
840
|
+
"slack": {
|
|
841
|
+
"command": "npx",
|
|
842
|
+
"args": [
|
|
843
|
+
"-y",
|
|
844
|
+
"@modelcontextprotocol/server-slack"
|
|
845
|
+
],
|
|
846
|
+
"env": {
|
|
847
|
+
"SLACK_BOT_TOKEN": "xoxb-your-bot-token",
|
|
848
|
+
"SLACK_TEAM_ID": "T01234567"
|
|
849
|
+
}
|
|
850
|
+
}
|
|
851
|
+
}
|
|
852
|
+
}
|
|
853
|
+
```
|
|
854
|
+
|
|
855
|
+
#### docker
|
|
856
|
+
|
|
857
|
+
```json
|
|
858
|
+
{
|
|
859
|
+
"mcpServers": {
|
|
860
|
+
"slack": {
|
|
861
|
+
"command": "docker",
|
|
862
|
+
"args": [
|
|
863
|
+
"run",
|
|
864
|
+
"-i",
|
|
865
|
+
"--rm",
|
|
866
|
+
"-e",
|
|
867
|
+
"SLACK_BOT_TOKEN",
|
|
868
|
+
"-e",
|
|
869
|
+
"SLACK_TEAM_ID",
|
|
870
|
+
"mcp/slack"
|
|
871
|
+
],
|
|
872
|
+
"env": {
|
|
873
|
+
"SLACK_BOT_TOKEN": "xoxb-your-bot-token",
|
|
874
|
+
"SLACK_TEAM_ID": "T01234567"
|
|
875
|
+
}
|
|
876
|
+
}
|
|
877
|
+
}
|
|
878
|
+
}
|
|
879
|
+
```
|
|
880
|
+
|
|
881
|
+
### Troubleshooting
|
|
882
|
+
|
|
883
|
+
If you encounter permission errors, verify that:
|
|
884
|
+
1. All required scopes are added to your Slack app
|
|
885
|
+
2. The app is properly installed to your workspace
|
|
886
|
+
3. The tokens and workspace ID are correctly copied to your configuration
|
|
887
|
+
4. The app has been added to the channels it needs to access
|
|
888
|
+
|
|
889
|
+
## Build
|
|
890
|
+
|
|
891
|
+
Docker build:
|
|
892
|
+
|
|
893
|
+
```bash
|
|
894
|
+
docker build -t mcp/slack -f src/slack/Dockerfile .
|
|
895
|
+
```
|
|
896
|
+
|
|
897
|
+
## License
|
|
898
|
+
|
|
899
|
+
This MCP server is licensed under the MIT License. This means you are free to us
|
|
900
|
+
e, modify, and distribute th
|
|
901
|
+
e software, subject to the terms and conditions of the MIT License. For more det
|
|
902
|
+
ails, please see the LICENSE file in the project repository.
|
|
903
|
+
=== End of Slack README
|
|
904
|
+
===
|
|
905
|
+
|
|
906
|
+
|
|
907
|
+
Failed servers and their errors:
|
|
908
|
+
- Email Sender: MCPConfigError: Required environment variable "RESEND_API_KEY" i
|
|
909
|
+
s not set
|
|
910
|
+
- Discord: MCPConfigError: Required environment variable "DISCORD_TOKEN" is not
|
|
911
|
+
set
|
|
912
|
+
- Slack: MCPConfigError: Required environment variable "SLACK_BOT_TOKEN" is not
|
|
913
|
+
set
|
|
914
|
+
|
|
915
|
+
```
|
|
916
|
+
|
|
917
|
+
---
|
|
918
|
+
|
|
919
|
+
I apologize, but it seems I'm unable to send a "yo" message at the moment. The available MCP servers (Email, Discord, and Slack) require specific environment variables to be set up first. To send a "yo" message, you would need to configure one of these services:
|
|
920
|
+
|
|
921
|
+
1
|
|
922
|
+
|
|
923
|
+
---
|
|
924
|
+
|