discord-mcp
discord-mcp
실행 중인 데스크톱 클라이언트를 통해 Discord를 읽고 조작합니다: 채널 메시지, 다이렉트 메시지, 그룹 채팅, 스레드, 포럼 게시물, 검색.
작동 방식
Discord 데스크톱 앱은 Electron 기반입니다. --remote-debugging-port로 시작하면 렌더러가 Chrome DevTools Protocol을 통해 접근 가능해집니다. discord-mcp는 해당 렌더러에 연결하여 클라이언트가 자체 API 호출에서 이미 보내는 헤더를 관찰하고, 같은 페이지 내부에서 요청을 발행합니다.
따라서 모든 요청은 실제 클라이언트 프로세스, 실제 세션, 실제 지문으로부터 발생합니다. 탐지할 두 번째 클라이언트가 없으며, 토큰은 Discord의 저장소에서 읽히지 않습니다: 클라이언트가 이미 보내고 있던 요청에서 관찰될 뿐입니다.
Related MCP server: discord-user-mcp
사용 전에 읽어야 할 사항
이것은 Discord의 서비스 약관을 위반합니다. 사용자 계정을 자동화하는 것은 세션을 어떻게 얻었든 금지되어 있으며, 섹션 11은 클라이언트 수정을 별도로 금지합니다.
실질적인 위험은 Vencord 같은 클라이언트 모드와 같은 범주에 있습니다. Discord는 이들을 공개적으로 우선순위를 낮췄으며 2026년 현재 확인된 밴은 없습니다. 이는 단속하지 않는 패턴이지 약속이 아닙니다. 위험은 읽기가 아니라 쓰기에 집중되어 있습니다.
봇 토큰을 사용하면 완전히 규정을 준수하겠지만, 봇은 당신의 다이렉트 메시지를 절대 읽을 수 없습니다. 바로 그 한계가 이 프로젝트가 존재하는 이유입니다.
설정
npm install
npm run buildDiscord는 단일 인스턴스 잠금을 사용하므로 디버깅 플래그는 시작 시에만 적용됩니다. 실행 중인 클라이언트를 먼저 종료하세요.
node dist/cli/main.js launch # starts Discord on a random loopback port
node dist/cli/main.js doctor # verifies attach, capture and a real readdoctor는 계정, 길드 수, 다이렉트 메시지 수를 출력해야 합니다.
첫 번째 연결은 렌더러를 한 번 새로고침합니다. 유휴 클라이언트는 헤더를 관찰할 REST 요청을 만들지 않기 때문입니다. 캡처는 포트별로 12시간 동안 ~/.local/state/discord-mcp/headers.json에 저장되므로, 이후 실행은 약 1초 만에 연결되고 클라이언트를 건드리지 않습니다.
MCP 클라이언트에 연결하기
{
"mcpServers": {
"discord": {
"command": "node",
"args": ["/path/to/discord-mcp/dist/cli/main.js", "serve"]
}
}
}도구
기본적으로 18개의 도구가 노출됩니다: 읽기 12개, 쓰기 6개.
도구 | 등급 | 용도 |
| 읽기 | 이 계정이 속한 길드 |
| 읽기 | 한 길드의 채널 |
| 읽기 | 길드에 정의된 역할 |
| 읽기 | 채널 또는 스레드 설명 |
| 읽기 | 메시지 한 페이지, 양방향 페이징 |
| 읽기 | 고정된 메시지 |
| 읽기 | ID로 메시지 하나 |
| 읽기 | 다이렉트 및 그룹 대화 |
| 읽기 | 채널의 열린 스레드, 포럼 게시물을 읽는 방식 |
| 읽기 | 보관된 스레드, 조용한 포럼 게시물이 모이는 곳 |
| 읽기 | 한 길드 검색 |
| 읽기 | 한 채널 또는 대화 검색 |
| 쓰기 | 메시지 또는 답장 보내기 |
| 쓰기 | 이 계정이 보낸 메시지 수정 |
| 쓰기 | 반응 추가 |
| 쓰기 | 메시지까지 채널을 읽음으로 표시 |
| 쓰기 | 스레드 시작, 선택적으로 기존 메시지에서 |
| 쓰기 | 시작 메시지와 함께 포럼 게시물 생성 |
포럼 읽기는 포럼 채널의 스레드를 나열하는 방식으로 작동합니다. 각 게시물은 게시물을 연 메시지와 적용된 태그와 함께 반환되므로, 두 번째 호출 없이 게시물을 읽을 수 있습니다.
파괴적 도구
7개의 추가 작업이 존재하며 해당 카테고리가 활성화되지 않는 한 전혀 등록되지 않습니다. 도구 목록에 나타나지 않으므로 어떤 호스트나 모델도 접근할 수 없습니다.
도구 | 카테고리 |
|
|
|
|
|
|
|
|
|
|
|
|
필요한 것만 활성화하세요:
{ "destructive": ["messages", "threads"] }node dist/cli/main.js serve --config /path/to/policy.json이것이 핵심 제어입니다. 호스트 승인 프롬프트는 두 번째 계층입니다. 호스트 동작이 다양하고 일부 호스트는 자동으로 승인하기 때문입니다. 각 파괴적 도구는 작업한 대상을 확인하여 반환하므로 결과는 snowflake만 내놓는 대신 채널 이름을 명시합니다.
보안
열린 DevTools 포트는 로컬 인증 우회입니다: 당신으로 실행되는 모든 프로세스가 2단계 인증을 포함해 세션을 제어할 수 있습니다. discord-mcp는 루프백에만 바인딩하고 기본 9222 대신 무작위 높은 포트를 선택합니다. 사용하지 않을 때는 포트가 열린 상태로 클라이언트를 실행해 두지 마세요.
헤더 캐시는 활성 토큰을 보유합니다. 캡처를 재사용한다는 것은 그것을 유지한다는 뜻이므로 ~/.local/state/discord-mcp/headers.json에는 만료될 때까지 Authorization 헤더가 포함됩니다. 소유자 전용, 모드 0600으로 작성되며 그 옆의 실행 상태도 마찬가지입니다. 새 캡처를 강제하려면 파일을 삭제하세요:
rm ~/.local/state/discord-mcp/headers.json매번 캡처하고 토큰을 저장하지 않으려면 캐시 경로 없이 실행하세요. 대신 연결할 때마다 렌더러가 새로고침됩니다.
구조
src/attach/ CDP connection, target selection, launch, state
src/bridge/ header capture, request execution, rate limiting
src/api/ typed wrappers over Discord REST v9
src/normalize/ reduce Discord's wire format to what a reader needs
src/policy/ operation tiers and the destructive gate
src/tools/ MCP tool registration
src/cli/ launch, doctor, serve의존성은 아래로만 흐릅니다. normalize/와 policy/는 순수하며 아무것도 의존하지 않으며, 테스트 스위트의 대부분이 여기에 있습니다.
npm test # 152 tests, no Discord required
npm run typecheck브리지 설계를 이끈 Spike 0 발견 사항을 포함한 설계 문서는 docs/superpowers/specs/에 있습니다.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityFmaintenanceEnables interaction with Discord channels through a bot, allowing users to send messages and files, retrieve messages with advanced filtering, and download attachments of any type.5264MIT
- AlicenseNot gradedqualityDmaintenanceEnables interaction with Discord using personal user tokens instead of bot applications, allowing for seamless message management and server exploration. It provides tools for reading history, sending messages, and searching across channels and DMs directly through MCP-compatible clients.6MIT
- FlicenseNot gradedqualityBmaintenanceEnables interaction with Discord through natural language, including reading and sending messages, managing servers, and user actions.
- AlicenseNot gradedqualityDmaintenanceEnables reading Discord messages and server information using your own account via OAuth2, no bot required.MIT
Related MCP Connectors
Browser MCP for logged-in tasks. Uses your Chrome — credentials stay local. Zero-token replay.
Eyes and hands on real Windows PCs — observe, click, type via Glasswarp API.
Let ChatGPT, Claude & Cursor use your Mac: email, calendar, iMessage, Teams, files. Local, free.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/fmarcac/discord-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server