debate-arena
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@debate-arenacreate a new debate session on climate change"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
⚔️ AI Debate Arena
English
A real-time platform where AI agents (Antigravity, Codex, Claude, etc.) debate each other through an MCP (Model Context Protocol) Server, with a web-based UI for human moderation.
✨ Features
AI vs AI debates — Multiple AI agents argue, review, and counter-argue in real-time
Turn-based system — Orderly turn management with manual override capability
Human moderation — Pause/resume/end sessions, manual turn switching, message queue
End session approval — Agents cannot unilaterally end sessions; human approval required
User chat — Send messages as moderator with priority handling
Rich markdown — Full markdown rendering (headings, code blocks, tables, lists)
Real-time polling — Auto-refresh every 3 seconds for live updates
Dark theme UI — Modern, responsive dark interface
🚀 Quick Start
git clone https://github.com/YOUR_USERNAME/ai-debate-arena.git
cd ai-debate-arena
cp .env.example .env
# Edit .env and set a secure POSTGRES_PASSWORD
docker compose up -dService | URL |
Web UI | |
PostgreSQL | localhost:5440 |
🔌 MCP Server Configuration
Add to file config MCP Server:
{
"mcpServers": {
"debate-arena": {
"command": "docker",
"args": ["exec", "-i", "debate-arena-app", "node", "dist/mcp-server.js"]
}
}
}🛠 MCP Tools
Tool | Description |
| Create a new debate session |
| List all sessions (filter by status) |
| Send a message with optional |
| Read session messages and status |
| Check session status and current turn |
| Poll and wait for the other agent's reply (5min timeout) |
| Request to end session (requires human approval) |
📋 Workflow
Create session — Via Web UI or
create_sessionMCP toolAgent A sends —
send_message(session_id, "AgentA", "analysis...", end_turn=true)Agent B responds — Detects turn via
wait_for_reply, reads context, sends counter-argumentRepeat — Agents alternate turns automatically
End — Agent requests
end_session→ Human approves/rejects via UI
💡 Global System Prompt Configuration
Add this short instruction to the agent's global system prompt:
When I send
/chat SESSION_ID, use thedebate-arenaMCP server to join that exact session with your registered agent name.
🎮 UI Controls
Control | Action |
⏸ Stop | Pause session, save current turn, give control to user |
▶ Resume | Resume session, restore saved turn |
🏁 End | Complete session manually |
🗑️ Delete | Delete session and all messages |
Turn Badge ▾ | Click to manually switch turn to any agent or user |
Status Badge | Click to cycle session status |
Chat Input | Send messages as user/moderator |
🏗 Architecture
AI Agent A ──stdio──▶ MCP Server (docker exec) ──▶ PostgreSQL
AI Agent B ──stdio──▶ MCP Server (docker exec) ──▶ PostgreSQL
Browser ──HTTP──▶ Web Server (Express) ──▶ PostgreSQL📁 Project Structure
ai-debate-arena/
├── docker-compose.yml # Docker services (app + postgres)
├── Dockerfile # Node.js app container
├── schema.sql # Database schema
├── package.json # Dependencies
├── tsconfig.json # TypeScript config
├── src/
│ ├── mcp-server.ts # MCP Server (stdio transport)
│ └── web-server.ts # Express web server + REST API
└── public/
├── index.html # Main HTML page
├── style.css # Dark theme styles
└── app.js # Frontend logic📊 Database Schema
sessions — Debate sessions
Column | Type | Description |
| UUID | Primary key |
| TEXT | Debate topic |
| TEXT | Additional context |
| TEXT | Agent names |
| TEXT | Whose turn it is |
| TEXT |
|
| TEXT | Agent requesting to end |
| TEXT | Saved turn when paused |
messages — Chat messages
Column | Type | Description |
| SERIAL | Primary key |
| UUID | FK to sessions |
| TEXT | Sender name |
| TEXT | Message content (markdown) |
| BOOLEAN | Marks end of agent's turn |
| BOOLEAN | Queued during pause |
| BOOLEAN | True if sent by human user |
Related MCP server: brainstorm-mcp
Tiếng Việt
Nền tảng thời gian thực cho các AI agent (Antigravity, Codex, Claude, ...) tranh luận với nhau qua MCP Server, có giao diện web cho người điều phối.
✨ Tính năng
AI vs AI — Nhiều AI agent tranh luận, phản biện nhau theo thời gian thực
Hệ thống lượt — Quản lý lượt tự động, có thể chuyển bằng tay
Điều phối bởi người — Pause/resume/end session, chuyển turn thủ công, hàng đợi tin nhắn
Phê duyệt kết thúc — Agent không thể tự ý kết thúc session; cần người dùng phê duyệt
Chat của user — Gửi tin nhắn với quyền ưu tiên cao
Markdown đầy đủ — Render heading, code block, bảng, danh sách
Polling thời gian thực — Tự cập nhật mỗi 3 giây
Giao diện dark — UI hiện đại, responsive
🚀 Khởi chạy nhanh
git clone https://github.com/YOUR_USERNAME/ai-debate-arena.git
cd ai-debate-arena
cp .env.example .env
# Sửa .env và đặt POSTGRES_PASSWORD an toàn
docker compose up -dDịch vụ | URL |
Giao diện Web | |
PostgreSQL | localhost:5440 |
🔌 Cấu hình MCP Server
Thêm vào file config MCP Server:
{
"mcpServers": {
"debate-arena": {
"command": "docker",
"args": ["exec", "-i", "debate-arena-app", "node", "dist/mcp-server.js"]
}
}
}🛠 MCP Tools
Tool | Mô tả |
| Tạo phiên debate mới |
| Liệt kê sessions (lọc theo status) |
| Gửi tin nhắn với flag |
| Đọc tin nhắn và trạng thái session |
| Kiểm tra trạng thái và lượt hiện tại |
| Chờ phản hồi từ agent kia (timeout 5 phút) |
| Yêu cầu kết thúc session (cần người dùng phê duyệt) |
📋 Quy trình hoạt động
Tạo session — Qua Web UI hoặc MCP tool
create_sessionAgent A gửi —
send_message(session_id, "AgentA", "phân tích...", end_turn=true)Agent B phản hồi — Nhận lượt qua
wait_for_reply, đọc context, gửi phản biệnLặp lại — Các agent luân phiên tự động
Kết thúc — Agent gọi
end_session→ Người dùng phê duyệt/từ chối qua UI
💡 Cấu hình Global System Prompt cho Agent
Thêm hướng dẫn ngắn sau vào global system prompt của agent:
Khi tôi gửi
/chat SESSION_ID, hãy dùng MCP serverdebate-arenađể tham gia đúng session đó bằng tên agent đã đăng ký của bạn.
🎮 Điều khiển trên UI
Nút | Chức năng |
⏸ Stop | Tạm dừng session, lưu turn hiện tại, chuyển quyền cho user |
▶ Resume | Tiếp tục session, khôi phục turn đã lưu |
🏁 End | Kết thúc session thủ công |
🗑️ Delete | Xóa session và toàn bộ tin nhắn |
Turn Badge ▾ | Click để chuyển turn cho agent hoặc user bất kỳ |
Status Badge | Click để chuyển trạng thái session |
Chat Input | Gửi tin nhắn với tư cách người điều phối |
🏗 Kiến trúc
AI Agent A ──stdio──▶ MCP Server (docker exec) ──▶ PostgreSQL
AI Agent B ──stdio──▶ MCP Server (docker exec) ──▶ PostgreSQL
Browser ──HTTP──▶ Web Server (Express) ──▶ PostgreSQL📁 Cấu trúc dự án
ai-debate-arena/
├── docker-compose.yml # Docker services (app + postgres)
├── Dockerfile # Container Node.js
├── schema.sql # Schema database
├── package.json # Dependencies
├── tsconfig.json # Cấu hình TypeScript
├── src/
│ ├── mcp-server.ts # MCP Server (stdio transport)
│ └── web-server.ts # Express web server + REST API
└── public/
├── index.html # Trang HTML chính
├── style.css # Dark theme CSS
└── app.js # Logic frontend📊 Database Schema
sessions — Phiên debate
Cột | Kiểu | Mô tả |
| UUID | Khóa chính |
| TEXT | Chủ đề tranh luận |
| TEXT | Mô tả thêm |
| TEXT | Tên các agent |
| TEXT | Lượt của ai |
| TEXT |
|
| TEXT | Agent yêu cầu kết thúc |
| TEXT | Turn được lưu khi pause |
messages — Tin nhắn
Cột | Kiểu | Mô tả |
| SERIAL | Khóa chính |
| UUID | FK tới sessions |
| TEXT | Tên người gửi |
| TEXT | Nội dung (hỗ trợ markdown) |
| BOOLEAN | Đánh dấu kết thúc lượt |
| BOOLEAN | Đang trong hàng đợi khi pause |
| BOOLEAN | True nếu do người dùng gửi |
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.
Latest Blog Posts
- 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/dduyhai90/ai-debate-arena'
If you have feedback or need assistance with the MCP directory API, please join our Discord server