Capes
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| APIFY_TOKEN | No | The Apify API token for searching X/Twitter. Optional; required only for the twitter_search tool. | |
| MCP_API_KEY | Yes | Any long random string you make up (24+ characters). Required to protect /mcp and the dashboard. | |
| GMAIL_ADDRESS | No | The Gmail address to connect (e.g., you@gmail.com). Optional; required only for Gmail tools. | |
| PULSE_READ_ONLY | No | Set to "true" to make the whole server read-only. Optional. | |
| DISCORD_BOT_TOKEN | No | The Discord bot token from the Developer Portal. Optional; required only for Discord tools. | |
| GMAIL_APP_PASSWORD | No | An app password generated from Google for the Gmail address. Optional; required only for Gmail tools. | |
| PULSE_DISABLED_TOOLS | No | Comma-separated list of tool names to disable. Optional. | |
| PULSE_DISABLED_CONNECTORS | No | Comma-separated list of connector names to disable (e.g., "gmail,discord"). Optional. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| discord_list_guildsA | List the Discord servers the bot is in. |
| discord_get_guildC | Get details about a Discord server. |
| discord_list_channelsA | List channels (all types, including categories, voice and forums). Omit guild_id to list every server the bot is in. |
| discord_get_channelB | Get a channel or thread, including its permission overwrites (translated to permission names). |
| discord_read_channelA | Read recent messages from a channel or thread (newest first). |
| discord_list_pinsC | List pinned messages in a channel. |
| discord_list_membersA | List server members, or search by name with |
| discord_list_rolesB | List a server's roles with their permissions. |
| discord_list_threadsA | List active threads in a server, or archived public threads of one channel when channel_id is given. |
| discord_send_messageB | Send a message to a channel or thread. Provide content and/or an embed. |
| discord_edit_messageA | Edit a message. Discord only lets the bot edit its own messages. |
| discord_delete_messageA | Delete a message. Needs Manage Messages to delete other people's messages. |
| discord_bulk_delete_messagesA | Delete 2-100 messages at once (must be newer than 14 days). Needs Manage Messages. |
| discord_pin_messageA | Pin (default) or unpin a message. Needs the Pin Messages permission (Discord split it from Manage Messages). |
| discord_add_reactionA | React to a message. emoji is a unicode emoji (👍) or a custom emoji as name:id. |
| discord_remove_reactionA | Remove the bot's reaction, another user's reaction (user_id), or all reactions on the message (clear_all). Removing others' reactions needs Manage Messages. |
| discord_create_channelB | Create a channel in a server. Needs Manage Channels. |
| discord_edit_channelA | Edit a channel or a thread (rename, topic, move, slowmode; for threads also archive/lock). Needs Manage Channels (Manage Threads for threads). |
| discord_delete_channelA | Permanently delete a channel or thread. This cannot be undone. |
| discord_set_channel_permissionA | Set (replace) the permission overwrite for a role or member on a channel. Permissions in neither allow nor deny inherit. Needs Manage Roles. |
| discord_delete_channel_permissionB | Remove a role's or member's permission overwrite from a channel. |
| discord_create_inviteC | Create an invite link for a channel. |
| discord_create_threadA | Create a thread: from an existing message (message_id), as a standalone thread, or as a forum post (content). Edit/archive/delete threads with discord_edit_channel / discord_delete_channel. |
| discord_thread_memberA | Manage thread membership: join/leave (the bot), add/remove a user, or list members. |
| discord_create_roleA | Create a role. Needs Manage Roles; the bot can only grant permissions it has itself. |
| discord_edit_roleA | Edit a role. Passing permissions replaces the role's whole permission set. |
| discord_delete_roleB | Delete a role permanently. |
| discord_member_roleA | Give a role to a member, or take it away. The role must be below the bot's highest role. |
| discord_moderate_memberA | Moderate a member: kick, ban, unban, timeout (mute for N minutes) or untimeout. Needs Kick/Ban/Moderate Members. Destructive: confirm with the user first. |
| discord_get_messageC | Read one message by ID. |
| discord_list_reactionsB | List the users who reacted to a message with one emoji (unicode or name:id). |
| discord_send_dmA | Send a direct message to a user. They must share a server with the bot and allow DMs from server members. Never pings anyone. |
| discord_read_dmB | Read recent direct messages between the bot and a user (newest first). |
| discord_send_fileA | Upload a file (base64, up to 3 MB) to a channel or thread, with an optional message. |
| discord_create_pollB | Post a native Discord poll (2 to 10 answers) in a channel. |
| discord_list_forum_tagsC | List the tags of a forum channel. |
| discord_manage_forum_tagA | Add, rename or remove a tag on a forum channel. Needs Manage Channels. Removing a tag removes it from posts that use it. |
| discord_list_webhooksA | List webhooks of a channel or of a whole server. Tokens are never shown. Needs Manage Webhooks. |
| discord_create_webhookA | Create a webhook in a channel. Returns its ID only; use discord_send_webhook_message to post through it. Needs Manage Webhooks. |
| discord_send_webhook_messageA | Post a message through a webhook, optionally under a custom display name. The server looks up the webhook token itself. |
| discord_delete_webhookA | Delete a webhook permanently. Needs Manage Webhooks. |
| discord_list_invitesA | List a server's active invites. Needs Manage Server. |
| discord_delete_inviteA | Revoke an invite link. Needs Manage Server (or Manage Channels for that channel). |
| discord_get_audit_logA | Read a server's audit log (who changed what, newest first). Needs View Audit Log. |
| gmail_list_labelsA | List Gmail labels/folders and the unread count of the inbox. |
| gmail_searchA | Search email with Gmail search syntax (from:, to:, subject:, is:unread, has:attachment, label:, newer_than:2d, after:2026/01/01...). Covers All Mail (not Trash/Spam). Newest first. |
| gmail_get_messageA | Read one email: headers, text body and attachment list. Does not mark it as read unless mark_read is true. |
| gmail_get_threadA | Read a whole conversation (oldest first). Bodies are truncated to 4000 characters each; up to 30 messages. |
| gmail_get_attachmentB | Download one attachment as base64 (max about 2 MB). |
| gmail_send_emailA | Send an email immediately from the connected account. It cannot be unsent; use gmail_create_draft to let the user review first. |
| gmail_replyA | Reply to an email in its thread (sends immediately). reply_all also replies to everyone on To/Cc. The original text is quoted below your reply. |
| gmail_forwardA | Forward an email (the original is attached as .eml). Sends immediately. |
| gmail_create_draftA | Save a draft in Gmail (does not send). It shows up in Gmail's Drafts. |
| gmail_list_draftsB | List drafts, newest first. |
| gmail_send_draftA | Send an existing draft, then remove it from Drafts. Sends immediately. |
| gmail_delete_draftB | Permanently delete a draft. |
| gmail_modifyA | Change messages: mark read/unread, star/unstar, archive (remove from inbox), add or remove labels. New labels are created automatically. |
| gmail_trashA | Move messages to Trash (Gmail deletes them after 30 days; recover them in Gmail). |
| gmail_mark_spamC | Move messages to Spam. |
| gmail_create_labelA | Create a label. Use '/' for nested labels (Work/Invoices). |
| gmail_delete_labelB | Delete a label. Messages that had it are kept. |
| twitter_searchA | Search tweets on X/Twitter via Apify (needs APIFY_TOKEN). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 62 tools
Tools are mostly cleanly separated by service and resource+action, e.g. Discord message/channel/role operations and Gmail message/draft/label operations. A few boundaries blur—discord_edit_channel/delete_channel also handle threads while thread creation is separate, and gmail_modify overlaps with trash/spam/archive—but descriptions clearly differentiate them.
Strong service_action naming with snake_case throughout (discord_*, gmail_*, twitter_search). Most names follow verb_noun, but a handful are noun-only or vague (discord_member_role, discord_thread_member, gmail_modify, gmail_trash), which is a minor deviation rather than chaos.
62 tools is far beyond the 3–15 well-scoped range and sits in the rubric's 50+ extreme-mismatch band. Even split across Discord, Gmail, and Twitter, the surface is very large and likely to burden tool selection.
Discord coverage is deep across messages, channels, roles, members, threads, invites, webhooks, moderation, and audit logs; Gmail covers search, read, send, reply, forward, labels, drafts, and message state. Minor gaps remain (e.g., Twitter is search-only, and there is no direct Discord message search or Gmail draft retrieval), but core lifecycle workflows are covered.