An MCP server that analyzes social media posts and comments across Twitter/X, Reddit, Instagram, and TikTok using Claude AI and the Xpoz social data SDK.
Two tools with clear verb-noun naming (search_posts, get_comments) and explicit JSON schemas. Descriptions are present and adequate (100-150 chars), meeting baseline minimums. However, parameter descriptions are sparse or missing entirely. The 'platform' enum is well-defined, but 'post_id', 'limit', and date parameters lack actionable guidance on format/constraints. Output schema is undocumented, LLMs cannot predict the structure of normalized posts/comments. Error handling is absent from the tool definitions. No tool annotations (readOnlyHint, idempotentHint) despite both being read-only operations.
Fetch the comments or replies on one post, to read how people reacted to it.
Search public posts on one platform by keyword. Supports exact phrases in double quotes and AND / OR / NOT operators. Returns normalized posts with author, text, engagement, date, and url.
Output schema undocumented. LLMs cannot predict the structure of normalized posts (fields: platform, id, author, text, likes, replies, date, url, etc.). This forces agents to guess field names and risks extraction errors.
Parameter descriptions incomplete. 'post_id' has no description; 'limit' lacks guidance on default behavior (code defaults to 20 if omitted, but schema does not state this). 'start_date' and 'end_date' say 'YYYY-MM-DD, inclusive' but do not explain timezone or what 'inclusive' means for end_date (end of day? start of day?).
No tool annotations. Both tools are read-only and idempotent, but lack readOnlyHint and idempotentHint annotations. This prevents agents from reasoning about retry safety and side effects.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
Error handling absent. No guidance on what happens if platform is invalid, post_id does not exist, or API rate limits are hit. Agents receive no recovery hints.
No pagination or result limits documented in tool descriptions. search_posts caps at 100 items (schema enforces max:100), but description does not state this. Agents may expect unbounded results.