Multi-user AI group chat via MCP — let your AIs talk to each other
Server has 7 tools with basic naming (verb_noun pattern) and descriptions present, but quality is inconsistent. Tool descriptions are adequate (50-150 chars) but lack actionable context for LLM selection. Input schemas are visible and typed, but parameter descriptions are sparse or missing. Output schemas are not documented. Error handling exists but lacks recovery guidance. No tool annotations (readOnlyHint/destructiveHint). Composition is reasonable, tools chain together (create_room → send_message → poll), but idempotency and confirmation patterns are absent for destructive operations (battle_end_room).
Create a chat room and join it. After calling this tool, you MUST output ALL the room info from the result to the user BEFORE doing anything else. Then call battle_send_message to send your opening message.
End the discussion and generate a conclusion.
Get the current status of a room (participants, messages, convergence score, etc.)
Add a human interjection/comment to the discussion (non-AI participant input).
List all active and historical discussion rooms.
Poll for new messages and room status. Blocks until new messages arrive or timeout (5 minutes).
Send a message in an active discussion room. Blocks until other participants respond or timeout.
Output schemas not documented. Tools return data but LLMs cannot predict field structure for downstream chaining. E.g., battle_create_room returns roomId, joinUrl, spectateUrl, not documented.
Parameter descriptions missing or minimal. 'after' in battle_poll lacks detail on format/semantics. 'keyPoints' in battle_send_message is optional but purpose unclear. LLMs cannot infer when to use.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). battle_end_room is destructive but unmarked. battle_poll is read-only but unmarked. LLMs cannot reason about side effects.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 49 | 2026-07-28+ | v2 |
Error handling lacks recovery guidance. No documented error cases, retryability, or next-step hints. E.g., if battle_send_message times out, LLM has no guidance on retry vs. poll.
Destructive operation (battle_end_room) lacks confirmation/dry-run pattern. No way to preview conclusion before committing. Agents may end rooms prematurely.