Discord Raw API MCP Server

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides raw Discord API access through a flexible tool, supporting both REST API calls and slash command syntax, allowing users to interact with Discord servers, create roles, send messages, and access server information.

Discord Raw API MCP サーバー

このMCPサーバーは、単一の柔軟なツールを通じて、生のDiscord APIアクセスを提供します。REST API呼び出しとスラッシュコマンド構文の両方をサポートしています。

インストール

Smithery経由でインストール

Smithery経由で Claude Desktop 用の Discord Raw API を自動的にインストールするには:

npx -y @smithery/cli install @hanweg/mcp-discord-raw --client claude

手動インストール

  1. Discord ボットを設定します。
    • Discord開発者ポータルで新しいアプリケーションを作成する
    • ボットを作成し、トークンをコピーする
    • 必要な特権インテントを有効にします。
      • メッセージ内容の意図
      • プレゼンスインテント
      • サーバーメンバーの意図
    • OAuth2 URLジェネレータを使用してボットをサーバーに招待する
  2. パッケージをクローンしてインストールします。
# Clone the repository git clone https://github.com/hanweg/mcp-discord-raw.git cd mcp-discord-raw # Create and activate virtual environment uv venv .venv\Scripts\activate ### If using Python 3.13+ - install audioop library: `uv pip install audioop-lts` # Install the package uv pip install -e .

構成

これをclaude_desktop_config.jsonに追加します

"discord-raw": { "command": "uv", "args": [ "--directory", "PATH/TO/mcp-discord-raw", "run", "discord-raw-mcp" ], "env": { "DISCORD_TOKEN": "YOUR-BOT-TOKEN" } }

使用法

REST APIスタイル

{ "method": "POST", "endpoint": "guilds/123456789/roles", "payload": { "name": "Bot Master", "permissions": "8", "color": 3447003, "mentionable": true } }

スラッシュコマンドスタイル

{ "method": "POST", "endpoint": "/role create name:Bot_Master color:blue permissions:8 mentionable:true guild_id:123456789" }

  1. ロールを作成します。
{ "method": "POST", "endpoint": "/role create name:Moderator color:red permissions:moderate_members guild_id:123456789" }
  1. メッセージを送信:
{ "method": "POST", "endpoint": "channels/123456789/messages", "payload": { "content": "Hello from the API!" } }
  1. サーバー情報を取得します:
{ "method": "GET", "endpoint": "guilds/123456789" }

推奨事項:

サーバー、チャネル、ユーザー ID といくつかの例をプロジェクト ナレッジに入れて、モデルにそれらを思い出させる必要がないようにします。また、開始するには次のような内容も入れます。

Discord の生の API ツールを効果的に使用する方法は次のとおりです。このツールは discord_api と呼ばれ、3 つのパラメータを取ります。

  1. メソッド: HTTP メソッド ("GET"、"POST"、"PUT"、"PATCH"、"DELETE")
  2. エンドポイント: Discord API エンドポイント (例: "guilds/{guild.id}/roles")
  3. ペイロード: リクエスト本文のオプションの JSON オブジェクト 私が使用した主な例:
  4. ロールの作成:
discord_api method: POST endpoint: guilds/{server_id}/roles payload: { "name": "Role Name", "color": 3447003, // Blue color in decimal "mentionable": true }
  1. カテゴリとチャネルの作成:
// Category discord_api method: POST endpoint: guilds/{server_id}/channels payload: { "name": "Category Name", "type": 4 // 4 = category } // Text channel in category discord_api method: POST endpoint: guilds/{server_id}/channels payload: { "name": "channel-name", "type": 0, // 0 = text channel "parent_id": "category_id", "topic": "Channel description" }
  1. チャンネルをカテゴリに移動する:
discord_api method: PATCH endpoint: channels/{channel_id} payload: { "parent_id": "category_id" }
  1. メッセージを送信:
discord_api method: POST endpoint: channels/{channel_id}/messages payload: { "content": "Message text with emojis \ud83d\ude04" }
  1. 役割の割り当て:
discord_api method: PUT endpoint: guilds/{server_id}/members/{user_id}/roles/{role_id} payload: {}

このツールはDiscord APIを完全にサポートしているため、Discord APIドキュメントを参照して、より多くのエンドポイントや機能を確認できます。レスポンスには、後続のリクエストで使用できるIDやその他のメタデータが含まれます。プロのヒント:

  • 作成リクエストから返された ID を保存して、後続のリクエストで使用します。
  • ~~Unicode 絵文字をメッセージ コンテンツに直接含めることができます~~ ? モデルに :champagne_glass: のような discord 絵文字を使用するように指示します - Unicode 絵文字を含むメッセージは Claude Desktop をハングさせますか?
  • チャンネルの種類: 0 = テキスト、2 = 音声、4 = カテゴリ、13 = ステージ
  • ロールの色は10進数形式(16進数ではない)です
  • ほとんどの変更エンドポイントはPATCHメソッドを使用します
  • 空のペイロードは null ではなく {} である必要があります

ライセンス

MITライセンス

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

ボット管理、サーバー構成、およびメッセージ操作のために、REST API 呼び出しとスラッシュ コマンド構文の両方を使用して Discord API と直接対話できるようになります。

  1. Installation
    1. Installing via Smithery
    2. Manual Installation
  2. Configuration
    1. Usage
      1. REST API Style
      2. Slash Command Style
    2. Examples
      1. Recommendations:
        1. License
      ID: ct3fi5s557