Discord
Connect a Discord bot (bot token from the developer portal) to read/send messages, list guilds and c
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (1)
- LOWin connect
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"discord-mcp": {
"url": "https://api.mcp.ai/p_discord"
}
}
}Remote-Endpunkte
https://api.mcp.ai/p_discordstreamable-httpWas es kann
Tool-Inventar
Tools (21)
🟢discord_list_accounts(account)
List Discord bot connections linked to this install — id, label, default guild_id.
Eingabe-Schema
{
"type": "object",
"properties": {
"account": {
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢discord_get_me(account)
Return the bot's own user profile (id, username, discriminator, avatar, etc).
Eingabe-Schema
{
"type": "object",
"properties": {
"account": {
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢discord_list_guilds(limit, before, after, account)
List the servers (guilds) the bot is a member of.
Eingabe-Schema
{
"type": "object",
"properties": {
"limit": {
"default": 100,
"type": "number"
},
"before": {
"type": "string"
},
"after": {
"type": "string"
},
"account": {
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢discord_get_guild(guild_id, account, guild_ids)
Get one guild's metadata. Falls back to the connection's default guild_id. Bulk support: accepts guild_ids for batched execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"guild_id": {
"type": "string"
},
"account": {
"type": "string"
},
"guild_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢discord_list_channels(guild_id, account, guild_ids)
List channels in a guild. Falls back to the connection's default guild_id. Bulk support: accepts guild_ids for batched execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"guild_id": {
"type": "string"
},
"account": {
"type": "string"
},
"guild_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢discord_list_guild_members(guild_id, limit, after, account, guild_ids)
List members of a guild. Requires the bot to have the Server Members intent enabled in the developer portal — may return 403 otherwise. Bulk support: accepts guild_ids for batched execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"guild_id": {
"type": "string"
},
"limit": {
"default": 100,
"type": "number"
},
"after": {
"type": "string"
},
"account": {
"type": "string"
},
"guild_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢discord_get_channel(channel_id, account, channel_ids)
Get a channel's metadata (type, name, topic, parent, permissions). Bulk support: accepts channel_ids for batched execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"channel_id": {
"type": "string"
},
"account": {
"type": "string"
},
"channel_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"channel_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢discord_list_messages(channel_id, limit, before, after, around, ...)
Read recent messages from a channel (newest first). Pagination via `before` / `after` / `around` (message ids). Requires Message Content intent for non-bot message bodies in some cases. Bulk support: accepts channel_ids for batched execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"channel_id": {
"type": "string"
},
"limit": {
"default": 50,
"type": "number"
},
"before": {
"type": "string"
},
"after": {
"type": "string"
},
"around": {
"type": "string"
},
"account": {
"type": "string"
},
"channel_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"channel_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢discord_get_message(channel_id, message_id, account, channel_ids, message_ids)
Fetch a single message by id. Bulk support: accepts channel_ids, message_ids for batched execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"channel_id": {
"type": "string"
},
"message_id": {
"type": "string"
},
"account": {
"type": "string"
},
"channel_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"message_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"channel_id",
"message_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢discord_get_user(user_id, account, user_ids)
Public profile of any Discord user by id. Bulk support: accepts user_ids for batched execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"user_id": {
"type": "string"
},
"account": {
"type": "string"
},
"user_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"user_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡discord_send_message(channel_id, content, embeds, reply_to, account, ...)
Post a message to a channel. Provide `content` (text up to 2000 chars), `embeds` (rich JSON), or both. `reply_to` makes it a reply. Bulk support: accepts channel_ids for batched execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"channel_id": {
"type": "string"
},
"content": {
"type": "string"
},
"embeds": {
"type": "array",
"items": {}
},
"reply_to": {
"type": "string"
},
"account": {
"type": "string"
},
"channel_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"channel_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡discord_send_dm(user_id, content, embeds, account, user_ids)
Open a DM channel with a user and send them a message. The bot and the user must share a guild. Bulk support: accepts user_ids for batched execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"user_id": {
"type": "string"
},
"content": {
"type": "string"
},
"embeds": {
"type": "array",
"items": {}
},
"account": {
"type": "string"
},
"user_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"user_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡discord_edit_message(channel_id, message_id, content, embeds, account, ...)
Edit a previously-sent message (must be authored by this bot). Bulk support: accepts channel_ids, message_ids for batched execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"channel_id": {
"type": "string"
},
"message_id": {
"type": "string"
},
"content": {
"type": "string"
},
"embeds": {
"type": "array",
"items": {}
},
"account": {
"type": "string"
},
"channel_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"message_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"channel_id",
"message_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡discord_add_reaction(channel_id, message_id, emoji, account, channel_ids, ...)
Add a reaction to a message. `emoji` is either unicode (e.g. `👍`) or `name:id` for custom guild emoji. Bulk support: accepts channel_ids, message_ids for batched execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"channel_id": {
"type": "string"
},
"message_id": {
"type": "string"
},
"emoji": {
"type": "string"
},
"account": {
"type": "string"
},
"channel_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"message_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"channel_id",
"message_id",
"emoji"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴discord_delete_message(channel_id, message_id, account, channel_ids, message_ids)
Delete a message. Irreversible. Bot needs Manage Messages to delete messages authored by other users. Bulk support: accepts channel_ids, message_ids for batched execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"channel_id": {
"type": "string"
},
"message_id": {
"type": "string"
},
"account": {
"type": "string"
},
"channel_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"message_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"channel_id",
"message_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢show_version
Show the current MCP platform and adapter versions.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡report_bug(message, context, conversation)
Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.
Eingabe-Schema
{
"type": "object",
"properties": {
"message": {
"type": "string"
},
"context": {
"default": "",
"type": "string"
},
"conversation": {
"default": "[]",
"type": "string"
}
},
"required": [
"message"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢connect
Returns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢toolkit_info
Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡marketplace(action, query, mcp_id, limit, tier_slug, ...)
The official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like "find an MCP that does X", "consulta um CPF", "is there a tool for Y". Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id → invoke RUNS that tool. KEY: invoke works even when the MCP is NOT installed — it runs the tool pontualmente (one-off), without adding the MCP to the toolkit and without bloating the tool list. If the MCP needs a credential/login, invoke returns a connect link; if it is paid and the wallet is empty, invoke returns a checkout/top-up link (the user opens it, then you retry). Use install only to make an MCP PERMANENT in the active toolkit (its tools then show up natively in future sessions); prefer invoke for a single/occasional use. list_tools lists what is callable right now. subscribe/cancel handle per-MCP billing; report_bug sends feedback; request_mcp asks us to build a NEW MCP when nothing fits. Search/describe flag installed_in_toolkit vs installed_in_workspace. Writes (install/uninstall/subscribe/cancel and the one-off install behind invoke) require workspace owner/admin. It also carries the mcp.ai PROMPT LIBRARY, which is about ready-made prompt TEXT rather than MCPs: search_prompts finds one, get_prompt returns its full text with {{variables}} filled, and publish_prompt saves a prompt and returns a shareable mcp.ai/p/<slug> link that opens without login.
Eingabe-Schema
{
"type": "object",
"properties": {
"action": {
"default": "search",
"type": "string",
"enum": [
"search",
"describe",
"install",
"uninstall",
"subscribe",
"cancel",
"resume",
"report_bug",
"request_mcp",
"list_tools",
"invoke",
"search_prompts",
"get_prompt",
"publish_prompt"
]
},
"query": {
"default": "",
"type": "string"
},
"mcp_id": {
"default": "",
"type": "string"
},
"limit": {
"default": 10,
"type": "number"
},
"tier_slug": {
"default": "",
"type": "string"
},
"immediate": {
"default": false,
"type": "boolean"
},
"cancel_reason": {
"type": "string",
"enum": [
"too_expensive",
"missing_features",
"switched_service",
"unused",
"customer_service",
"too_complex",
"low_quality",
"other"
]
},
"cancel_comment": {
"default": "",
"type": "string"
},
"message": {
"default": "",
"type": "string"
},
"report_context": {
"default": "",
"type": "string"
},
"conversation": {
"default": "[]",
"type": "string"
},
"request_name": {
"default": "",
"type": "string"
},
"request_details": {
"default": "",
"type": "string"
},
"tool_id": {
"default": "",
"type": "string"
},
"arguments": {
"default": "{}",
"type": "string"
},
"prompt_slug": {
"default": "",
"type": "string"
},
"prompt_vars": {
"default": "{}",
"type": "string"
},
"prompt_category": {
"default": "",
"type": "string"
},
"prompt_tool": {
"default": "",
"type": "string"
},
"prompt_title": {
"default": "",
"type": "string"
},
"prompt_description": {
"default": "",
"type": "string"
},
"prompt_body": {
"default": "",
"type": "string"
},
"prompt_targets": {
"default": [],
"type": "array",
"items": {
"type": "string",
"enum": [
"claude",
"chatgpt",
"cursor",
"lovable"
]
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡authenticate(token)
MCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header `Authorization: Bearer <token>` for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: "<jwt>" } after the user pastes, or with no args to get the link.
Eingabe-Schema
{
"type": "object",
"properties": {
"token": {
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Nachweis