MCP server for interacting with Arena Social API, providing tools to fetch trending posts, manage notifications, chat, stages, and post threads
Arena Social MCP has 10 tools with visible schemas and descriptions, but significant quality gaps limit production readiness. All tools have basic descriptions (50-100 chars) and Zod schemas, but descriptions lack actionable context for LLM selection. Parameter descriptions are minimal (e.g., 'Optional authentication token'). The make-custom-request tool is a dangerous catch-all that bypasses safety constraints. Error handling returns raw JSON dumps without recovery guidance. No tool annotations (readOnlyHint/destructiveHint) despite clear risk classifications. Output schemas are undocumented, LLMs cannot predict response structure. Naming is verb-first (good), but several tools lack clarity on when to use them vs. alternatives (e.g., get-chat-group vs. get-direct-messages).
Fetch a specific chat group by ID or Twitter handle
Fetch chat settings for the authenticated user
Fetch direct messages for the authenticated user
Fetch currently live stages from Arena Social
Fetch list of currencies that can be used for tipping
Fetch trending posts from the Arena Social feed
make-custom-request tool allows arbitrary HTTP methods and endpoints with no validation, creating a security and safety risk. This catch-all bypasses tool-level safety constraints and enables destructive operations without explicit user intent.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk classifications. LLMs cannot distinguish safe reads from destructive writes without explicit hints.
Output schemas are undocumented. Tools return raw JSON.stringify() with no schema definition. LLMs cannot predict response structure or plan downstream tool calls.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
Fetch unseen notifications for the authenticated user
Make an arbitrary request to the Arena Social API
Mark all notifications as seen for the authenticated user
Post a new thread to Arena Social
Error handling returns raw error messages without recovery guidance. Errors like 'API request failed: 401 Unauthorized' give LLMs no actionable next step.
Parameter descriptions are minimal and lack context. 'Optional authentication token (uses ARENA_API_KEY env var if not provided)' appears on 10 tools but does not explain when to provide it vs. rely on env var, or what happens on auth failure.